当前位置:编程学习 > VB >>

access数据库的sql语句

Private Sub Addcmd_Click()
    sql2 = "insert into [cost] ( member, item, cost, time, describe )" & " values ('" & Trim(Text1(1).Text) & "','" & Trim(Text1(2).Text) & "'," & Trim(Text1(3).Text) & ",'" & Text1(4).Text & "','" & Trim(Text1(5).Text) & "')"   '该句有语法错误

    CN.Execute sql2
    
    Addcmd.Enabled = False
    
    MsgBox "数据已记录"vbOKOnly, " 提示"

    Rs.Close
    Exitcmd.SetFocus

End Sub

vb中操作access数据库的语句sql2,我看过access帮助,不知道该怎么写,求高人指点
access数据库的sql语句和sql中的语句有些不同,找了很多资料都没研究透。

我的数据库第一列是自动生成ID,只要输入除此之外的所有其他列。

因为之前试过检测输入的第一列是否重复,不成功,所以想研究指定列的输入数据。
另外多指点一下access数据库中sql语句需要注意的地方 --------------------编程问答-------------------- 什么错误提示? --------------------编程问答-------------------- 字段名称用了数据库关健字...比如time
改了类似的字段名称吧,或者SQL语句中对其加上[]号... --------------------编程问答-------------------- 如果第一列是自动编号,插入数据时不用管它 --------------------编程问答-------------------- http://topic.csdn.net/u/20091118/21/6d3d3696-ee6c-4d73-9591-7a8d2543d4d3.html --------------------编程问答--------------------
引用 1 楼 jhone99 的回复:
什么错误提示?



syntax error in insert into statement

另外字段time名称改过之后还是一样的报错,我觉得肯定是insert into语法有问题 --------------------编程问答-------------------- time 想必是日期型的,用#,不用' --------------------编程问答-------------------- 可能的错误:
1.time字段估计是日期型,值应当用#号括起来
   sql2 = "insert into [cost] ( member, item, cost, times, describe )" & " values ('" & Trim(Text1(1).Text) & "','" & Trim(Text1(2).Text) & "'," & Trim(Text1(3).Text) & ",#" & Text1(4).Text & "#,'" & Trim(Text1(5).Text) & "')"  '该句有语法错误 
2. 数字不用加单引号,字符需要加单引号
3. 请加上debug看输出
   sql2= "....."
   debug sql2   '加这句
   CN.Execute sql2 
--------------------编程问答-------------------- [cost] 是表名吧 在vb里面执行sql 语句按照我的经验是不需要要[]
该成
sql2 = "insert into cost ( member, item, cost, times, describe )values ('" & Trim(Text1(1).Text) & "','" & Trim(Text1(2).Text) & "','"& Trim(Text1(3).Text) & "','" & Text1(4).Text & "','" & Trim(Text1(5).Text) & "')" 
并且执行该代码前要保证rs.open
--------------------编程问答-------------------- 最好的办法是把sql2语句直接放到数据库里执行以下,看看提示什么错误 --------------------编程问答-------------------- LZ头像太易做图 --------------------编程问答--------------------   sql2 = "insert into [cost] ( member, item, cost, time, describe )" & " values ('" & Trim(Text1(1).Text) & "','" & Trim(Text1(2).Text) & "'," & Trim(Text1(3).Text) & ",'" & Text1(4).Text & "','" & Trim(Text1(5).Text) & "')"  
改为
  sql2 = "insert into cost ( member, item, cost, time, describe ) values ('" & Trim(Text1(1).Text) & "','" & Trim(Text1(2).Text) & "'," & Trim(Text1(3).Text) & ",'" & Text1(4).Text & "','" & Trim(Text1(5).Text) & "')"  
看看 --------------------编程问答-------------------- time改成[time] --------------------编程问答-------------------- 不好意思,问个菜鸟问题,为什么'" & Trim(Text1(1).Text) & "'要加单引号,什么情况下加。还有为什么要加&这个,有什么意义和作用。 --------------------编程问答--------------------
引用 13 楼 waty136999834 的回复:
不好意思,问个菜鸟问题,为什么'" & Trim(Text1(1).Text) & "'要加单引号,什么情况下加。还有为什么要加&这个,有什么意义和作用。

在sql 语句里面由于 text1.text不是一个具体的字符串  是需要读里面的值 这是语言格式没有什么为什么的
 &符合也是一样 格式问题,不需要研究为什么加 研究什么情况下加 和怎样加 
补充:VB ,  数据库(包含打印,安装,报表)
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,