在MySQL中批量添加时
INSERT INTO student (id,name,sex)
VALUES (01,'小明','男'),
(02,'小明','男'),
(03,'小明','男');
而在在Oracle中我们如果这样写回报一个
ORA-00933: SQL 命令未正确结束 的错误
ORA-00933: 是一个 Oracle 数据库的错误代码,表示 SQL 命令没有正确结束。这通常是由于 SQL 语句中缺少了必要的语法成分,比如缺少了括号、关键字、或者语句结尾的分号。
解决这个问题的步骤通常包括:
- 检查 SQL 语句:确保所有的括号都是闭合的,比如
SELECT
,INSERT
,UPDATE
,DELETE
等语句块。 - 语法检查:仔细检查 SQL 语句的语法,确保所有的关键字使用正确,比如
FROM
,WHERE
,GROUP BY
,ORDER BY
等关键字。 - 结尾分号:确保每条 SQL 语句都以分号
;
结尾。 - 执行环境:如果 SQL 语句是在特定的工具或脚本中执行的,确保执行环境可以正确处理 SQL 语句。
- 字符编码:确认 SQL 文件的字符编码与数据库的字符编码一致,避免由于字符编码问题导致的语法错误。
- 数据库版本:确保使用的 SQL 语法与数据库的版本兼容。
- 逐步排查:如果 SQL 语句很长,可以尝试将其分解为几个简单的语句来执行,以确定是哪部分语句引起了错误。
在Oracle做批量添加是的sql 可以这样写
insert all
into student (id,name,sex) values ('01','小明','男')
into student (id,name,sex)values ('02','小红','女')
select * from dual;
我们也可以同时对多个表进行批量添加
insert all
into student (id,name,sex) values ('01','小明','男')
into student (id,name,sex)values ('02','小红','女')
into teacher (id,name,sex)values ('01','王老师','女')
into teacher (id,name,sex)values ('02','李老师','女')
select * from dual;
题主学习记录,大家多多包涵,有问题评论区下交流。