草庐IT

refit_keys

全部标签

java - ON DUPLICATE KEY UPDATE 的准备语句语法(参数数量错误)

这是我正在尝试做的事情。如果主键(entity_id)存在,我想插入到这个表中或更新记录。我只是遇到SQL语法问题。它不会让我拥有比第一个“VALUES”数量更多的参数,所以我收到以下错误:参数索引超出范围(7>参数个数,即6)。intinsertOrUpdateSuccess=MyDBSyncher.UPDATE("INSERTINTO"+DB_NAME+".entities"+"(`entity_id`,`wai_type`,`wai_id`,`character_id`,`looted`,`creation_time`)"+"VALUES((?),(?),(?),(?),(?),

php - Symfony 3 Doctrine 组合键 : single id is not allowed on composite primary key in entity

我有一个实体integercolumn(compositeId)和一个stringcolumn(asin)我希望两列都作为复合键使用。所以我在文档中查看:http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/tutorials/composite-primary-keys.html但是当我尝试加载我的存储库时$myEntity=$em->getRepository(MyEntity::class);我收到此错误消息:singleidisnotallowedoncompositeprimarykeyinentit

mysql insert on duplicate key related deadlock

在日志中我有与此查询相关的死锁:INSERTINTO`driver_state`(id,state)VALUES('83799','waiting')ONDUPLICATEKEYUPDATEstate=IF(state='active',state,VALUES(state));确切错误:ER_LOCK_DEADLOCK:Deadlockfoundwhentryingtogetlock;tryrestartingtransaction我已尝试推理并理解此查询如何可能导致死锁,但还没有深入了解。表结构CREATETABLEIFNOTEXISTS`driver_state`(`id`int

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

我在尝试向数据库添加记录时开始收到上述错误。相关列设置为“auto_increment”,数据类型为“INT”,长度为10。在线查看时,我发现当自动递增的列达到其上限时可能会发生此错误-但是在这种情况下,该表仅包含6342条记录,并且该列应该能够容纳更多记录。事实上,所讨论的应用程序在多个安装中使用,在某些情况下,具有相同结构的等效表具有比这更多的记录而不会产生错误。更奇怪的是,当我将此列的数据类型更改为“BIGINT”时,它解决了问题-即使在其他安装上它仍然与更多记录相同。任何人都可以提出可能发生此问题的任何原因吗?提前致谢。 最佳答案

java - 如何使用带有 MYSQL JDBC 驱动程序的 SimpleJdbcInsert 和 executeBatch 获取生成的 key ?

我想一次插入多条记录,并获取每条记录的id,它是自动递增的。我正在按照以下方式进行操作,但获取更新的行数而不是生成的键,在这种情况下为id。publicint[]addPersons(Listpersons){SqlParameterSource[]records=newBeanPropertySqlParameterSource[persons.size()];inti=0;for(Personperson:persons){records[i]=newBeanPropertySqlParameterSource(person);i++;}SimpleJdbcInsertinsert

java - com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException : Cannot add or update a child row: a foreign key constraint fails

当我想插入一些数据时,我经常遇到错误项目类@Entity@NamedQueries({@NamedQuery(name="Project.findAll",query="SELECTpFROMProjectp"),@NamedQuery(name="Project.findByTitle",query="SELECTpFROMProjectpWHEREp.title=:title")})publicclassProjectimplementsSerializable{@Id@GeneratedValue(strategy=GenerationType.IDENTITY)privatei

Mysql ENABLE KEYS 命令需要很长时间

我有一个MyISAM数据库表。我在那里插入了大约360000条记录,在插入数据之前使用DISABLEKEYS并在插入数据之后使用DISABLEKEYS命令。向表中插入数据后,ENABLEKEYS命令继续执行,但在高性能服务器上需要超过17小时(当前它正在运行,并且是17小时..)。问题可能出在哪里?表有很多索引,几周前它运行良好。是不是MySQL服务器配置有问题? 最佳答案 关于ALTERTABLE表启用键的状态,您的SHOWPROCESSLIST说了什么?您是否更改了MySQL配置以处理大型表的索引生成?您可能已经超过了数据大小阈

MySQL - ON 更新 CASCADE + foreign_key_checks = 0

我正在开发一种工具来合并两个具有相同架构但不同数据的数据库。其中一部分是将所有外键更改为ONUPDATECASCADE,然后递增所有主键以避免冲突并保持外键指针正常工作。我的问题是有时有一些孤立行的FK损坏,所以查询如下:UPDATEtablesetpk=pk+1000000失败是这样的:错误1452(23000):无法添加或更新子行:外键约束失败...(尽管我什至没有考虑触摸外键列!)我想通过以下方式关闭它:Setforeign_key_checks=0但是相关的外键没有更新。我做了一个快速测试,设置foreign_key_checks=0后级联不工作。有没有什么方法可以触发级联,或

mysql - 查询 : Tables with indexing/foregeing keys/correlated data

我目前正在使用MySQL数据库表结构。我在网上找到了一个很棒的表结构,但我不确定如何复制这样的东西。我对此很陌生,我请求帮助创建一个查询,该查询将创建所有表(具有相关数据(索引)、外键、多对多关系等)。随机我能够进行查询以选择所有字段:SELECT*FROMscheduleINNERJOINsemesterONschedule.semester_id=semester.idINNERJOINoffice_hoursONoffice_hours.schedule_id=schedule.semester_idINNERJOINfacultyONfaculty.id=office_hour

php - MYSQL insert or update if exists on one-way composite primary key table 单向复合主键表

我有一个用户之间的友谊表,如下所示。CREATETABLEuser_relations(pkUser1INTEGERUNSIGNEDNOTNULL,pkUser2INTEGERUNSIGNEDNOTNULL,pkRelationsTypeTINYINTUNSIGNEDNOTNULL,PRIMARYKEY(pkUser1,pkUser2),FOREIGNKEY(pkuser1)referencesusers(ID),FOREIGNKEY(pkuser2)referencesusers(ID),FOREIGNKEY(pkRelationsType)referencesuser_relati