>lccon = [DRIVER=SQL Server Native Client 10.0;Server=nagaveni\sql2008;Trusted_Connection=Yes] >han = SQLSTRINGCONNECT(lccon) > >SQLEXEC(han,"create table #foo (f1 int,f2 char(20))") >SQLEXEC(han,"select * from #foo ",'foo') >CURSORSETPROP([Buffering], 5, [Foo]) > >CURSORSETPROP("Tables","#foo","foo") >CURSORSETPROP("UpdateNameList", "f1 #foo.f1, f2 #foo.f2") >CURSORSETPROP("KeyFieldList", "F1") >CURSORSETPROP("UpdatableFieldList", "f1,f2") >CURSORSETPROP("SendUpdates", .T.) > >FOR m.xi = 65 TO 90 > INSERT INTO foo VALUES (m.xi,REPLICATE(CHR(m.xi),10)) >ENDFOR > >SQLSETPROP(han,"Transactions",2) >SQLEXEC(han,"BEGIN TRANSACTION") > >IF TABLEUPDATE(.t.,.t.,"foo",fooerror) > Messagebox("records with Begin transaction and SQLSETprop transaction") > SQLEXEC(han,"select * from #foo ",'foo1') > brow > > SQLSETPROP(han,"Transactions",1) > Messagebox("records with Begin transaction ") > SQLEXEC(han,"select * from #foo ",'foo1') > brow > > SQLEXEC(han,"ROLLBACK TRANSACTION") > Messagebox("records with ROLLBACK TRANSACTION") > SQLEXEC(han,"select * from #foo ",'foo1') && EMPTY result > brow >ELSE > DISPLAY MEMORY LIKE fooerror >ENDIF >I have bufferring set to 5 default and didnt post that hoped you will understand.
lccon = [DRIVER=SQL Server Native Client 10.0;Server=nagaveni\sql2008;Trusted_Connection=Yes] han = SQLSTRINGCONNECT(lccon) SQLEXEC(han,"create table #foo (f1 int,f2 char(20))") SQLEXEC(han,"select * from #foo ",'foo') CURSORSETPROP([Buffering], 5, [Foo]) CURSORSETPROP("Tables","#foo","foo") CURSORSETPROP("UpdateNameList", "f1 #foo.f1, f2 #foo.f2") CURSORSETPROP("KeyFieldList", "F1") CURSORSETPROP("UpdatableFieldList", "f1,f2") CURSORSETPROP("SendUpdates", .T.) FOR m.xi = 65 TO 90 INSERT INTO foo VALUES (m.xi,REPLICATE(CHR(m.xi),10)) ENDFOR SQLSETPROP(han,"Transactions",2) SQLEXEC(han,"BEGIN TRANSACTION") IF TABLEUPDATE(.t.,.t.,"foo",fooerror) Messagebox("records with Begin transaction and SQLSETprop transaction") SQLEXEC(han,"select * from #foo ",'foo1') brow SQLCOMMIT(han) && encountered commit here Messagebox("records after SQL commit ") SQLEXEC(han,"select * from #foo ",'foo1') brow SQLSETPROP(han,"Transactions",1) Messagebox("records after SQlsetprop to automatic ") SQLEXEC(han,"select * from #foo ",'foo1') brow * now will this be rolled back ? No SQLEXEC(han,"ROLLBACK TRANSACTION") Messagebox("records after ROLLBACK TRANSACTION") SQLEXEC(han,"select * from #foo ",'foo1') brow ELSE DISPLAY MEMORY LIKE fooerror ENDIFsuhashegde