strSql="select
*
from
table
"(也可加上条件判断where语句)
rs.Open
strSql,con,adOpenDynamic,adLockOptimistic
rs.Fields("这里写上你要修改的字段名称")=修改后的信息
………………类推
rs.Update
二、可直接使用Update
SQL语句进行修改
strSql="Update
table(表名)
set
要修改的字段名称1=修改后的信息1,要修改的字段名称2=修改后的信息2,……等等"
con.Execute
即可,试试吧。
ADO+DataGrid1例子先点击DataGrid1要修改的数据项,调用DataGrid1_click事件,把点击该项数据在Textbox中显示出来(运行状态下)DataGrild_click()Text2=
Adodc1.Recordset(7)
Text3
=
Adodc1.Recordset(9)
Text4
=
Adodc1.Recordset(10)
Text5
=
Adodc1.Recordset(3)然后在Textbox中修改数据后,点击"保存"按扭
执行保存command_save
click()Adodc1.Recordset(11)
=
DTPicker1.Value
Adodc1.Recordset(1)
=
Text1.Text
Adodc1.Recordset(6)
=
DTPicker2.Value
Adodc1.Recordset(7)
=
Text2.Text
Adodc1.Recordset(8)
=
Text_taobiao.Text
Adodc1.Recordset(9)
=
Text3.Text
Adodc1.Recordset.UpdateBatch
adAffectAllChapters添加new_click()Adodc1.Recordset.AddNew
Adodc1.Recordset(0)
=
Combo1.Text
Adodc1.Recordset(1)
=
Text_name.Text
Adodc1.Recordset(2)
=
Combo__kh_name.Text
Adodc1.Recordset(3)
=
Combo_xd.Text
Adodc1.Recordset(4)
=
Combo_tel.TextAdodc1.Recordset.UpdateBatch
楼上的道友的方法中:sSQL="update
table
set
field=20"
要改为:
sSQL="update
table
set
field1=20,...,field2=20
where
id=3"
但是如果你的数据库中没有记录3就会出错。
还有一种方法,用recordset来处理:
dim
cn
as
new
adodb.connection
dim
rs
as
new
adodb.recordset
rs.open
"select
*
from
数据库
where
id=3",adOpenDynamic,
adLockOptimistic,
-1
if
not
rs.eof
then
rs("你要修改的字段1")="具体值1"
...
rs("你要修改的字段n")="具体值n"
rs.update
end
if
rs.close
我在设计时一般都是这样,虽然麻烦些但基本不会出错,还有就是你在设计数据库时最好要加上一个ID,这样就可以保证数据的唯一性。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)