检查SQL表中的多个数据

时间:2018-04-15 16:46:28

标签: c# sql mariadb windows-forms-designer

我正在开发一个使用C#(带窗体)和SQL的项目。 我需要将对象放在某个位置(由用户选择)。 这是我的SQL表:
Zone(int), x(int), y(int), z(int), ref(varchar), size(int)

所以我有4个位置变量:Zonexyz

在放置物品之前,我需要检查一下我想要放置的物品是否已经存在。

由于我需要检查多个数据,我不知道是否有更好的方法。

我不知道应该用什么。

提前致谢。

编辑:我看到一个名为“if exist”的声明,但在尝试检查多个值时,我真的不明白如何使用它。

1 个答案:

答案 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)
);