Maison >base de données >tutoriel mysql >Comment spécifier les chemins des données et des fichiers journaux lors de la création d'une base de données SQL Server à l'aide de paramètres ?
Utilisation de paramètres pour spécifier les chemins des données et des fichiers journaux lors de la création d'une base de données
Lors de la création d'une base de données dans SQL Server, vous souhaiterez peut-être spécifier le chemin où doivent se trouver les données et les fichiers journaux. Cela peut être particulièrement utile pour automatiser la création de bases de données ou le déploiement dans différents environnements.
Pour ce faire, vous pouvez utiliser les paramètres de l'instruction CREATE DATABASE. Cependant, le code que vous avez fourni :
DECLARE @DataFilePath AS NVARCHAR(MAX) SET @DataFilePath = N'C:\ProgramData\Gemcom\' DECLARE @LogFilePath AS NVARCHAR(MAX) SET @DataFilePath = N'C:\ProgramData\Gemcom\' USE master Go CREATE DATABASE TestDB ON PRIMARY ( NAME = N'TestDB_Data', FILENAME = @DataFilePath ) LOG ON ( NAME = N'TestDB_Log', FILENAME = @LogFilePath ) GO
ne fonctionnera pas tel quel. En effet, vous avez défini la valeur de @DataFilePath deux fois, ce qui remplace la valeur prévue.
Au lieu de cela, vous pouvez utiliser du SQL dynamique pour construire l'instruction CREATE DATABASE au moment de l'exécution. Voici comment procéder :
DECLARE @sql AS NVARCHAR(MAX) SELECT @sql = 'CREATE DATABASE TestDB ON PRIMARY ( NAME = ''TestDB_Data'', FILENAME = ' + quotename(@DataFilePath) + ') LOG ON ( NAME = ''TestDB_Log'', FILENAME = ' + quotename(@LogFilePath) + ')' EXEC (@sql)
Cette approche garantit que les paramètres sont correctement référencés dans l'instruction SQL dynamique, vous permettant de spécifier les chemins de fichiers souhaités pour votre base de données.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!