OSQL Fehler in der Anweisung

18/06/2009 - 12:04 von Nadine | Report spam
Hallo Ihr,

ich habe ein Problem mit einer OSQL Anweisung.
Ich möchte die logischen Namen von einer Datenbank(-datei) per OSQL àndern,
doch leider kommt
folgeder Fehler:

Meldung 102, Ebene 15, Status 1, Server SQLServer\Instanz, Zeile 1
Falsche Syntax in der Nàhe von '-'.
alter database DB-Test MODIFY FILE (NAME='DB_Data', NEWNAME='DB-Test_Data')

doch leider finde ich den Fehler nicht. Hier die Anweisung:
osql -S %SQLSERVERNAME% -U %SA_NAME% -P %SA_PWD% -e -d %TESTDB% -Q "alter
database %TESTDB% MODIFY FILE (NAME='%DB_DATA_NAME%',
NEWNAME='%testdb%_Data')"

Ich arbeite mit einem SQL Sever 2005 SP2

Wo ist der Fehler???
 

Lesen sie die antworten

#1 Elmar Boye
18/06/2009 - 12:33 | Warnen spam
"Nadine" schrieb im Newsbeitrag news:uApXqw$
Hallo Ihr,

ich habe ein Problem mit einer OSQL Anweisung.
Ich möchte die logischen Namen von einer Datenbank(-datei) per OSQL àndern, doch leider kommt
folgeder Fehler:

Meldung 102, Ebene 15, Status 1, Server SQLServer\Instanz, Zeile 1
Falsche Syntax in der Nàhe von '-'.



Das sagt er Dir hier schon: "-" an falscher Stelle, wovon Du zwei hast.

alter database DB-Test MODIFY FILE (NAME='DB_Data', NEWNAME='DB-Test_Data')



Das Problem ist hier der DAtenbankname "DB-Test".
"-" ist ein Sonderzeichen und der Datenbankname muß dann in
eckige Klammern gesetzt werden.

doch leider finde ich den Fehler nicht. Hier die Anweisung:
osql -S %SQLSERVERNAME% -U %SA_NAME% -P %SA_PWD% -e -d %TESTDB%



Mit
-Q "alter database [%TESTDB%] MODIFY FILE (...)

sollte es dann funktionieren.

Wenn möglich würde ich auf Sonderzeichen (also auch "-") in
Objektnamen verzichten, denn das kann auch bei den nutzenden
Anwendungen schnell mal schief gehen.
Siehe Regeln für "regulàre Bezeichner":
http://msdn.microsoft.com/de-de/lib...75874.aspx

Gruß Elmar

Ähnliche fragen