插入带逗号的字符串sqlplus

Inserting string with commas sqlplus

我无法将包含逗号的字符串输入 table,是我的数据类型不正确吗?我一直在与此作斗争,并且无法在网上的任何地方找到答案大声笑。 我收到太多值错误 - "ORA-00913: too many values"

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);

关闭任何编辑器中的 "smart-quotes"。 Oracle 不将它们视为正确的单引号,并试图将它们作为普通字符插入。这意味着它将封闭的逗号视为字段分隔逗号,而不是数据中包含的逗号,并认为您正在尝试插入 4 个数据元素而不是 3 个,从而导致错误。

请注意,当您 copy/paste 时也会发生这种情况。您可能需要将智能引号编辑为正确的单引号。