带有两个MDB表列的INTO-Command中的语法错误

时间:2017-03-07 17:16:00

标签: sql vb.net ms-access sql-insert oledbcommand

我正在开发一个小程序,它将两个单独的数据库(具有相同的数据结构)融合到一个。

一切正常,但是在可怕数据库的三个重要表的一个表中,SQL INSERT INTO命令无法正常工作。

我得到的所有信息都是我的语法错误。

该表看起来像这样(MySQL语法,猜测这是显示表格的最佳方式):

CREATE TABLE Images(
   Connect BIGINT,
   Number INT,
   ImageFile BIGINT,
   Side INT
)

是的,即使Connect应该是ForeignKey且ImageFile应该是PrimaryKey,它在此表中也没有主键或外键。它也没有使用AUTO_INCREMENT

我可以执行命令INSERT INTO Images (ImageFile) VALUES (12),但由于“语法错误”,无法执行命令INSERT INTO Images (Connect) VALUES (12)。与“Number”相同的错误以及使用两个错误列之一的任何组合。

老实说,我不知道发生了什么。我认为这可能与数据类型有关,但由于“Side”和“ImageFile”正在工作而“Number”和“Connect”不起作用,所以情况并非如此。

我正在执行的测试代码并不那么有趣,但我会把它留在这里:

masterCon.Close()
masterCon.ConnectionString =
        "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " & tboxMaster.Text & "\database.mdb;"
Dim sqlCom = New OleDbCommand(TextBox1.Text, masterCon)
masterCon.Open()
Try
    sqlCom.ExecuteNonQuery()
Catch ex As Exception
    Console.WriteLine(ex)
End Try
masterCon.Close()

可能是该问题的根源?

0 个答案:

没有答案