oracle - 错误没有足够的值在 Oracle SQL 中插入数据
问题描述
我有一个煎饼数据库,这是我创建的表之一。
这是代码:
CREATE TABLE ingredient_purchase_list
(
date_ordered DATE PRIMARY KEY,
quantity VARCHAR2(15),
unit VARCHAR(15),
unit_price NUMBER(4,2) NOT NULL,
CONSTRAINT ingredient_id_fk
FOREIGN KEY (ingredient_id) REFERENCES ingredient (ingredient_id)
);
如您所见,这里是表格的插入,但看起来有问题。你能告诉我以下错误是什么意思吗?
BEGIN
INSERT INTO ingredient_purchase_list VALUES ('2019-11-15', 10, 'lbs', 0.79);
INSERT INTO ingredient_purchase_list VALUES ('2019-11-10', 4, 'lbs', 6.52);
INSERT INTO ingredient_purchase_list VALUES ('2019-11-15', 8, 'bags', 2.49);
INSERT INTO ingredient_purchase_list VALUES ('2019-12-01', 5, 'lbs', 4.25);
INSERT INTO ingredient_purchase_list VALUES ('2019-10-31', 3, 'cartons', 4.50);
END
我有这个错误:
ORA-00947: not enough values
ORA-06512: at "SYS.WWV_DBMS_SQL_APEX_190200", line 592
ORA-06512: at "SYS.DBMS_SYS_SQL", line 1658
ORA-06512: at "SYS.WWV_DBMS_SQL_APEX_190200", line 578
ORA-06512: at "APEX_190200.WWV_FLOW_DYNAMIC_EXEC", line 2057
问题是什么?
谢谢。
解决方案
您应该列出所有列,并在类型上保持一致。这行得通吗?
INSERT INTO ingredient_purchase_list (date_ordered, quantity, unit, unit_price)
VALUES (DATE '2019-11-15', '10', 'lbs', 0.79);
推荐阅读
- c# - IBM MQ with C# 如何将消息头更改为 MQHRF
- python - 跳转到另一个类后如何返回主类?
- c# - LINQ:方法“GroupBy”没有重载需要 6 个参数/IGrouping
不包含定义 - machine-learning - 为什么 K-fold 交叉验证会构建 K+1 模型?
- javascript - 图像未显示在 github 页面上
- powershell - 用于获取部分 XML 节点内容的 Powershell 脚本
- c++ - 如何使用 USB 2 最小化延迟
- python - Python - 解析 INI 文本(不是 INI 文件)
- firebase - Crashlytics/Firebase 中的搜索选项,我可以在其中按崩溃名称进行搜索?
- c# - 如何提高二维数组的性能?