用vb编写有关数据库编程的问题

minmin 2001-09-17 07:57:12
我是个vb新手,在编一个程序是遇到了一个问题。我建好了一个数据库,用ado连接后,我想要达到这样的效果,输入一个在数据库里存在的编号,就自动在另一个输入框里显示相应的内容。第一次执行是没有问题,就是在每我改变第一个数时,就产生错误:binding collection error,field not updatable,……望高手指教,解决我的问题,应该怎么改,谢谢。
我的代码是这样的:
Private Sub Form_Load()
txtCode.DataField = "code"
txtName.DataField = "name"
End Sub

Private Sub txtCode_Change()
Dim SQL As String
SQL = "SELECT name "
SQL = SQL + " From name"
SQL = SQL + " Where code = "
SQL = SQL + txtCode.Text
Adodc1.RecordSource = SQL
Adodc1.Refresh
End Sub
...全文
82 点赞 收藏 9
写回复
9 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
sunshinecom21 2001-09-18
其实这样也可以
当然不要把txtcode绑定
Adodc1.Recordset.MoveFirst
For i = 0 To Adodc1.Recordset.RecordCount - 1
If Adodc1.Recordset.Fields("code").Value = txtCode Then
txtName = Adodc1.Recordset.Fields("name").Value
Exit Sub
End If
Adodc1.Recordset.MoveNext
Next i
回复
minmin 2001-09-18
谢谢帮助
回复
pengcheng 2001-09-17
同意楼上的。
回复
starbattler 2001-09-17
哈哈终于被我找到原因了!!!
首先你要保证adodc1.recordsource属性设置为命令类型1-adCmdText 在命令文本中写如
select 需要字段名 from name

然后我建议不要把修改记录的代码放在txtCode_Change()事件中,不然你想输入15,结果刚输了1事件就被执行了,不好!!用个command好了。在command1()事件中写入以下修改代码Dim SQL Dim SQL As String
SQL = "SELECT name ,code "
SQL = SQL + " From name "
SQL = SQL + " Where code = "
SQL = SQL & Text1.Text
Adodc1.RecordSource = SQL
Adodc1.Refresh
Set Text1.DataSource = Adodc1
Text1.DataField = "Au_ID"
Set Text2.DataSource = Adodc1
Text2.DataField = "author"

我已经在我机器上通过了,呵呵!!

回复
lovercat 2001-09-17
Private Sub txtCode_Change()
for i=1 to len(textcode.text)
.....
if not adodc1.eof then
...
adodc1.close
else
adodc1.close
end if
next


对不?大概就这思路
回复
sunking 2001-09-17
1,你用绑定文本框的方法时,当文本框中的内容改变时,数据库是要更新的,所以你应该把第一个绑定去掉:txtCode.DataField = "code"去掉
2,你的查询语句不应放txtCode_Change里面,或者放在Keypressed中当按回车时开始查询,或者另外设置一个查询的按钮
3,在做字符串连接时不要用“+”,应该用“&"否则容易错误的。
回复
sonicdater 2001-09-17
在 Private Sub txtCode_Change()

中 重新 binding 一次 ,即 txtCode.DataSource= ADODC1:txtName.DataSource= ADODC1
试试

回复
shawls 2001-09-17
晴空
回复
lovercat 2001-09-17
Private Sub txtCode_Change()

里边我想应该放入循环。
回复
相关推荐
发帖

1188

社区成员

VB 数据库(包含打印,安装,报表)
申请成为版主
帖子事件
创建了帖子
2001-09-17 07:57
社区公告
暂无公告