Dresha hat folgendes geschrieben : |
Selbst nach eingehender Studie der Lektüre ... |
*räusper* diese erzählen auch nur die allgemeinen Syntaxen etc und nicht die speziellen Feinheiten... Mit Sicherheit hast Du Dir NICHT das Manual zu
MySQL angeschaut
Warum? Dann wäre Dir aufgefallen, dass das hier NICHT funktionieren KANN:
SQL-Anweisung
1: 2: 3:
| string strSQL = "UPDATE products " + "SET products_quantity=@Menge " + "WHERE products_id=@ID"; |
-> WEIL: Parameterbezeichnungen in
MySQL werden üblicherweise mit einen
? gekennzeichnet (die Verwendung von
@ ist beim
MSSQL-Server die richtige Schreibweise).
MySQL 5.1 Referenzhandbuch hat folgendes geschrieben: |
...In dieser Anweisung können Fragezeichen (‘?’) als Parameterkennzeichen verwendet werden: Sie geben an, wo bei der späteren Ausführung der Anweisung Datenwerte eingebunden werden. Fragezeichen sollten auch dann nicht in Anführungszeichen gesetzt werden, wenn Sie beabsichtigen, sie an String-Werte anzubinden. Parameterkennzeichen dürfen nur an Stellen verwendet werden, an denen Datenwerte eingefügt werden sollen, nicht jedoch für SQL-Schlüsselwörter, Bezeichner usw. ... |
Quelle zum weiteren Studium.
Somit sollte- NEIN MUSS -dein SQL-Statement so heissen:
SQL-Anweisung
1: 2: 3:
| string strSQL = "UPDATE products " + "SET products_quantity=?Menge " + "WHERE products_id=?ID"; |
Selbstverständlich sind alle Codezeilen, in denen der Parameter namentlich erwähnt wird, entsprechend umzustellen
Gruss Rainer