【问题标题】:how to insert values to Access through SQL and ADODB object when the table has an autoincrement field?当表具有自动增量字段时,如何通过 SQL 和 ADODB 对象向 Access 插入值?
【发布时间】:2017-07-12 07:28:49
【问题描述】:

我在通过 SQL 语句和 ADODB 对象向 Access 插入值时遇到问题。 这是我的访问表“测试” enter image description here

主字段“tid”是一个自动增量字段,当我通过 SQL 语句插入新值时

strSQL = "INSERT INTO test VALUES('john')"

adoConn.Execute CommandText:=strSQL

我有一个例外,我必须这样写我的陈述

strSQL = "INSERT INTO test VALUES(1, 'john')"

我该如何解决这个问题?

【问题讨论】:

  • 哪一行是错误,又是什么错误
  • 请分享错误日志。
  • "INSERT INTO test(uname) VALUES('john')" 工作吗?
  • 对不起,我用的是中文版的excel,所以报错信息是chinese。主要是说需要tid字段。所以我需要这样写语句:strSQL = "INSERT INTO 测试 VALUES(1, 'john')"
  • 这个语句有效。如果有很多列怎么办?

标签: excel ms-access vba


【解决方案1】:

这应该可以工作,如果 tid 是自动递增的:

strSQL = "INSERT INTO test (uname) VALUES ('john')";

【讨论】:

  • 是的,它可以工作,非常感谢。但是如果有很多列怎么办?我的表还有 20 个字段,我认为把它们都写下来不太方便。
猜你喜欢
  • 1970-01-01
  • 2015-10-14
  • 2013-08-03
  • 2014-01-10
  • 2012-05-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多