我在Oracle8i企业版版本8.1.7.4.0中使用SQL * Plus。使用现有数据的SQL INSERT UPDATE查询
我有一个表customer_address
:
no - customer number
type - 0 main, 1 delivery, 2 invoice
email - customer e-mail address
每一个客户都有一个电子邮件地址设置为0类型,如:
SELECT no, type, email FROM customer_address WHERE cunu = '1';
1,0,[email protected]
我需要为每个复制的电子邮件地址客户从0类型到1类型?
当我不喜欢INSERT INTO customer_address (no, type, email) VALUES ('1','1','[email protected]');
一个测试,我看到这样的错误消息:
ORA-01400: cannot insert NULL into
有人能提供正确的例子吗?
你确定你的表中没有其他不可空列吗? – mucio
谢谢。是的,还有另外两列NOT NULL,但都是'0',我想我需要包括那些。什么是复制数据的正确例子? – user2656114
看来错误是由于该行已经存在(不知何故)造成的,所以我需要的是'UPDATE'而不是'INSERT'。有人可以修改一个例子吗? – user2656114