I want to update data in SQL Server using VFP 8. Below is my code
<code>create cursor skedul1 (norekening N(13), ke N(2), pokok_kr N(12), bunga_kr N(12), pokok_sd N(12))
insert into skedul1 (norekening, ke, pokok_kr, pokok_sd, bunga_kr) values (1312124120052, 1, 0, 26400, 850000)
insert into skedul1 (norekening, ke, pokok_kr, pokok_sd, bunga_kr) values (1312124120052, 2, 0, 26400, 850000)
insert into skedul1 (norekening, ke, pokok_kr, pokok_sd, bunga_kr) values (1312124120052, 3, 0, 26800, 850000)
insert into skedul1 (norekening, ke, pokok_kr, pokok_sd, bunga_kr) values (1312124120052, 4, 0, 26400, 850000)
insert into skedul1 (norekening, ke, pokok_kr, pokok_sd, bunga_kr) values (1312124120052, 5, 0, 25500, 850000)
insert into skedul1 (norekening, ke, pokok_kr, pokok_sd, bunga_kr) values (1312124120052, 6, 850000, 26400, 0)
select skedul1
m.value1 = skedule1.norekening
m.value2 = skedule1.ke
m.value3 = skedule1.pokok_kr
m.value5 = skedule1.bunga_kr
TEXT TO m.lcSQL TEXTMERGE noshow
UPDATE dbo.skedul
SET pokok_kr = ?m.value3,
pokok_sd = ?m.value4,
bunga_kr = ?m.value5
WHERE norekening = ?m.value1 and ke = ?m.value2
ENDTEXT
lnResult = SQLExec(Thisform.nHandle, m.lcSQL)
If m.lnResult < 0
Aerror(aWhy)
Messagebox(aWhy[2])
SQLDisconnect(0)
Return .F.
Else
Messagebox("Data Telah Update..!!")
thisform.PopulateGrid()
thisform.grid2.RecordSource = ""
Endif
</code>
<code>create cursor skedul1 (norekening N(13), ke N(2), pokok_kr N(12), bunga_kr N(12), pokok_sd N(12))
insert into skedul1 (norekening, ke, pokok_kr, pokok_sd, bunga_kr) values (1312124120052, 1, 0, 26400, 850000)
insert into skedul1 (norekening, ke, pokok_kr, pokok_sd, bunga_kr) values (1312124120052, 2, 0, 26400, 850000)
insert into skedul1 (norekening, ke, pokok_kr, pokok_sd, bunga_kr) values (1312124120052, 3, 0, 26800, 850000)
insert into skedul1 (norekening, ke, pokok_kr, pokok_sd, bunga_kr) values (1312124120052, 4, 0, 26400, 850000)
insert into skedul1 (norekening, ke, pokok_kr, pokok_sd, bunga_kr) values (1312124120052, 5, 0, 25500, 850000)
insert into skedul1 (norekening, ke, pokok_kr, pokok_sd, bunga_kr) values (1312124120052, 6, 850000, 26400, 0)
select skedul1
m.value1 = skedule1.norekening
m.value2 = skedule1.ke
m.value3 = skedule1.pokok_kr
m.value5 = skedule1.bunga_kr
TEXT TO m.lcSQL TEXTMERGE noshow
UPDATE dbo.skedul
SET pokok_kr = ?m.value3,
pokok_sd = ?m.value4,
bunga_kr = ?m.value5
WHERE norekening = ?m.value1 and ke = ?m.value2
ENDTEXT
lnResult = SQLExec(Thisform.nHandle, m.lcSQL)
If m.lnResult < 0
Aerror(aWhy)
Messagebox(aWhy[2])
SQLDisconnect(0)
Return .F.
Else
Messagebox("Data Telah Update..!!")
thisform.PopulateGrid()
thisform.grid2.RecordSource = ""
Endif
</code>
create cursor skedul1 (norekening N(13), ke N(2), pokok_kr N(12), bunga_kr N(12), pokok_sd N(12))
insert into skedul1 (norekening, ke, pokok_kr, pokok_sd, bunga_kr) values (1312124120052, 1, 0, 26400, 850000)
insert into skedul1 (norekening, ke, pokok_kr, pokok_sd, bunga_kr) values (1312124120052, 2, 0, 26400, 850000)
insert into skedul1 (norekening, ke, pokok_kr, pokok_sd, bunga_kr) values (1312124120052, 3, 0, 26800, 850000)
insert into skedul1 (norekening, ke, pokok_kr, pokok_sd, bunga_kr) values (1312124120052, 4, 0, 26400, 850000)
insert into skedul1 (norekening, ke, pokok_kr, pokok_sd, bunga_kr) values (1312124120052, 5, 0, 25500, 850000)
insert into skedul1 (norekening, ke, pokok_kr, pokok_sd, bunga_kr) values (1312124120052, 6, 850000, 26400, 0)
select skedul1
m.value1 = skedule1.norekening
m.value2 = skedule1.ke
m.value3 = skedule1.pokok_kr
m.value5 = skedule1.bunga_kr
TEXT TO m.lcSQL TEXTMERGE noshow
UPDATE dbo.skedul
SET pokok_kr = ?m.value3,
pokok_sd = ?m.value4,
bunga_kr = ?m.value5
WHERE norekening = ?m.value1 and ke = ?m.value2
ENDTEXT
lnResult = SQLExec(Thisform.nHandle, m.lcSQL)
If m.lnResult < 0
Aerror(aWhy)
Messagebox(aWhy[2])
SQLDisconnect(0)
Return .F.
Else
Messagebox("Data Telah Update..!!")
thisform.PopulateGrid()
thisform.grid2.RecordSource = ""
Endif
Only one row has been changed. Can someone corrected my script?
note.. at variable m.value1 until m.value5 suppose be write with skedul1 not skedule1 also m.value4 = skedul1.pokok_sd
2
What made you think you only insert one row? It inserts all of them and these lines were totally unnecessary:
<code>SET SAFETY OFF
SELECT skedul1
Zap
Set Safety off
select skedul1
</code>
<code>SET SAFETY OFF
SELECT skedul1
Zap
Set Safety off
select skedul1
</code>
SET SAFETY OFF
SELECT skedul1
Zap
Set Safety off
select skedul1
1