sqlserver数据库建表提示说数据库存在该对象

我在数据库shop中新建表product,但是系统每次报错数据库已存在该对象名。我把数据库删了重建结果还是一样的问题,建表语句如下:ifOBJECT_ID('produc... 我在数据库shop中新建表product,但是系统每次报错数据库已存在该对象名。我把数据库删了重建结果还是一样的问题,建表语句如下:
if OBJECT_ID('product')is not nulldrop table productgocreate table product( p_id varchar(20) primary key, p_name varchar(20), p_memberprice money, p_marketprice money, type_id varchar(20),--类型 p_model varchar(20),--型号 p_brand varchar(20),--品牌 p_num int, p_image varchar(200), p_describe varchar(200), p_listdate datetime, isbig varchar(10), sold int, constraint product foreign key(type_id) references productType(type_id) );
错误提示如下:

百度上找不到相关的解答,只有等待大神的释疑了!
展开
 我来答
twvampire
2014-01-15 · TA获得超过3620个赞
知道大有可为答主
回答量:3029
采纳率:76%
帮助的人:2948万
展开全部

这不是因为你的表,是因为你的外键,你的约束名问题

可以直接这样

if OBJECT_ID('product')is not null 
drop table product
go
create table product
(p_id varchar(20) primary key,
p_name varchar(20),
p_memberprice money,
p_marketprice money,
type_id varchar(20),--类型        
p_model varchar(20),--型号        
p_brand varchar(20),--品牌        
p_num int,
p_image varchar(200),
p_describe varchar(200),
p_listdate datetime,
isbig varchar(10),
sold int,
foreign key(type_id) references productType(type_id));
szm341
推荐于2018-04-12 · TA获得超过6726个赞
知道大有可为答主
回答量:5005
采纳率:100%
帮助的人:5107万
展开全部
约束名与表名重复了,外键一般加FK前缀
constraint FK_product foreign key(type_id) references productType(type_id)
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
firephoenix1
2014-01-15 · TA获得超过2449个赞
知道小有建树答主
回答量:466
采纳率:50%
帮助的人:80.8万
展开全部
if OBJECT_ID('product')is not nulldrop table product
肯定是你这句有问题呗 drop表这句话根本就没执行!所以……你再好好想想这里的逻辑 ,呵呵!
追问
所以我很奇怪啊,其他表都没问题,而且我单独drop table product是表明执行成功的,但新建表又是说数据库中存在对象了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
徭月朗8D
2014-01-16
知道答主
回答量:59
采纳率:0%
帮助的人:16.9万
展开全部
不写判断语句,只写个
use shop
drop table product
试试
追问
我试过了,也没用,还是谢谢了!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式