Dalam database saya memiliki 5 kolom ditambah id:
id, m1, m2, m3, m4, m5
Saya memilih dari satu tabel yang mungkin memiliki 1 hingga 5 baris berdasarkan id:
row,id,value
1, 1, 'A'
2, 1, 'B'
3, 1, 'C'
dll Yang perlu saya lakukan adalah memperbarui kolom m1, m2 dan m3 di tabel pengguna untuk ID pengguna 1 dengan nilai A, B dan C. Saya sudah memulai jalur seperti ini tetapi saya mulai serius pada hari Senin pada hari Selasa .
i=1;
cfloop (query=q) {
field = 'm' & i;
temp = invoke(myCFC,"updateUser",{ userid=q.id, field = q.value });
i++;
};
Dimana 'bidang' adalah m1, m2, m3. Salah satu caranya adalah dengan menggunakan switch/case pada jumlah rekaman dan melakukan 5 pemanggilan berbeda, tetapi tidak yakin apakah ada cara yang lebih baik secara terprogram?
[edit] ini berfungsi tetapi mungkin bukan cara terbaik - Saya punya kasus untuk 1-5:
switch(qryM.recordCount) {
case "1":
temp = invoke(userCFC,"updateUser", {
id = qryM.rsm_userid,
m1_c = qryM["rsm_c"][1],
m1_m = qryM["rsm_m"][1]
});
break;
case "2":
temp = invoke(userCFC,"updateUser", {
id = qryM.rsm_userid,
m1_c = qryM["rsm_c"][1],
m1_m = qryM["rsm_m"][1],
m2_c = qryM["rsm_c"][2],
m2_m = qryM["rsm_m"][2]
});
break;
cfloop
? Sintaks ini asing bagi saya. Bukankah itu akan menjadi loopfor
di CFScript, dan jika bukan CFScript, maka tag<cfloop>
? - person Tomalak   schedule 30.10.2018invoke
untuk setiap iterasi. Anda dapatnew
ataucreateobject
sebelum loop Anda dan kemudian memanggil metode Anda pada setiap iterasi. - person Shawn   schedule 31.10.2018INSERT
ing,UPDATE
ing atau keduanya? Dan ini untuk satuid
, benar? Anda tidak akan memiliki banyakid
s? Dan jikaUPDATE
ing, jika database Anda sudah memilikim4
, tetapi Anda hanya memiliki 3 baris, apakah Anda akannull
mengeluarkanm4
danUPDATE
1-3, atau membiarkanm4
apa adanya? - person Shawn   schedule 31.10.2018