2016-03-31 65 views
1

我无法将字符串插入带有逗号的表中,我的数据类型是否不正确?我一直在作战,无法在网上找到答案。 我得到了太多的错误 - 值“ORA-00913:值过多”用逗号插入字符串sqlplus

create table customer (cust_id number(5) not null primary key, 
cust_name char(25), 
year_born number(4)); 

insert into customer values(1, ‘Harry, L’, 2002); 
insert into customer values(2, ‘Sally, P’, 1992); 
insert into customer values(3, ‘Lio, L’ ,1998); 
insert into customer values(4, ‘Patel, P’, 2001); 
insert into customer values(5, ‘Roner, K’, 1978); 
insert into customer values(6, ‘Jackson, O’, 2002); 
insert into customer values(7, ‘Long, P’, 2001); 
insert into customer values(8, ‘Smith, G’, 1992); 
insert into customer values(9, ‘Harry, L’, 2002); 
insert into customer values(10, ‘Paner, K’, 1978); 
insert into customer values(11, ‘Dan, U’, 2010); 
insert into customer values(12, ‘Patel, M’, 2001); 
+5

使用直的单引号,例如“'哈利,欧莱雅'。 – jarlh

+1

**为什么你没有发布错误代码?**'ORA-错误'代码是有原因的。 –

+0

ORA-00913:值太多 –

回答

0

关闭“智能引号”中无论你的编辑器。 Oracle不会将它们看作适当的单引号,而是试图将它们作为普通字符插入。这意味着它将附加的逗号看作是一个分隔字段的逗号,而不是数据中包含的逗号,并且认为您试图插入4个数据元素而不是3个,从而导致错误。

注意当复制/粘贴时也会发生这种情况。您可能需要将智能报价编辑为适当的单引号。