Ich habe unter Win 7, LO4.2, mysql 5.6 mit navtive Mysql extension 1.02 folgendes laufen, funtioniert:
Code: Alles auswählen
' Angebotspositionen kopieren (MySql)
stSql = "CREATE TEMPORARY TABLE tmpcopyangebotpos SELECT * FROM tangebot WHERE ang_ako_id = " & iKey
oSQL_Statement.executeUpdate(stSql)
stSql = "UPDATE tmpcopyangebotpos SET ang_ako_id =" &"'" & iNeu & "', " & "ang_id=null"
oSQL_Statement.executeUpdate(stSql)
stSql = "INSERT INTO tangebot SELECT * FROM tmpcopyangebotpos"
oSQL_Statement.executeUpdate(stSql)
stSql = "COMMIT"
oSQL_Statement.executeUpdate(stSql)
Unter Linux mit (Mint 17, Mysql-JDBC) bekomme ich einen SQL-Fehler:
"ang_id" darf nicht "null" sein. Ohne die Zuweisung von "null" gibt es natürlich duplicate value ...
Leider habe ich diese SQL-Syntax häufg verwendet und möchte nur ungerne das issue mit dem woraround
(selct und insert feldweise) umgehen. Ist ja auch wartungsanfälliger.
Hat jemand eine bessere Idee?
Gruss,
WSO