oracle - 不理解 Live SQL 中给出的错误
问题描述
我只是在创建一个要插入 2 个学生的表类。我只是一个初学者,在 Oracle live SQL 工作表中编写了一个简单的代码,我想在其中插入值并选择它。但是每次编写此特定代码时都会遇到相同的错误。
CREATE TABLE Class
(
studentid int NOT NULL,
studentname varchar(50) NOT NULL
);
INSERT ALL
INTO Class(studentid,studentname) VALUES (1,'JIT')
INTO Class(studentid,studentname) VALUES (2,'Joy')
SELECT * FROM Class;
commit;
错误是:
ORA-00922: 缺少或无效选项
已处理报表。
问题出在哪里?
解决方案
您编写的create table
and语句在语法上是正确的。INSERT ALL
所以,你没有理由得到这个错误。
需要注意的重要一点是,您应该使用varchar2
而不是varchar
在 Oracle 中。
该INSERT ALL
语句不会插入任何内容,因为在创建之后表中还没有任何行。源选择语句不返回任何内容。要使其正常工作,您可以将 select 语句中的表更改为dual
.
INSERT ALL
INTO Class(studentid,studentname) VALUES (1,'JIT')
INTO Class(studentid,studentname) VALUES (2,'Joy')
SELECT * FROM dual;
推荐阅读
- php - 使用 Doctrine 加载一个 sqlite 扩展
- python - 以特定值拆分列表
- kubernetes - Kubernetes 监控和自我修复
- node.js - 使用 npm audit 手动修复漏洞
- matlab - Using GetMouse/GetClick to get location of a click in psychtoolbox
- angular - 使用 flatMap 将第一次调用的响应合并到第二次调用中会出现错误 [不支持的媒体类型状态 415] --
- git - Git 显示最近 X 小时内修改(但尚未提交)的文件列表
- oracle - 在 oracle 中使用嵌套表打印元素
- javascript - map 函数中的 if/else 语句?
- odata - 如何使用导航属性?