我正在使用LabVIEW和數據庫工具包來執行SQL查詢,並且由於語法原因它一直在對此進行檢查。我通過ODBC連接器使用MySQL。除了最後一行,每行的結尾都應該有一個換行符。這個SQL查詢有什麼問題嗎?
錯誤LabVIEW是拋是這樣的:
可能原因(S):
ADO Error: 0x80040E14 Exception occured in Microsoft OLE DB Provider for ODBC Drivers: [MySQL][ODBC 5.1 Driver][mysqld-5.1.42-community]You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1092'; UPDATE plc_a' at line 2 in NI_Database_API.lvlib:Conn Execute.vi->UpdatePLCAddressesTable.vi->DevelopSQL.vi
UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1132'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1092'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1103'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1105'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1161'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1167'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1129'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1088'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1098'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1099'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1100'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1117'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1118'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1106'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1107'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1108'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1109'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1110'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1111'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1151'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1154'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1157'; UPDATE plc_addresses SET CurrValue = '-1023.75' WHERE Address = '1119'; UPDATE plc_addresses SET CurrValue = '-1023.75' WHERE Address = '1120'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1165'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1095'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1164'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1096'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1097'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1121'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1122'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1123'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1124'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1089'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1101'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1112'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1113'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1114'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1115'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1116'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1091'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1141'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1142'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1143'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1139'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1153'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1148'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1145'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1150'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1147'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1149'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1146'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1104'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1093'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1125'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1126'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1127'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1094'; UPDATE plc_addresses SET CurrValue = '0.00' WHERE Address = '1114'; UPDATE plc_addresses SET CurrValue = '-2522.00' WHERE Address = '1114';
+1有一個在那裏,告訴你是在一個運行多個查詢服務器沒有在那裏。它可能需要合併到一個查詢中,或者需要將它分解爲多個更新查詢。 – David 2010-01-27 23:09:42
是的,和JDBC一樣。可以在JDBC中同時運行多個語句,但可以將它們單獨添加到批處理中,然後運行該批處理。我假設在ODBC中有一個類似的功能。 – 2010-01-27 23:12:18