vb 写sql语句问题

小问题酱紫的,有个数组a(10)fori=0toubound(a)sql="insertintotest(xuhao,zhi)values('"&i&"','"&a(i)... 小问题
酱紫的,有个数组a(10)
for i=0 to ubound(a)
sql="insert into test(xuhao,zhi) values ('"& i &"','"&a(i)&"')"
rs.open sql.connect
这个语句可以把a(i)写进去 可是写 i 的时候格式不对吧 报错了 语法错误
谁能说下 i 的格式应该是怎样的
谢谢
展开
 我来答
olbdycsee
2011-07-16 · TA获得超过207个赞
知道答主
回答量:455
采纳率:0%
帮助的人:329万
展开全部
不能显示有两种情况:
1。程序有错误
2。程序没错,但查询到的数据集合为空
对于第2点又有2种情况:
a.SQL语句不对
b.SQL正确,数据库里的数据不满足条件

在多表查询时最好给所有字段都加上表名限制,减少出错的可能性

可以先测试一下SQL语句
SQL SERVER在查询分析器里执行语句
ACCESS的话新建一个查询,在SQL视图中执行语句

照你前面所说,应该是Text1.Text = S.SNAME,可是你后面有些sql中又有WHERE S.SNUM='"& TEXT1.TEXT &"'跟WHERE SNAME='"& TEXT1.TEXT &"',我都不知道到底是哪个字段对应Text1.Text了。如果可以,把数据库结构贴出来看一下

我根据推测写了一个,你看看行不行
SELECT C.CName FROM C,SC,S
WHERE S.Snum=SC.Snum AND SC.Cnum=C.Cnum AND S.SName='" & Text1.Text & "' //“&”号两边都有空格
我说的表明限制就是指 表名.字段名 这种写法,当数据库很大内容很多的时候,难免会有多个表拥有相同的字段名,当多表查询时这样可以减少一些错误

我猜你应该用的是Access吧,SQL Server的话字符串要用单引号而不是双引号
你可以先在数据库测试sql语句,把S.SName='" & Text1.Text & "'换成S.SName="具体值"
没错后再放到程序里,如果还是有问题,设下断点跟踪调试
悠然见影
2011-07-15 · TA获得超过422个赞
知道小有建树答主
回答量:337
采纳率:0%
帮助的人:513万
展开全部
你的表test中的xuhao字段是不是数字型的?如果是的话,sql语句应该这样写:
sql="insert into test(xuhao,zhi) values ("& i &",'"&a(i)&"')" ‘ i 的左右两边不需要单引号
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
徐州小夏
2011-07-15 · 超过20用户采纳过TA的回答
知道答主
回答量:49
采纳率:0%
帮助的人:44.4万
展开全部
不是i的格式,而是sql语句的语法错了。insert语句不需要加字段名就可以插入,字段名和字段值的对应关系是通过values括号内的顺序来实现的。语句修改为:
sql="insert into test values ('"& i &"','"&a(i)&"')"
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式