草庐IT

unique-constraint

全部标签

sql - 如何在 ormlite ( SQLite ) 中执行多列唯一约束

我正在为Android使用ormlite,我正在尝试获得多列唯一约束。截至目前,我只能对这样的个别列进行唯一约束:CREATETABLE`store_group_item`(`store_group_id`INTEGERNOTNULLUNIQUE,`store_item_id`INTEGERNOTNULLUNIQUE,`_id`INTEGERPRIMARYKEYAUTOINCREMENT);我想要的是CREATETABLE`store_group_item`(`store_group_id`INTEGERNOTNULL,`store_item_id`INTEGERNOTNULL,`_i

sqlite - 两列唯一约束的组合

我创建了连接表t1和t2的表t1t2,如下所示:CREATETABLEt1t2(idintegerprimarykey,t1_idinteger,t2_idinteger,foreignkey(t1_id)referencest1(id),foreignkey(t2_id)referencest2(id));是否可以定义一个约束(restriction),只允许元组(t1_id,t2_id)的唯一值?或者我应该在应用程序中检查这个? 最佳答案 CREATEUNIQUEINDEXidx_twocolsONt1t2(t1_id,t2_i

sqlite - 两列唯一约束的组合

我创建了连接表t1和t2的表t1t2,如下所示:CREATETABLEt1t2(idintegerprimarykey,t1_idinteger,t2_idinteger,foreignkey(t1_id)referencest1(id),foreignkey(t2_id)referencest2(id));是否可以定义一个约束(restriction),只允许元组(t1_id,t2_id)的唯一值?或者我应该在应用程序中检查这个? 最佳答案 CREATEUNIQUEINDEXidx_twocolsONt1t2(t1_id,t2_i

sqlite3 "foreign key constraint failed"

我设置了两个表:CREATETABLEA(idINTEGERNOTNULLPRIMARYKEYAUTOINCREMENT,nameTEXT);CREATETABLEB(idINTEGERNOTNULLPRIMARYKEYAUTOINCREMENT,id2INTEGER,bookTEXT,FOREIGNKEY(id2)REFERENCESA(id));在我向A中插入数据后,它看起来像这样:1John2Amy3Peter在我向B中插入数据后,它看起来像这样:11LordoftheRings21Catch2232SumofAllFears43HuntforRedOctober然后我执行下面的

sqlite3 "foreign key constraint failed"

我设置了两个表:CREATETABLEA(idINTEGERNOTNULLPRIMARYKEYAUTOINCREMENT,nameTEXT);CREATETABLEB(idINTEGERNOTNULLPRIMARYKEYAUTOINCREMENT,id2INTEGER,bookTEXT,FOREIGNKEY(id2)REFERENCESA(id));在我向A中插入数据后,它看起来像这样:1John2Amy3Peter在我向B中插入数据后,它看起来像这样:11LordoftheRings21Catch2232SumofAllFears43HuntforRedOctober然后我执行下面的

python - SQLite 中字段的唯一组合?

我试图用基于一组数据的行填充一个新的SQLite数据库,但我在避免重复行方面遇到了麻烦。我可以在Python中完成此操作,但SQLite中肯定必须有一个设计选项来处理此操作。我需要每一行仅针对三个文本字段的唯一组合而存在。如果我使每个文本字段都受UNIQUE约束,那么这三个字段都必须是唯一的。但我更喜欢这三个字符串的独特组合。也就是说,这些记录应该都是可以存在的:(一个,一个,一个)(一个,一个,乙)(一,乙,乙)(二、二、二)如果我将所有三个字段设为唯一并插入这些行,则只会插入(a,a,a)和(b,b,b)。我可以在Python中连接字段1-3并将其用作主键,但这似乎是额外的工作。

python - SQLite 中字段的唯一组合?

我试图用基于一组数据的行填充一个新的SQLite数据库,但我在避免重复行方面遇到了麻烦。我可以在Python中完成此操作,但SQLite中肯定必须有一个设计选项来处理此操作。我需要每一行仅针对三个文本字段的唯一组合而存在。如果我使每个文本字段都受UNIQUE约束,那么这三个字段都必须是唯一的。但我更喜欢这三个字符串的独特组合。也就是说,这些记录应该都是可以存在的:(一个,一个,一个)(一个,一个,乙)(一,乙,乙)(二、二、二)如果我将所有三个字段设为唯一并插入这些行,则只会插入(a,a,a)和(b,b,b)。我可以在Python中连接字段1-3并将其用作主键,但这似乎是额外的工作。

SQLite :"ALTER TABLE ` 游戏`ADD UNIQUE (`name` )"SQLite 错误

我在上面使用了与Mysql中相同的命令语法,并想为Android设备环境中的表文件设置一个唯一的键,但是,在LogCat中提示错误:03-2316:16:45.580:E/Database(657):Failure1(near"UNIQUE":syntaxerror)on0x2c0240whenpreparing'ALTERTABLEgameADDUNIQUE(name);'.查看了SQLite的文档,似乎SQLite并没有使用这种方式来设置唯一键。任何男孩都知道这样做吗?感谢您提前回复! 最佳答案 sqlite支持以另一种方式改变

SQLite :"ALTER TABLE ` 游戏`ADD UNIQUE (`name` )"SQLite 错误

我在上面使用了与Mysql中相同的命令语法,并想为Android设备环境中的表文件设置一个唯一的键,但是,在LogCat中提示错误:03-2316:16:45.580:E/Database(657):Failure1(near"UNIQUE":syntaxerror)on0x2c0240whenpreparing'ALTERTABLEgameADDUNIQUE(name);'.查看了SQLite的文档,似乎SQLite并没有使用这种方式来设置唯一键。任何男孩都知道这样做吗?感谢您提前回复! 最佳答案 sqlite支持以另一种方式改变

Sqlite NULL 且唯一?

关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭2年前。Improvethisquestion我注意到我可以在具有UNIQUE约束的列中使用NULL值:UNIQUE(col)在某些情况下这会产生任何问题吗?