我刚刚创建了一个表,如下面MS SQL错误而删除列
create table Employee
(emp_id smallint not null,
employee_name varchar (30) not null,
salary money not null,
department varchar(30),
address varchar(40),
primary key(emp_id)
)
创建表之后,我觉得自己像自动填充emp_id列(使用标识)。所以,我试图删除列EMP_ID如下:
alter table Employee
drop column emp_id
即使这样,我也没有在表中插入任何行呢,我收到错误
消息5074,级别16,State 1,Line 1对象 'PK__Employee__1299A86183CA4FBC'依赖于列'emp_id'。消息 4922,级别16,状态9,行1 ALTER TABLE DROP COLUMN emp_id失败 ,因为一个或多个对象访问此列。
请帮忙!!!
嗨,这是因为您正在使用兴奋剂的列已被其他表引用。如果你真的想放弃它,请先删除约束,然后删除列。 –
'emp_id'是你的主键,因为你的创建表查询'主键(emp_id)',所以你应该放弃该主键约束之前,删除该列 –
可能重复[如何删除约束的列?](http:///stackoverflow.com/questions/8641954/how-to-drop-column-with-constraint) –