我一直得到一个“ORA-01861:文字与格式字符串ORA-06512不匹配:在”SYS.DBMS_SQL“,第1721行”尝试将DATE值插入下面列出的credit_card表时出错:
builder
这是INSERT VALUES语句,它一直给我一个错误:
CREATE TABLE CREDIT_CARD
(
cc_card_number VARCHAR(16) NOT NULL,
cc_name_on_cc VARCHAR(100) NOT NULL,
cc_expiration_date DATE NOT NULL,
customer_id INT NOT NULL,
PRIMARY KEY (cc_card_number),
FOREIGN KEY (customer_id) REFERENCES CUSTOMER(customer_id)
)
我做错了什么?
由于
答案 0 :(得分:6)
使用date
关键字:
INSERT INTO credit_card
VALUES ('1111222233334444', 'Bob LoBlah', DATE '1980-12-17', 1);
这允许您将ISO标准日期格式用于日期常量。
我还强烈建议您列出要插入的表中的列:
INSERT INTO CREDIT_CARD (cc_card_number, cc_name_on_cc, cc_expiration_date , customer_id)
VALUES ('1111222233334444', 'Bob LoBlah', DATE '1980-12-17', 1);
这可以防止意外错误。