sql - 使用 1 个查询插入多行

标签 sql ms-access ms-access-2003

我在使用 ms access 2003 使用 1 个查询插入多行时遇到问题。当我使用 INSERT INTO 时像下面的代码

INSERT INTO Employee values ('1','b','c');
INSERT INTO Employee values ('2','d','e');  

问题,ms access老是弹出在 SQL 语句结束后找到的字符 .那么,有没有什么办法可以将数据插入到表中呢?

最佳答案

使用 Access SQL,您不能组合两个 INSERT声明。您可以分别运行它们。但是,如果您需要使用单个语句来完成,则需要使用更复杂的查询。

INSERT INTO Employee
SELECT '1','b','c'
FROM Dual
UNION ALL
SELECT '2','d','e'
FROM Dual;
Dual是一个设计为始终只包含一行的自定义表。您可以创建自己的 Dual表使用来自 this Stack Overflow answer 的说明.

但是,您实际上并不需要为此目的使用自定义表。而不是 Dual ,您可以使用任何只返回一行的表或查询。

关于sql - 使用 1 个查询插入多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14064909/

相关文章:

mysql - 关系数据库中的时区混淆

ms-access - "Invalid procedure or argument"错误

ms-access - 刷新/重新查询组合框问题

oracle - 将变量从 Access(前端)传递到 Oracle(后端)存储过程

mysql - VB 导出访问 Mysql 货币格式失败

mysql - 数据库 : User Profiles

mysql - SQL - 将列类型从文本更改为日期和时间

java - 在 Java 中是否可以在单个 SQL 查询和结果集中检索不相关数据的表?

c# - 没有弹出窗口,错误源是rdr = cmd.executereader();

VBA AddressOf Crash Office 应用程序