我创建了一个表,如下所示:
CREATE TABLE SALES_REP
(
SRepID CHAR(4) NOT NULL,
SRefFName VARCHAR(15) NOT NULL,
SRefLName VARCHAR(15) NOT NULL,
SRepRank VARCHAR(15) NOT NULL,
IsMentoredBy CHAR(4),
PRIMARY KEY (SRepID),
FOREIGN KEY (IsMentoredBy) REFERENCES SALES_REP(SRepID)
);
然后我尝试插入以下数据:
INSERT INTO sales_rep VALUES ('SR00', 'Leo', 'Tolstoy', 'First');
INSERT INTO sales_rep VALUES ('SR01', 'Mark', 'Twain', 'Second');
INSERT INTO sales_rep VALUES ('SR02', 'Stephen', 'King', 'Fifth');
当我键入以下内容时:
SELECT * FROM sales_rep;
除了列名之外,什么都不显示。为什么会这样?
您的表定义了五列。插入内容没有列出列,只有四列。因此,他们应该返回一个错误。
第一课:检查错误!
因此,列出正在插入的列:
INSERT INTO sales_rep (SRepID, SRefFName, SRefLName, SRepRank)
VALUES ('SR00', 'Leo', 'Tolstoy', 'First');
INSERT INTO sales_rep (SRepID, SRefFName, SRefLName, SRepRank)
VALUES ('SR01', 'Mark', 'Twain', 'Second');
INSERT INTO sales_rep (SRepID, SRefFName, SRefLName, SRepRank)
VALUES ('SR02', 'Stephen', 'King', 'Fifth');
秒减:在INSERT
语句中包含列名!