Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/262.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# MySQL插入(如果不存在)/忽略_C#_Mysql_Insert_Exists_Ignore - Fatal编程技术网

C# MySQL插入(如果不存在)/忽略

C# MySQL插入(如果不存在)/忽略,c#,mysql,insert,exists,ignore,C#,Mysql,Insert,Exists,Ignore,基本上,我的表格布局如下: Type_Of Agreement iPad Heyo! I'm an agreement! iPod Touch I'm another agreement! 基本上,我正在构建一个管理员界面,管理员可以在其中添加新类型。我想让他/她不能输入一个已经存在的新类型。基本上,在上面的例子中,如果他们在新的类型框中输入'iPad'并按下submit,它将被忽略,或者抛出一个错误等等 下面是我现有的MySQL语句: INSERT IGNORE IN

基本上,我的表格布局如下:

Type_Of     Agreement
iPad        Heyo! I'm an agreement!
iPod Touch  I'm another agreement!
基本上,我正在构建一个管理员界面,管理员可以在其中添加新类型。我想让他/她不能输入一个已经存在的新类型。基本上,在上面的例子中,如果他们在新的类型框中输入'iPad'并按下submit,它将被忽略,或者抛出一个错误等等

下面是我现有的MySQL语句:

INSERT IGNORE INTO agreements (Type_Of, Agreement) VALUES (?, ?)
com.Parameters.AddWithValue("", Request.Form["pies"]);
com.Parameters.AddWithValue("", "Wahey! A sample license!");
(升级到答案)

您需要在的
类型上定义一个
唯一的
索引。如中所述:

UNIQUE
索引创建一个约束,使得索引中的所有值都必须是不同的。如果尝试添加键值与现有行匹配的新行,则会发生错误。对于所有引擎,
UNIQUE
索引允许对可以包含
NULL
的列使用多个
NULL
值。如果在
UNIQUE
索引中为列指定前缀值,则列值在前缀中必须是唯一的

因此:

altertable协议添加唯一索引(类型为);

那么,问题出在哪里?如果
INSERT IGNORE
没有达到预期效果,是否在
Type\u Of
?Derp上定义了
唯一的
键。不,我没有。我忘了那部分。谢谢