vb:做了一个包含adodc控件和datagrid控件,用来看access数据库的,结果发现运行时数据库中第一个数据没有
PrivateSubForm_Load()Adodc1.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSo...
Private Sub Form_Load()
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\1.mdb;"
Adodc1.RecordSource = "表1"
Adodc1.Refresh
End Sub
就是这么一段代码,运行后数据库被改了,第一个数据不见了。 展开
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\1.mdb;"
Adodc1.RecordSource = "表1"
Adodc1.Refresh
End Sub
就是这么一段代码,运行后数据库被改了,第一个数据不见了。 展开
4个回答
展开全部
你的连接有两个明显错误:
1. Adodc1.RecordSource = "表1"
RecordSource属性值是字符串,操作的上SQL语句,是数据集合,改一下:
Adodc1.RecordSource = "Select * From [表1]"
2. 窗体加载事件不能激活ADO连接,Form_Load()事件改掉,一个按钮事件也可以,或者Active事件。因为窗体加载就本身就是个激活过程,过程冲突。
不是被改了,绝对是报错。DataGrid也要把DataSource属性设置成Adodc1 ,DataGrid删掉重新拖一个过去设置一下,用VB操作数据库要求给表设置主键,DataGrid更新数据要设置的,或者代码来操作,直接把他一列属性更新勾一下,就会隐藏一列数据的
1. Adodc1.RecordSource = "表1"
RecordSource属性值是字符串,操作的上SQL语句,是数据集合,改一下:
Adodc1.RecordSource = "Select * From [表1]"
2. 窗体加载事件不能激活ADO连接,Form_Load()事件改掉,一个按钮事件也可以,或者Active事件。因为窗体加载就本身就是个激活过程,过程冲突。
不是被改了,绝对是报错。DataGrid也要把DataSource属性设置成Adodc1 ,DataGrid删掉重新拖一个过去设置一下,用VB操作数据库要求给表设置主键,DataGrid更新数据要设置的,或者代码来操作,直接把他一列属性更新勾一下,就会隐藏一列数据的
追问
你试过了吗?反正我按你第一步做了,运行后,没报错,数据库的第一个数据还是就像上图那样不见了第一个空的数据
展开全部
用Adodc控件连接数据库,并且操作数据库,必须详细了解他的属性、方法、事件,RecordSource 属性是控件连接数据表的SQL语句,例如:Adodc1.RecordSource = " Select * from 表1",而Refresh 是他的方法,是更新数据结构。不知道你要干什么。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的意思是ACCESS里面输入数据,在VB程序里查不出来?
还是说ACCESS里面输入数据,运行VB程序里后数据被删除了(在ACCESS验证)?
还是说ACCESS里面输入数据,运行VB程序里后数据被删除了(在ACCESS验证)?
追问
后者
追答
仔细检查代码,这里只能给你一点提示
对于 ADODC ,当记录集游标移动时,会将当前记录自动保存。比如将DataGrid与之绑定,当在DataGrid 移动记录时,会自动保存当前记录。检查以下是否有这样的代码,有时可能不是直接的代码,一些其他事件也会导致当前记录变化,比如获取数据后(adodc.refresh)修改了网格的数据并修改了记录游标。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Adodc1.RecordSource = "select * from 表1"
追问
ACCESS里面输入数据,运行VB程序里后数据被删除了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询