vbScript - 将InputBox导入.accdb,空白?

时间:2015-04-07 20:19:53

标签: sql ms-access vbscript insert

经过9个小时的研究和反复试验,我已经找到了这个当前的问题,我正在使用我编写的另一个脚本将数据输入数据库。我将在代码视图中简化此问题的重点。我有3个字段,一个是SQL末尾的时间戳,例如....&现在()& "')&#34 ;.插入FIND,但是通过变量输入框插入空白数据。

Option Explicit
Dim ib
Dim sql1, constring, con
constring="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\users\user\documents\database1.accdb;"
sql1="INSERT INTO table1 (column1) VALUES('" & ib & "')"
set con = createobject("adobd.connection")
con.open constring

Do
    ib=inputbox("Input Data")

    IF ib="quit" OR ib="QUIT" THEN
    con.close

   ELSE con.execute sql1
  End If
Loop WHILE ib<>"quit" AND ib<>"QUIT"

它将行追加到数据库中,但它们是空白的。我设计的表格采用&lt; 255 chars。

的短文本

我还从数据库中运行了一个测试查询,它插入了我告诉它的内容,但由于某种原因,输入框数据并未进入表格。

2 个答案:

答案 0 :(得分:0)

sql1="INSERT INTO table1 (column1) VALUES('" & ib & "')"

在循环之前将一个(空)ib串联到sql1 con.execute sql1会将其插入数据库,直到您退出。

尝试

con.execute“INSERT INTO table1(column1)VALUES('&amp; ib&amp;”')

并在工作时进行优化。

答案 1 :(得分:0)

Do
    ib=inputbox("Input Data")
    If LCase(ib) <> "quit" THEN
        con.execute "INSERT INTO table1 (column1) VALUES('" & ib & "')"
    End If
Loop WHILE ib<>"quit" AND ib<>"QUIT"
con.close

您需要重新创建将为您检索的每个值执行的字符串