hawaii: PDO / MSSQL / Stored Procedure

Beitrag lesen

Hallo,

Warning: PDOStatement::execute() [pdostatement.execute]: SQLSTATE[HY000]: General error: 10007 Falsche Syntax in der Nähe von 'blabla'. [10007] (severity 5) [(null)] in create_bu_tables.php on line 20

Naja, ist ja offensichtlich, dein SQL ist syntaktisch fehlerhaft. (Punkt).

Danke für den Hinweis, ja kämpfe gerade noch etwas :)

  • dein hier geposteter Code enthält kein 'blabla'
  • CALL ist soweit mir bekannt kein gültiger Befehl unter MS SQL, wenn du eine Stored Procedure ausführen willst, dann heisst das EXEC

Das blabla hab ich nur hineingeschrieben, in Wirklichkeit steht da der Wert der Variablen $bu_name.

Wenn ich mir die jeweilige Variable zum binden ausgeben lass, dann sieht das für mich alles ok aus.

  • schön, dass es für dich okay aussieht, dann ist ja alles in Butter
  • schade, dass es doch nicht funzt und du "uns" den Variablen-Dump vorenthältst, so können "wir" natürlich äussert gezielt helfen

Werde den Dump morgen nachreichen. Mit in Ordnung meinte ich, dass die Ausgabe auch dem entspricht was hinter der Variablen $bu_name steckt.

DROP PROCEDURE butablecheck;

Einfach so DROP PROC aufrufen

  • gehört nicht zur Prozedur
  • geht schief wenn es noch keine Prozedur gibt, du solltest das also ähnlich elegant lösen wie mit der Tabelle

SET @SQLStatement = 'create table ' + @tablename + '(timestamp DATETIME DEFAULT GETDATE() NOT NULL,
        month INT NOT NULL,year INT NOT NULL

soweit so gut ...

Danke schau ich mir an und überleg mir was.

  • year und month sind reservierte Worte, du solltest sie in [] packen

,"1" VARCHAR(255),"2" VARCHAR(255))'

und was soll das sein?

  • " ist keine Begrenzung für Zeichenketten, dafür gibt es '
  • " ist keine Begrenzung für Objektnamen, dafür gibt es []

Da is mir wohl ein Fehler unterlaufen, das war keine Absicht. Wahrscheinlich einer meiner verzweifelten Hilfsversuche ;)

Danke für deine bisherigen Anregungen, werde morgen mal die Fehler beheben, welche du mir aufgezeigt hast.

Grüßle,
hawaii