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 的格式应该是怎样的
谢谢 展开
酱紫的,有个数组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 的格式应该是怎样的
谢谢 展开
3个回答
展开全部
不能显示有两种情况:
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="具体值"
没错后再放到程序里,如果还是有问题,设下断点跟踪调试
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="具体值"
没错后再放到程序里,如果还是有问题,设下断点跟踪调试
展开全部
你的表test中的xuhao字段是不是数字型的?如果是的话,sql语句应该这样写:
sql="insert into test(xuhao,zhi) values ("& i &",'"&a(i)&"')" ‘ i 的左右两边不需要单引号
sql="insert into test(xuhao,zhi) values ("& i &",'"&a(i)&"')" ‘ i 的左右两边不需要单引号
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不是i的格式,而是sql语句的语法错了。insert语句不需要加字段名就可以插入,字段名和字段值的对应关系是通过values括号内的顺序来实现的。语句修改为:
sql="insert into test values ('"& i &"','"&a(i)&"')"
sql="insert into test values ('"& i &"','"&a(i)&"')"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询