sql - 我的 SQL Plus 插入语句中的字符无效
问题描述
我为我的 SQL 类制作了一个表,但是当我尝试插入数据时,它在 Borough char 输入上给了我一个错误:
CREATE TABLE Child (
childID VARCHAR (5) PRIMARY KEY,
firstName CHAR (10),
lastName CHAR (15),
dateOfBirth DATE,
street VARCHAR (20),
city CHAR (10),
ZIP VARCHAR (5),
phone VARCHAR (15),
borough CHAR (15)
);
INSERT INTO Child
VALUES (‘C001’, John, Wick, 2017-02-16 , ‘123 Jay Street’, New York, ‘11201’, ‘212-777-
6677’, Brooklyn);
*
"Error at Line 2, invalid Character ORA-00911"
具体来说,它在布鲁克林的字母 k 上告诉我“第 2 行错误,无效字符”。我尝试了不同的引用组合,但它仍然给了我同样的错误,这次是电话号码中的数字 3
INSERT INTO Child
VALUES (‘C002’, ‘Wayne’, ‘Brady’, ‘2017-02-
16’, ’24 Atlantic Ave’, ‘New York’, ‘11201’,
‘212-888-2345’, ‘Brooklyn’);
*
"Error at Line 2, invalid Character ORA-00911
任何帮助,将不胜感激 !
解决方案
您使用的那些单引号很奇怪。请改用标准单引号 ( '
),如:
INSERT INTO Child
(childID, firstName, lastName, dateOfBirth, street, city, ZIP, phone, borough)
VALUES ('C001', 'John', 'Wick', to_date('2017-02-16','YYYY-MM-DD'), '123 Jay Street', 'New York', '11201', '212-777-6677', 'Brooklyn');
在 Oracle 中,您还应该:
- 避免使用
VARCHAR
类型。改为使用VARCHAR2
。 - 命名 中的所有列
INSERT
。
推荐阅读
- vuejs3 - 简单的路由器链接不起作用,如何在 Vuejs 3 中转到另一个 vue 页面
- qt - 如何使用 setCellWidget 将 QColorDialog 正确插入 TableWidget
- java - Java 使用 Runtime Exec 执行终端命令
- javascript - 嵌套选项卡不会在 HTML 中关闭
- angular - 离子角度,子组件不会显示
- reactjs - 在反应惰性/悬念中的每个导航动作之间“加载...”
- php - 如何根据 PHP 数组的表单输入选择和显示匹配的特定行?
- javascript - React/Socket.IO - 每次 React 组件更改时,Socket 都会断开连接
- javascript - 如何使用 React Native 基本钩子示例?
- python - Django:处理模板中的外键值