URL: https://www.overclockers.at/coding-stuff/sql_verbinden_mehrerer_update-statements_33259/page_1 - zur Vollversion wechseln!
Kann ich das nicht irgendwie zu einem einzigen Statement zusammenfassen?Code:"UPDATE pflidataTMP SET hat_eq_T = 'x' WHERE hat_eq = -1" "UPDATE pflidataTMP SET hat_ev_T = 'x' WHERE hat_ev = -1" usw...
"UPDATE pflidataTMP SET hat_eq_T = 'x',hat_ev_T = 'x' WHERE hat_eq = -1"
Zitat von Ringding"UPDATE pflidataTMP SET hat_eq_T = 'x',hat_ev_T = 'x' WHERE hat_eq = -1"
Thx, darauf bin ich auch gekommen, aber das Problem ist, dass hat_eq nicht immer gleich hat_ev ist, sprich, er updatet mir dann auch bei den hat_ev nur die felder, die bei hat_eq ein -1 stehen haben...Zitat von Ringding"UPDATE pflidataTMP SET hat_eq_T = 'x',hat_ev_T = 'x' WHERE hat_eq = -1"
Ah, das wollte ich wissen, thxZitat von rettichnope. für zwei unterschiedliche where clauseln funkt das zusammenfassen net.
dsie 2 statements kannst nicht zusammenlegen
weil sie verschiedene sachen in verschiedenen faellen machen
Oops, sorry. Hab ich übersehen.
du kannst es per (sprache drueber - zb.) php in eine schleife hauen
wenn alle updates so gleich sind
dann hast zumindest weniger code
Zitat von funkadu kannst es per (sprache drueber - zb.) php in eine schleife hauen
wenn alle updates so gleich sind
dann hast zumindest weniger code
hab's so gelöstCode:For intCounter = 1 To 8 Select Case intCounter Case 1 sql = "INSERT INTO pflidataTMP SELECT * FROM pflidata;" Case 2 sql = "UPDATE pflidataTMP SET hat_eq_T = 'x' WHERE hat_eq = -1;" Case 3 sql = "UPDATE pflidataTMP SET hat_ev_T = 'x' WHERE hat_ev = -1;" Case 4 sql = "UPDATE pflidataTMP SET hat_kv_T = 'x' WHERE hat_kv = -1;" Case 5 sql = "UPDATE pflidataTMP SET hat_u_T = 'x' WHERE hat_u = -1;" Case 6 sql = "UPDATE pflidataTMP SET hat_gw_T = 'x' WHERE hat_gw = -1;" Case 7 sql = "UPDATE pflidataTMP SET hat_al_T = 'x' WHERE hat_al = -1;" Case 8 sql = "UPDATE pflidataTMP, Rechtsf SET pflidataTMP.Rechtsform_T = [Rechtsf].[Rechtsform] WHERE (((pflidataTMP.rechtsform)=[Rechtsf].[Code]));" End Select db.Execute sql Next db.Close Set db = Nothing
So war's aber nicht gemeint. Das ist ja keine Schleife im eigentlichen Sinn, weil sie bei jedem Durchlauf was komplett anderes macht. Da könntest du's ja gleich hintereinander schreiben.
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025