草庐IT

delete_keys

全部标签

MySQL:使用两个外键创建表失败并出现 "Duplicate key name"错误

在尝试创建新表时,MySQL给出了一个我无法解释的错误。CREATETABLEProducts(idINTNOTNULL,PRIMARYKEY(id));CREATETABLEWarehouseMovements(timeDATETIMENOTNULL,product1INTNOTNULL,product2INTNOTNULL,FOREIGNKEYWarehouseMovements(product1)REFERENCESProducts(id),FOREIGNKEYWarehouseMovements(product2)REFERENCESProducts(id));失败并显示ERR

Java PreparedStatement 和 ON DUPLICATE KEY UPDATE : how do I know whether row was inserted or updated?

如果有以下代码,我如何知道execute()方法是导致插入还是更新?Connectionc=DriverManager.getConnection(connectionString);PreparedStatementst=c.prepareStatement("INSERTINTO`table`(`field1`)VALUES(?)ONDUPLICATEKEYUPDATEid=LAST_INSERT_ID(id);");st.setString(1,"somevalue");st.execute();提前致谢。 最佳答案 考虑以下

java - key 'PRIMARY' 的重复条目使用 JPA 持久保存到数据库中

我在将JPA持久保存到我的数据库时遇到错误,当我将第二个文件持久保存到数据库时发生错误。我需要导入大量数据集,每个数据集有5张。即使其中已经存在一些相同的数据,也需要更新每个表。目前我收到以下错误错误17:26:35,315WARN[org.hibernate.engine.jdbc.spi.SqlExceptionHelper](http-localhost-127.0.0.1-8080-1)SQLError:1062,SQLState:2300017:26:35,316ERROR[org.hibernate.engine.jdbc.spi.SqlExceptionHelper](h

mysql - key '...' 的重复条目 'PRIMARY'

正如你我都知道的那样,关于此类错误消息的问题有很多。但是我找不到好的答案,因为答案太多了。我有一个表存储从客户端发送的nonce。但有时(偶尔)db会提示重复的主键插入,即使没有记录具有完全相同的主键也是如此。这是JVM显示的内容。[#|2012-11-09T11:06:52.098+0900|WARNING|glassfish3.1.2|javax.enterprise.system.container.ejb.com.sun.ejb.containers|_ThreadID=236;_ThreadName=Thread-2;|EJB5184:Asystemexceptionoccu

mysql - 更新重复 key 更新

我有一个表playerspoints,其中包含一个商店ID和一个玩家的ID,以及一个玩家的积分。SHOP_ID|PLAYER_ID|POINTS----------------------------------------1|7|662|4|33我想做的是将积分从一家商店转移到另一家商店。问题:商店id和玩家id形成唯一索引。我想做的是在重复键更新时,而不是让它失败,将一个条目的点添加到另一个条目并删除“来自”条目。类似于:UPDATE`playerspoints`SET`boardId`=$toWHERE`boardId`=$fromONDUPLICATEKEYUPDATE`poi

mysql - Rails 创建 schema_migrations - Mysql2::Error: Specified key was too long

我正在使用Rails3.2.6和Mysql6.0.9(但我在MySQL5.2.25上有完全相同的错误)当我创建新数据库(rakedb:create)然后当我尝试加载模式(rakeschema:load)时,我得到这个错误:Mysql2::Error:Specifiedkeywastoolong;maxkeylengthis767bytes:CREATEUNIQUEINDEX`unique_schema_migrations`ON`schema_migrations`(`version`)经过数小时的研究,我找到了这些解决方案:1。将MySQL变量innodb_large_prefix更

mysql - 访问包含冒号和连字符的 JSON key

MySQL表的格式是这样的:CREATETABLEbar......fooJSON...foo字段包含以下内容:{"#:8":0.90189,"#:34":0.90239,"#:55":0.90238,"#:144":0.90219,"X:21-34":-1}此命令失败:SELECTfooFROMbarWHEREfoo->'$.X:21-34'!=0;Error(4,1):InvalidJSONpathexpression.Theerrorisaroundcharacterposition9.如何访问键名中有一些特殊字符但JSON字符串仍然有效的字段? 最佳

php - 每次向依赖 FOREIGN KEY 的 MySQL 表插入数据时,是否需要每次执行额外的 SELECT 和 INSERT IGNORE 查询?

我有4个MySQL表,它们通过FOREIGNKEYs相互依赖。请检查以下表结构架构:CREATEDATABASEIFNOTEXISTScoursesCHARACTERSETlatin1COLLATElatin1_bin;CREATETABLEIFNOTEXISTScourses.institution(icodeINTUNSIGNEDNOTNULLAUTO_INCREMENT,inameVARCHAR(255)NOTNULL,PRIMARYKEY(icode),UNIQUE(iname))ENGINE=InnoDB;CREATETABLEIFNOTEXISTScourses.citie

mysql - 由于 "incorrectly formed foreign key constraint"错误,无法更改主键

我有一个具有以下架构定义的表:CREATETABLE`currency`(`id`int(11)NOTNULLAUTO_INCREMENT,`code`char(3)CHARACTERSETutf8COLLATEutf8_unicode_ciNOTNULL,`name`varchar(255)CHARACTERSETutf8COLLATEutf8_unicode_ciNOTNULLPRIMARYKEY(`id`),UNIQUEKEY`code_UNIQUE`(`code`))ENGINE=InnoDBAUTO_INCREMENT=2DEFAULTCHARSET=utf8;我想要的是删除

MySQL alter table add column with primary key 语法错误

我正在尝试向我的其中一个数据库表中添加一列,但出现语法错误我似乎找不到问题...我当前的数据库表如下所示:component+tag_id+item_id------------|----------|-----------com_content|23|2642com_content|26|3481com_content|35|1868com_content|85|5827com_content|89|7882我希望它看起来像这样,其中“id”是自动递增的,所有列都是主键的一部分id+component+tag_id+item_id-----|--------------|------