我正在开发一个使用C#(带窗体)和SQL的项目。
我需要将对象放在某个位置(由用户选择)。
这是我的SQL表:
Zone(int),
x(int),
y(int),
z(int),
ref(varchar),
size(int)
所以我有4个位置变量:Zone
,x
,y
和z
。
在放置物品之前,我需要检查一下我想要放置的物品是否已经存在。
由于我需要检查多个数据,我不知道是否有更好的方法。
我不知道应该用什么。
提前致谢。
编辑:我看到一个名为“if exist”的声明,但在尝试检查多个值时,我真的不明白如何使用它。
答案 0 :(得分:0)
你可以像这样使用
insert into table1 (zone,x,...)
select @zone,@x,....
where not exists(select 1 from table1 where zone=@zone and x=@x and y=@y and z=@z)
或者您可以在桌面上使用unique constraint
。
例如:
CREATE TABLE websites
( website_id INT(11) PRIMARY KEY AUTO_INCREMENT,
website_name VARCHAR(25) NOT NULL,
server_name VARCHAR(20),
creation_date DATE,
CONSTRAINT websites_unique UNIQUE (website_name)
);