|
sql
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
SQL Errorbelow: Server: Msg 170, Level 15, State 1, Line 4 Line 4: Incorrect syntax near '@loglogicalName'. This doesn't make any sense to me as I can't see the problem (maybe I can't see the wood for the trees). Can somebody please helpme, the script is adde dbelow? Thanks Adam declare @databaseName nvarchar(100), @dataAndlogDir nvarchar(100), @sql nvarchar(400), @dataFileName nvarchar(200), @logFileName nvarchar(200), @loglogicalName nvarchar(105), @datalogicalName nvarchar(105), @parmDef nvarchar(500) set @databaseName = 'AppDevTest' set @dataAndlogDir = 'E:\Program Files\Microsoft SQL Server\MSSQL$MISCDB\Data\' set @datalogicalName = @databaseName + '_dat' set @dataFileName = @dataAndlogDir + @databaseName + '_dat.mdf' set @loglogicalName = @databaseName + '_log' set @logFileName = @dataAndlogDir + @databaseName + '_log.ldf' set @parmDef = N'@databaseName varchar(100), @datalogicalName varchar(105), @dataFileName varchar(200) @loglogicalName varchar(105), @logFileName varchar(200)' set @sql = 'create database @databaseName on ( name = @datalogicalName filename = @dataFileName size = 10MB, filegrowth = 10MB ) log on ( name = @loglogicalName filename = @logFileName size = 5MB, filegrowth = 5MB )' exec sp_executesql @sql, @parmDef, @databaseName = @databaseName, @datalogicalName = @datalogicalName, @dataFileName = @dataFileName, @loglogicalName = @loglogicalName, @logFileName = @logFileName
Show quote
"Adam Sankey" <AdamSan***@discussions.microsoft.com> wrote in message One comma missing on the third line, right after @dataFileName varchar(200).news:A1B7C3EB-DA55-4336-A537-1B5380AA4196@microsoft.com... > I'm trying to write a script for adding database but keep getting the > error > below: > > Server: Msg 170, Level 15, State 1, Line 4 > Line 4: Incorrect syntax near '@loglogicalName'. > > This doesn't make any sense to me as I can't see the problem (maybe I > can't > see the wood for the trees). Can somebody please helpme, the script is > adde > dbelow? > > Thanks > Adam > > > declare @databaseName nvarchar(100), > @dataAndlogDir nvarchar(100), > @sql nvarchar(400), > @dataFileName nvarchar(200), > @logFileName nvarchar(200), > @loglogicalName nvarchar(105), > @datalogicalName nvarchar(105), > @parmDef nvarchar(500) > > set @databaseName = 'AppDevTest' > set @dataAndlogDir = 'E:\Program Files\Microsoft SQL > Server\MSSQL$MISCDB\Data\' > > set @datalogicalName = @databaseName + '_dat' > set @dataFileName = @dataAndlogDir + @databaseName + '_dat.mdf' > set @loglogicalName = @databaseName + '_log' > set @logFileName = @dataAndlogDir + @databaseName + '_log.ldf' > > > set @parmDef = N'@databaseName varchar(100), > @datalogicalName varchar(105), > @dataFileName varchar(200) > @loglogicalName varchar(105), > @logFileName varchar(200)' > > set @sql = 'create database @databaseName And same above, after each parameter "name = ..., filename = ..., ..." and > on > ( name = @datalogicalName > filename = @dataFileName > size = 10MB, > filegrowth = 10MB ) > log on > ( name = @loglogicalName > filename = @logFileName > size = 5MB, > filegrowth = 5MB )' > so on. > exec sp_executesql @sql, @parmDef, HTH,> @databaseName = @databaseName, > @datalogicalName = @datalogicalName, > @dataFileName = @dataFileName, > @loglogicalName = @loglogicalName, > @logFileName = @logFileName > > Plamen Ratchev http://www.SQLStudio.com Thanks, I never thought to look at the dynamic sql I just followed Query
Analyser and was looking at the top of the script. Adam Show quote "Plamen Ratchev" wrote: > "Adam Sankey" <AdamSan***@discussions.microsoft.com> wrote in message > news:A1B7C3EB-DA55-4336-A537-1B5380AA4196@microsoft.com... > > I'm trying to write a script for adding database but keep getting the > > error > > below: > > > > Server: Msg 170, Level 15, State 1, Line 4 > > Line 4: Incorrect syntax near '@loglogicalName'. > > > > This doesn't make any sense to me as I can't see the problem (maybe I > > can't > > see the wood for the trees). Can somebody please helpme, the script is > > adde > > dbelow? > > > > Thanks > > Adam > > > > > > declare @databaseName nvarchar(100), > > @dataAndlogDir nvarchar(100), > > @sql nvarchar(400), > > @dataFileName nvarchar(200), > > @logFileName nvarchar(200), > > @loglogicalName nvarchar(105), > > @datalogicalName nvarchar(105), > > @parmDef nvarchar(500) > > > > set @databaseName = 'AppDevTest' > > set @dataAndlogDir = 'E:\Program Files\Microsoft SQL > > Server\MSSQL$MISCDB\Data\' > > > > set @datalogicalName = @databaseName + '_dat' > > set @dataFileName = @dataAndlogDir + @databaseName + '_dat.mdf' > > set @loglogicalName = @databaseName + '_log' > > set @logFileName = @dataAndlogDir + @databaseName + '_log.ldf' > > > > > > set @parmDef = N'@databaseName varchar(100), > > @datalogicalName varchar(105), > > @dataFileName varchar(200) > > @loglogicalName varchar(105), > > @logFileName varchar(200)' > > > > > One comma missing on the third line, right after @dataFileName varchar(200). > > > > set @sql = 'create database @databaseName > > on > > ( name = @datalogicalName > > filename = @dataFileName > > size = 10MB, > > filegrowth = 10MB ) > > log on > > ( name = @loglogicalName > > filename = @logFileName > > size = 5MB, > > filegrowth = 5MB )' > > > > And same above, after each parameter "name = ..., filename = ..., ..." and > so on. > > > exec sp_executesql @sql, @parmDef, > > @databaseName = @databaseName, > > @datalogicalName = @datalogicalName, > > @dataFileName = @dataFileName, > > @loglogicalName = @loglogicalName, > > @logFileName = @logFileName > > > > > > HTH, > > Plamen Ratchev > http://www.SQLStudio.com > > > |
|||||||||||||||||||||||