草庐IT

MySQL 5.7 : Invalid default value for 'event_end_date'

我们正在将我们的应用程序从MySQL5.5迁移到5.7。由于在严格模式下MySQL5.7中的日期字段不再允许默认值0000-00-00,我想将默认值更改为NULL。相关字段定义如下:+------------------+----------------------+------+-----+------------+----------------+|Field|Type|Null|Key|Default|Extra|+------------------+----------------------+------+-----+------------+---------------

MySql 查询连接速度慢 - 如何加快速度

我必须从我们的mysql数据库中导出554k条记录。按照目前的速度,导出数据需要5天,速度慢主要是由下面的查询造成的。数据结构由Companies--Contacts----(Contact)Activities对于联系人,我们在company_id上有一个索引。在事件表中,我们有一个contact_id和company_id的索引,它映射回各自的联系人和公司表。我需要获取每个联系人以及他们拥有的最新事件日期。这是我正在运行的查询,执行大约需要0.5秒。Select*fromcontactsleftouterjoin(selectoccurred_at,contact_idfromac

mysql - 更改 mySQL 表以添加外键时出现错误 #1452

试图帮助一名实习生完成她的项目。她想将外键添加到现有表,但此查询:ALTERTABLE`document`ADDCONSTRAINT`document_ibfk_1`FOREIGNKEY(`cle_author`)REFERENCES`author`(`id_author`)ONDELETECASCADEONUPDATECASCADE;给出这个错误:ERROR1452(23000):Cannotaddorupdateachildrow:aforeignkeyconstraintfails(`wrc_mysql`.,CONSTRAINT`document_ibfk_1`FOREIGNKE

mysqldump + auto_increment 导致主键错误

我正在使用mysqldump(a)转储一个表,然后(b)将它插入到别处。当我尝试执行(b)部分时出现问题。这是我得到的错误。键“PRIMARY”的重复条目“1”现在,坚持,坚持。我知道我没有插入重复的主键....我检查了CREATETABLE语句。id字段上的auto_incremement保留为id列的最大值:AUTO_INCREMENT=45634650。我认为问题在于,如果您尝试插入id值小于auto_increment指定值的任何行,MySQL将给出此错误....无论该id是否重复。我尝试从TABLECREATE语句中手动删除AUTO_INCREMENT。仍然是同样的错误。更新

MySQL - 为什么这两个查询中时间戳的性能如此不同?

我写了一个Perl脚本,它在一个超过140000行并正在扩展的表中进行一些SQL查询。我想比较日期并获取一些行,但我意识到仅通过更改一个SQL查询,我就会获得如此不同的执行速度。查看以下执行100个$sql查询的测试结果。我在不同执行之间更改脚本的唯一行是$sql行。我跑了很多次测试,我总是得到类似的结果,所以我猜它与缓存问题无关。my$sql="SELECT`mem_used`,`swap_used`,`mem_total`FROM`$config{db}{data_table}`WHERE`host_id`=$host_idANDdate>='$date'ANDTIMESTAMPD

MySQL 外键约束 - 错误 1452 - 无法添加或更新子行

我已经使用了关于这个主题的其他帖子,但我没有运气。这是我执行的代码:UPDATEtblOrderItemsSET`ItemID`=0004WHERE`OrderNum`=203AND`OrderItemID`=26这是我的错误:ErrorCode:1452.Cannotaddorupdateachildrow:aforeignkeyconstraintfails(`cai0066`.`tblOrderItems`,CONSTRAINT`ItemID`FOREIGNKEY(`ItemID`)REFERENCES`tblCatalogItems`(`ItemID`))注意事项:当我INSE

MySQL索引帮助——哪个更快?

我正在处理的事情:我有一个使用ActiveCollab的项目2,数据库结构对我来说是新的——几乎所有的东西都存储到project_objects表中,并且具有递归的层次关系:记录1234可能是type“Ticket”,parent_id为123记录123可能是type“类别”,parent_id为12记录12可能是类型“里程碑”等等。目前此表中有超过450,000条记录,代码中的许多查询都引用了name字段,该字段没有索引。示例值可能是Design或Development。这可能是一个示例查询:SELECT*FROMproject_objectsWHEREtype="Ticket"和n

mysql - 在 phpmyadmin 中创建触发器时出错

我创建了非常简单的触发器,我认为syntex也是正确的:CREATETRIGGERtrig1afterINSERTONurlcontentforeachrowBEGINinsertintouserpost(userid,url,hash)values(userid,url,hash);END;给出错误:#1064-您的SQL语法有错误;查看与您的MySQL服务器版本对应的手册,了解在第3行的''附近使用的正确语法两个表的结构:CREATETABLEurlcontent(useridtextNOTNULL,urlvarchar(255)NOTNULL,`desc`varchar(2048

php - 如何使用 puppetlabs-mysql 安装 mySQL 5.6.23

环境:Vagrant(VirtualBox)Ubuntu14傀儡-Puppetlabs-mysql(https://github.com/puppetlabs/puppetlabs-mysql)问题:使用puppetlabs-mysql(版本3.6.1)我正在尝试安装mySQL5.6.23,但它似乎正在安装5.5.4。我尝试将属性“确保”设置为“5.6”,但它给了我这个错误:Error:Couldnotupdate:Executionof'/usr/bin/apt-get-q-y-oDPkg::Options::=--force-confold--force-yesinstallmys

mySQL 自动增量增加 10 (ClearDB & Node)

我在ClearDB中有一个简单的表:CREATETABLE`users`(`id`smallint(6)unsignedNOTNULLAUTO_INCREMENT,`username`varchar(100)DEFAULTNULL,`message`varchar(100)DEFAULTNULL,PRIMARYKEY(`id`))ENGINE=INNODBAUTO_INCREMENT=11DEFAULTCHARSET=utf8;我正在使用Node通过以下方式将数据插入表中:varpost={username:response.user.name,message:message.text