我正在学Visual Basic 6.0,看了好几本书,就是在实际应用的时候,常遇到从一个数据表调用数据到另一数据表中,书本里讲得很泛,我不知如何操作,请各位高手指点迷津。谢谢!
热心网友
建议父表增加2个字段,1个字段命名为物资代码,作主关键字,应具有唯一性;另1字段命名为检索代码。子表增加1个字段命名为物资代码。它们用作父表与子表的关联词。另外父表可将单价字段取消,因为单价可能变化。子表应去掉品名、规格等字段这可减少大量的数据冗余,对数据库维护不利,但不影响数据输入及查询。检索代码用于品名的拼音检索用。例:自行车为ZXC、主板为ZB等等。 父表用DataCombo控件只能绑定1个字段。应选DataGrid控件,它可绑定多个字段。 其中按键自动检索功能代码如下:Private Sub Text1_Change() Text1 = UCase$(Text1) Adodc1。ConnectionString = "Provider=Microsoft。Jet。OLEDB。4。0;Data Source=D:\DATA_REF\ b;Persist Security Info=False" Adodc1。RecordSource = "select * from wz_BM where " & _ " 检索代码 like'" & Text1 & "%' order by 检索代码" Adodc1。Refresh n = Len(Text1) Text1。SelStart = n Text1。SelLength = 1 DataGrid1。Visible = True Adodc1。Visible = TrueEnd Sub 父子表关联代码如下:Private Sub DataGrid1_Click() zh_dm(0) = Adodc1。Recordset(0) zh_dm(1) = Adodc1。Recordset(1) zh_dm(3) = Adodc1。Recordset(4) Adodc2。ConnectionString = "Provider=Microsoft。Jet。OLEDB。4。0;Data Source=D:\DATA_REF\ b;Persist Security Info=False" Adodc2。RecordSource = "select * from wz_jink" & " where 物资代码 ='" & zh_dm(1) & "'" Adodc2。Refresh Text3。SetFocus Label2。Visible = FalseEnd Sub提问者应多学习参考SQL查询语言,编写所需代码。下附VB工程及数据库供提问者参考,整个目录解压缩于D:\根目录下。。
热心网友
建议title写清楚些,库间操作和表间操作差很远的。装个sqlserver,找本21天精通sql之类的书,学好后再想这种不是问题的问题
热心网友
不是书本写的很泛,而是数据库编程要求尽量避免这种行为。数据库要求尽量使用通过定义表间的连接建立的查询,而不是建立多个表再通过程序互相更新,象你那样的做法虽然在数据调用上比较直观,但将使数据产生大量的冗余,运行效率也差。建议先学习建立查询,自如地在数据集中直接调用各个表中的字段进行操作,这样基本就不需要用一个表中的数据更新另一个表中的数据。