来自MS Access的视图问题 [英] Problem with view from ms access

查看:72
本文介绍了来自MS Access的视图问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Private Sub Button2_Click(ByVal发送者为System.Object,ByVal e为System.EventArgs)处理btnview.Click
str ="Provider = Microsoft.Jet.OLEDB.4.0; Data Source = G:\ db1.mdb; Persist Security Info = False"

conn.ConnectionString = str
conn.Open()
str =(从表1中选择ID,名称,地址,联系人编号,增值税,其中名称="& sid.Text&","&snm.Text&",""& sadd.Text&'',"& Val(scno.Text)&"'',''& Val(svat.Text)&"'',)


''如果是rs.EOF然后
''rs.AddNew()

''如果结束


''如果是rs.EOF然后


sid.Text = rs.Fields(0).ToString()

snm.Text = rs.Fields(1).ToString()

sadd.Text = rs.Fields(2).ToString()

scno.Text = rs.Fields(3).ToString()

svat.Text = rs.Fields(4).ToString()

bu我遇到了相同的错误..在集合中找不到与所请求名称或顺序相对应的项目. COMEXCEPTION WAS UNHANDLED

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnview.Click
str = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=G:\db1.mdb;Persist Security Info=False"

conn.ConnectionString = str
conn.Open()
str = ("select Id,Name,Address,Contact_Number,Vat from table1 where Name=''" & sid.Text & "'',''" & snm.Text & "'',''" & sadd.Text & "'',''" & Val(scno.Text) & "'',''" & Val(svat.Text) & "'',")


'' If rs.EOF Then
''rs.AddNew()

''End If


'' If rs.EOF Then


sid.Text = rs.Fields(0).ToString()

snm.Text = rs.Fields(1).ToString()

sadd.Text = rs.Fields(2).ToString()

scno.Text = rs.Fields(3).ToString()

svat.Text = rs.Fields(4).ToString()

bu i got a same error..Item cannot be found in the collection corresponding to the requested name or ordinal. COMEXCEPTION WAS UNHANDLED

推荐答案

当数据标记的名称与用作数据源的ADO记录集的字段不匹配时,会发生此错误.

例如,如果您的工作簿具有以下数据标记:
%% = categoryID
%% =说明
然后,您指定为数据源的ADO记录集必须包含名为"categoryID"和"description"的字段.

为了确保ADO记录集具有正确命名的字段,良好的做法是在SQL查询中显式使用这些字段名,如下所示:
This error occurs when the names of your data markers do not match the fields of the ADO recordset you are using as your data source.

For example, if your workbook has these data markers:
%%=categoryID
%%=description
Then the ADO recordset you assign as a data source must contain fields named "categoryID" and "description".

In order to be sure your ADO recordset has properly named fields, it is a good practice to use those field names explicitly in your SQL query like this:
SELECT categoryID, description FROM categories 


如果您使用通用选择,例如:


If you use a generic select, as in:

SELECT * FROM categories 


如果数据库具有正确的列名,该查询将仍然有效.但是,这样做会大大降低效率,因为多余的列将被复制并随后被忽略.


The query will still work if the database has the correct column names. However, it will be significantly less efficient as extra columns will be copied and subsequently ignored.


这篇关于来自MS Access的视图问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆