[英]SQL Server show invalid column name when the column name on the table exists
当列实际存在于创建的表中时,错误消息显示错误无效列名。
CREATE TABLE Worker (
WORKER_ID INT NOT NULL,
FIRST_NAME CHAR(25),
LAST_NAME CHAR(25),
SALARY INT,
JOINING_DATE DATETIME,
DEPARTMENT CHAR(25)
);
INSERT INTO Worker
(WORKER_ID, FIRST_NAME, LAST_NAME, SALARY, JOINING_DATE, DEPARTMENT) VALUES
(001, 'Monika', 'Arora', 100000, '14-02-20 09.00.00', 'HR'),
(002, 'Niharika', 'Verma', 80000, '14-06-11 09.00.00', 'Admin'),
(003, 'Vishal', 'Singhal', 300000, '14-02-20 09.00.00', 'HR'),
(004, 'Amitabh', 'Singh', 500000, '14-02-20 09.00.00', 'Admin'),
(005, 'Vivek', 'Bhati', 500000, '14-06-11 09.00.00', 'Admin'),
(006, 'Vipul', 'Diwan', 200000, '14-06-11 09.00.00', 'Account'),
(007, 'Satish', 'Kumar', 75000, '14-01-20 09.00.00', 'Account'),
(008, 'Geetika', 'Chauhan', 90000, '14-04-11 09.00.00', 'Admin');
我已成功创建表,我没有在列名中看到任何拼写错误。 此代码是从https://www.techbeamers.com/sql-query-questions-answers-for-practice/复制的。
因此,当我 hover 提供的列名“无效的列名'FIRST NAME'”时,该列的 rest 给出了相同的错误消息
另一个问题是当我尝试执行代码时,它给出了:
消息 208,级别 16,State 1,第 17 行无效 object 名称“工人”。
谢谢。
在插入之前有一个DROP
语句。 这就是为什么您会收到该列丢失的警告。
您可能希望将DROP
语句移到CREATE
语句之前,或者甚至使用新语法DROP TABLE IF EXISTS...
如果它在您的版本中可用。
您在插入期间传递了无效的日期时间。 它应该如下所示:
INSERT INTO Worker
(WORKER_ID, FIRST_NAME, LAST_NAME, SALARY, JOINING_DATE, DEPARTMENT) VALUES
(001, 'Monika', 'Arora', 100000, '2000-02-14 09:00:00', 'HR')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.