你是不是要把表中 VIP 在EXCEL中第一列数据对应行的 "status", "vipGrade" 字段修改成值 "挂失" ,"时尚VIP"
如果是这个问题,就有一个简单查询一次性就做完了。
修改数据不就是将表单中的数据更新到数据库中去吗?
我相信你会, 只是没这个思路罢了。
举例说: 可以在DBGrid控件的OnKeyPress事件中检测, 比如说按一下回车键, 切入到编辑模式(即修改Option属性的Editing为True), 可以修改表单数据, 再次按Enter回车键的时候切入到提交模式, 修改Option属性的Editing为False, 同时循环判断用户修改了哪些数据, 被修改过的数据Update到数据库。
如楼上所说, DBGrid中修改数据不安全, 你也可以生成一个临时表, 加一个提交数据的按钮, 按钮的OnClick事件中将临时表中的数据select into 原表 from 临时表, 最后清空临时表, 保留原表以备恢复数据(当然如果嫌占资源就不保留, 也可以只保留一份, 每次更新都覆盖, 至少给用户一次恢复到提交修改之前的数据的机会)。
这样我就是举个例子说, 给你个思路。
用SQL语句呗
insert
into
表1(Str-No)
select
'你原来数据的那个字段'
from
'你原来的表名'
要是有过滤条件,就加上过滤条件。
With rs
If MsgBox("确定删除此行吗?" & vbNewLine & _
Fields(0) & ", " & Fields(1), vbYesNo) = vbYes Then
If Not (EOF Or BOF) Then Delete ’删除记录
End If
End WithUpdate 方法 (ADO)
保存对 Recordset 对象的当前记录所做的所有更改。
语法
recordsetUpdate Fields, Values
参数
Fields 可选。变体型,代表单个名称;或变体型数组,代表需要修改的字段(单个或多个)名称或序号位置。
Values 可选。变体型,代表单个值;或变体型数组,代表新记录中字段(单个或多个)值。
说明
使用 Update 方法保存自从调用 AddNew 方法,或自从现有记录的任何字段值发生更改之后,对 Recordset 对象的当前记录所作的所有更改。Recordset 对象必须支持更新。
要设置字段值,请进行下列某项 *** 作:
给 Field 对象的 Value 属性赋值并调用 Update 方法。
传送字段名和值作为 Update 调用的参数。
将字段名数组和值数组传送给 Update 调用。
在使用字段和值数组时,两个数组中必须有相等数量的元素,同时字段名的次序必须与字段值的次序相匹配。字段和值的数量及次序不匹配将产生错误。
如果 Recordset 对象支持批更新,那么可以在调用 UpdateBatch 方法之前将一个或多个记录的多个更改缓存在本地。如果在调用 UpdateBatch 方法时正在编辑当前记录或者添加新记录,那么 ADO 将自动调用 Update 方法,以便在批更改传送到提供者之前将所有挂起的更改保存到当前记录。
如果在调用 Update 方法之前移动出正在添加或编辑的记录,那么 ADO 将自动调用 Update 以便保存更改。如果希望取消对当前记录所做的所有更改或者放弃新添加的记录,则必须调用 CancelUpdate 方法。
调用 Update 方法后当前记录仍为当前状态。
以上就是关于[求助] vba+sqlserver2008+ado 数据库数据修改的问题全部的内容,包括:[求助] vba+sqlserver2008+ado 数据库数据修改的问题、Delphi中可不可以在ADOtable表上直接修改数据、delphi语言用Ado连接数据库Access要对她进行修改怎么编程等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)