定义如下:
Dim DB As New ADODB.Connection
Dim Rec(2) As New Recordset
Dim SQL(10) As String
...
SQL(1) = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\test.mdb;Persist Security Info=False"
...
SQL(4) = "Select User-Office,User-Carrier,User-Name,Source-TrnspType From T_S,T_U Where T_S.Source-Carrier = T_U.User-Carrier"
...DB.Open SQL(0)
...
Rec(2).Open SQL(4), DB, 1, 3 '运行到这里出错提示为:
"实时错误 '-2147217904 (80040e10)':
[Microsoft][ODBC Microsft Access Driver] Too few
parameters. Expected 5.修改SQL(4)="Select User-Office From T_S,T_U Where Source-Carrier = User-Carrier"
依然出错,提示为:
"实时错误 '-2147217904 (80040e10)':
[Microsoft][ODBC Microsft Access Driver] Too few
parameters. Expected 4.GOOGLE中查到的资料,说如果要查询的资段不存在,就会出这个错.但是反复对照表结构,没有错.
并且在后面为了简化SQL语句,只选择了一个资段,依然出错.搞不懂这个"Expected 5"和"Expected 4"算什么东西?希望大家帮忙.
Dim DB As New ADODB.Connection
Dim Rec(2) As New Recordset
Dim SQL(10) As String
...
SQL(1) = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\test.mdb;Persist Security Info=False"
...
SQL(4) = "Select User-Office,User-Carrier,User-Name,Source-TrnspType From T_S,T_U Where T_S.Source-Carrier = T_U.User-Carrier"
...DB.Open SQL(0)
...
Rec(2).Open SQL(4), DB, 1, 3 '运行到这里出错提示为:
"实时错误 '-2147217904 (80040e10)':
[Microsoft][ODBC Microsft Access Driver] Too few
parameters. Expected 5.修改SQL(4)="Select User-Office From T_S,T_U Where Source-Carrier = User-Carrier"
依然出错,提示为:
"实时错误 '-2147217904 (80040e10)':
[Microsoft][ODBC Microsft Access Driver] Too few
parameters. Expected 4.GOOGLE中查到的资料,说如果要查询的资段不存在,就会出这个错.但是反复对照表结构,没有错.
并且在后面为了简化SQL语句,只选择了一个资段,依然出错.搞不懂这个"Expected 5"和"Expected 4"算什么东西?希望大家帮忙.
SQL(4) = "Select User-Office,User-Carrier,User-Name,Source-TrnspType From T_S,T_U Where T_S.Source-Carrier = T_U.User-Carrier"其中的t_s和t_u是2个表,而你select部分怎么没加??试试 select t_u.user-office,t_u.user-carrier,t_u.user-name,t_s.source-trnsptype from t_s,T_u where ……
当然,为了稳妥起见,将SQL(4)修改如下:sql(4)= "Select T_U.User-Office From T_S, T_U Where T_S.Source-Carrier = T_U.User-Carrier"还是出错了.
信息:
"实时错误 '-2147217904 (80040e10)':
[Microsoft][ODBC Microsft Access Driver] Too few
parameters. Expected 4.
试试
把你的 SQL 语句直接放到 Access 的查询窗口中运行试试,它会具体指出什么错了。
最终的SQL字符串为:SQL(4) = "Select [User-Office], [User-City], [User-VendorType], [User-Scorp], [User-Carrier], [User-Name], [Source-TrnspTpye], [Source-BkgBlType], [Source-Origin], [Source-Destination], [Source-EqpType], [Source-Unit], [Source-Rate], [Source-Amount], [Source-Currency] From T_S, T_U Where T_S.[Source-Carrier] = T_U.[User-Carrier] ORDER BY [User-Carrier] ASC"呵呵,有点长.
非常感谢大家的帮助.马上结贴