我做这个创造了这个表称为位置 :在INSERT语句错误“这里不允许列”
CREATE TABLE LOCATION(
POSTCODE VARCHAR(10) PRIMARY KEY,
STREET_NAME VARCHAR(20),
CITY VARCHAR(20));
,当我尝试在表中添加一些日期不起作用说有错误
INSERT INTO LOCATION VALUES(PQ95VM,'HAPPY_STREET','FRANCE');
错误是说
列这里不允许
我做这个创造了这个表称为位置 :在INSERT语句错误“这里不允许列”
CREATE TABLE LOCATION(
POSTCODE VARCHAR(10) PRIMARY KEY,
STREET_NAME VARCHAR(20),
CITY VARCHAR(20));
,当我尝试在表中添加一些日期不起作用说有错误
INSERT INTO LOCATION VALUES(PQ95VM,'HAPPY_STREET','FRANCE');
错误是说
列这里不允许
你错过了周围的第一个值引号,它应该是
INSERT INTO LOCATION VALUES('PQ95VM', 'HAPPY_STREET', 'FRANCE');
顺便说一句,你会很好,建议在INSERT明确指定的列名,用于可读性,可维护性的原因和健壮性,即
INSERT INTO LOCATION (POSTCODE, STREET_NAME, CITY) VALUES ('PQ95VM', 'HAPPY_STREET', 'FRANCE');
如果我们在输入变量名称时出现了一些拼写错误,这个错误就会出现。 就像在存储过程中,我有变量名x,以及在我的INSERT语句我使用
insert into tablename values(y);
它会抛出这里不允许出错列。
我不确定你为什么被低估。这是我以前也犯的一个常见错误。 – forcedfx
Like Scaffman says - You are missing quotes。 始终当你是一个值传递给VARCHAR2使用引号
INSERT INTO LOCATION VALUES('PQ95VM','HAPPY_STREET','FRANCE');
所以一个(“)开始的字符串,第二个(”)关闭它。
但是,如果你想报价符号添加到字符串例如:
我父亲告诉我:'你一定要勇敢,儿子。
你必须使用像一个三重报价代号:
“我的父亲告诉我:‘“”’你一定要勇敢,儿子
*加引号的方法可以在不同的数据库引擎
改变你错过了什么是邮政编码" "
,因为它是一个varchar
。
有两种插入方式。
当您创建表Table created.
并在创建它之后添加一行时,可以使用以下方法。
INSERT INTO table_name
VALUES (value1,value2,value3,...);
1 row created.
你已加入这么多表,或者它被保存,并且您重新打开它,你需要提及的表的列名太否则会显示同样的错误。
ERROR at line 2:
ORA-00984: column not allowed here
INSERT INTO table_name (column1,column2,column3,...)
VALUES (value1,value2,value3,...);
1 row created.
一段时间以来,在执行插入查询,我们正面临着:
列这里不允许
错误。由于字符串参数中可能缺少引号。在字符串params中添加引号并尝试执行。
尝试这种情况:
INSERT INTO LOCATION VALUES('PQ95VM','HAPPY_STREET','FRANCE');
或
INSERT INTO LOCATION (ID, FIRST_NAME, LAST_NAME) VALUES('PQ95VM','HAPPY_STREET','FRANCE');
INSERT INTO位置值(PQ95VM, 'HAPPY_STREET', '法国');
不正确,因为您的第一个参数POSTCODE的类型为VARCHAR(10)。你应该使用''。尝试插入位置值('PQ95VM','HAPPY_STREET','FRANCE');
您应该使用支持语法高亮显示的编辑器。互联网提供了许多免费的。只要看看你提出的问题的方式:你的布卢姆马上就显而易见了。 – APC