草庐IT

auto-update

全部标签

php - 重新索引 MySQL INT 主键并重置 AUTO_INCREMENT

所以我有一个用于PHP站点的MySQL数据库。在数周的开发过程中,我得到了类似的东西:Table:usersid|name-----------12|Bob34|Jen155|John154|Kyle除此之外还有数百条记录并且ID数以千计。我正在寻找一个我可以运行的脚本来将键重命名为它们的最小值(保留它们各自的行),然后将AUTO_INCREMENT重置为下一个id期望的输出是:Table:usersid|name-----------1|Bob2|Jen3|Kyle4|JohnALTERTABLEusersAUTO_INCREMENT=5;(注意Kyle和John)我意识到我必须修复

java - MySQL : Cannot delete or update a parent row: a foreign key constraint fails 中的@OneToMany 错误

我有一个一对多的关系如下@Entity@Table(name="reminderheader")publicclassReminderHeaderimplementsSerializable{@Id@org.hibernate.annotations.GenericGenerator(name="REMINDER_HEADER_GEN",strategy="native")@GeneratedValue(generator="REMINDER_HEADER_GEN")@Column(name="id",unique=true,nullable=false)@Basic(fetch=Fe

mysql - INSERT INTO values (...) ON DUPLICATE KEY UPDATE 具有多个值

这行得通吗?(我没有可用于测试的mysql服务器>.我的表:myid:整数/主键我的数据:文本INSERTINTOmytableVALUES(1,"newrow"),(2,"brandnewrow"),(3,"yupanothernewrow"),[.....moreandmorecoma-separatedparentheseswithvalues],(1000,"guesswhat?yesnewrow")ONDUPLICATEKEYUPDATEmydata="dang,thisrowalreadyexists!"; 最佳答案 是

php - 如何插入auto_increment

如果我有以下数据库CREATETABLE`my_table`(`year`text,`event`text)ENGINE=MyISAMDEFAULTCHARSET=utf8;INSERTINTO`my_table`VALUES('2011','john');INSERTINTO`my_table`VALUES('2011','dave');INSERTINTO`my_table`VALUES('2010','hany');我的问题是如何添加idauto_increment这样就可以了INSERTINTO`my_table`VALUES(1,'2011','john');INSERTIN

php - MySQL ON DUPLICATE KEY UPDATE语法错误

我想知道是否有人能发现我的sql语句中的任何错误。如果尚不存在,我希望它在我的表中插入一条新记录。如果它确实存在,那么只需更新它。我在日期字段中的主键。这是我在php中出现的语句以及我遇到的错误:INSERTINTOExtraStats(date,supportStaff,startEmails,endEmails,emailsAnswered)VALUES('$startDate','$supportStaff','$startEmail','$endEmail','$emailAnswered')ONDUPLICATEKEYUPDATE(supportStaff,startEmai

mysql - 使用 MySql 时出现 "Dimension Lookup/Update"时如何解决不正确的 SQL 语法错误?

我将Kettle4.1与MySql5.6一起使用,并尝试运行第4章demo来自PentahoKettleSolutions:BuildingOpenSourceETLSolutionswithPentahoDataIntegration我有"DimensionLookup/Update"step失败并出现错误:YouhaveanerrorinyourSQLsyntax;checkthemanualthatcorrespondstoyourMySQLserverversionfortherightsyntaxtousenear'OPTIONSQL_SELECT_LIMIT=1'atlin

mysql - 创建表 : You have an error in your SQL syntax near 'order( order_id INT UNSIGNED NOT NULL AUTO_INCREMENT, user_id ' at line 1 时出错

这个问题在这里已经有了答案:SyntaxerrorduetousingareservedwordasatableorcolumnnameinMySQL(1个回答)关闭8年前。我正在尝试使用PHP脚本在同一个MySQL数据库中创建2个表:主键为“user_id”的表“user”和来自“user”表的主键为“order_id”和外键“user_id”的表“order”(一对多关系)。用户表创建成功,没有问题:$sql="CREATETABLEuser(user_idINTUNSIGNEDNOTNULLAUTO_INCREMENT,typeENUM('member','admin')NOTN

MySQL UPDATE 挂起且没有错误

这是我要运行的查询:UPDATEtblmattersSETsubMatterName=null,matterName='Travelersv.Allstate',dateOpen='2011-04-13',dateClosed=null,orgAttorney_fk=129,billingAttorney_fk=129,responsibleAttorney_fk=129,typeOfLawCode_fk=050,updatedBy='RAINMAKR',updatedOn=NOW()WHEREparentID=275ANDmatterID='00968'每次我尝试执行时,它只是卡在一

mysql - 如何为 InnoDB 引擎数据库重新播种 "Auto increment"列?

我正在为表使用人工主键。该表有两列,一列是主键,另一列是日期(数据类型:日期)列。当我尝试从文件(仅包含第二列的值)加载批量数据时,日期的YYYY部分被添加到主键列(这是表中的第一列)并且日期的其余部分被截断。所以我需要重置表格。我尝试使用Truncatetable语句进行操作,但由于错误而失败,因为此表在另一个表的外键约束中被引用。所以我必须使用delete*fromtable;语句来完成它。我确实删除了所有记录,但是当我再次插入记录时(这次使用insertinto语句),它从我之前插入的那一年的最后一年的后一年开始递增ID(即它没有刷新它)。注意:-我使用的是MySQL5.5和In

mysql - nodejs mysql bulk INSERT on DUPLICATE KEY UPDATE

我试图用一个mysql语句插入大约1000行,如果键已经存在则更新该行。我在nodejs中使用this执行此操作模块。我的代码目前看起来像这样:this.conn.query("INSERTINTOsummonersVALUES?"+"ONDUPLICATEKEYUPDATEname=VALUES(name),rank=VALUES(rank),points=VALUES(points),satisfyCriteria=VALUES(satisfyCriteria),priority=VALUES(priority),"+"recentlyChecked=VALUES(recently