草庐IT

delete_record

全部标签

mysql - InnoDB mySQL 无法设置 "ON DELETE SET DEFAULT' 。如何设置?

我正在尝试创建一个名为EMPLOYEE的表。当我在没有“ONDELETESETDEFAULT”的情况下使用以下语句时,它正在工作。这是我在“ONDELETESETDEFAULT”时遇到的错误:ERROR1005(HY000):Can'tcreatetable'COMPANY.EMPLOYEE'(errno:150)这是DDLCREATETABLEEMPLOYEE(FnameVARCHAR(15)NOTNULL,MinitCHAR,LnameVARCHAR(15)NOTNULL,SsnCHAR(9)NOTNULLDEFAULT'123456789',BdateDATE,ADDRESSVA

mysql - Yii2 : How to write Mysql query to select records from two tables using left join

我有两张table想加入……即营地和城市。我已经为此用PHP编写了查询...但我想要Yii2格式的相同查询...请告诉我如何在yii2中编写此查询...??这是我的查询:SELECTDISTINCTcamps.city_id,camps.state_id,cities.city_namefromcampsLEFTJOINcitiesONcities.state_id=camps.state_idWHEREcamps.state_id=5ANDcamps.status='1'ORDERBYcities.city_nameASC 最佳答案

mysql - 错误 1451 : 1451: Cannot delete or update a parent row: a foreign key constraint fails

我一直在寻找这个错误,偶然发现了几个性质相同的问题,但据我了解,他们似乎关心更新问题。我的源于删除条目。我的table是这样组成的:CREATETABLE`product`(`product_id`mediumint(8)unsignedNOTNULLAUTO_INCREMENTCOMMENT'representsuniqueidentifierforeveryexistingproducts',`code`varchar(20)NOTNULL,`name`varchar(45)NOTNULLCOMMENT'description',`price`decimal(11,4)NOTNUL

MySQL 中 Delete 使用

一、关于MySQL中Delete使用1.1Delete简介Delete是SQL中用于删除表格中记录的命令。通过使用Delete命令,您可以删除表格中的一行或多行记录,并将它们从表格中删除。在执行Delete命令时,务必保证所删除的数据符合表格中已有的约束条件,否则可能会引发不可预知的错误。1.2Delete的语法在MySQL中,Delete命令的基本语法如下:DELETEFROMtable_nameWHEREcondition;其中,table_name表示要删除记录的表格名称,WHERE关键字可以用于筛选出要删除的记录。Delete命令还可以使用特殊的语法实现一些高级功能,比如根据另一个表格

mysql - sql string cat 作为聚合函数 : cat multiple records together

我有一个包含列的表:(project_id,name)这是一个人员列表,每个人都有其所属的项目。如果一个人在两个项目中,则重复。我想提取一个包含以下列的表:(project_id,people)其中people是一个字符串cat,其中包含从事该项目的所有人的姓名。cat必须用逗号分隔,如下所示:12,john12,mark12,dave14,luke成为12,"john,mark,dave"14,"luke" 最佳答案 你可以用一个简单的查询来做到这一点SELECTproject_id,GROUP_CONCAT(name)aspeo

php - Codeigniter Active Record HAVING/WHERE db.field = db.field

谁能告诉我,这是否可以通过事件记录来实现?如何实现?$this->db->select('*');$this->db->from('table1');$this->db->join('table2','table1.id=table2.fi_id','left');$this->db->having('table1.second_id','table2.fi_second_id',false);$query=$this->db->get();问题在于,'table2.fi_second_id'始终被视为字符串-而不是数据库字段。也用'where'试过这个-这是同样的问题。谢谢

mysql - 级联删除,如 ON DELETE CASCADE 用于 MySQL 中的一次性操作

是否有某种神奇的SQL语句可以删除一行及其所有依赖项(由外键约束链接)WITHOUT更改表以添加ONDELETECASCADE或手动删除每个依赖行?我在幻想诸如DELETEFROM`table_a`WHERE`id`=1ONDELETECASCADE;但我似乎无法在文档@http://dev.mysql.com/doc/refman/5.5/en/delete.html中找到任何与此相关的内容我不想ALTER表来更改一次性操作的约束,然后使用另一个ALTER恢复它我不想为每个包含到table_a的外键的表执行类似DELETEFROM`table_b`WHERE`a_id`=1;的操作将

php - 如何知道 DELETE 查询是否真的删除了一行,使用 PDO

我正在使用PDO语句将DELETE查询传递给mysql。我想知道,查询是否真的删除了一行?我尝试使用$stmt->execute()的返回值functiondelete(){$stmt=$this->db->prepare("DELETEFROMusersWHEREid=:id");$stmt->bindValue(':id',$_POST[id]);var_dump($stmt->execute());}但是这始终给出true,即使没有行被删除。即使我没有发布任何值(value),甚至一次又一次地发布相同的值(value),这也是正确的。可能是因为查询成功并删除了0行,所以$stmt

php - Laravel Eloquent : How to select not attached records in many to many relationship?

我在用户和书籍之间建立了多对多关系。如何选择所有不属于特定用户的书籍?简单但丑陋的方法是加载所有书籍,加载所有附属于用户的书籍并比较集合。但必须有一种优雅的方式,我就是想不通。可以使用查询生成器和一些连接来完成,但是如何使用Eloquent来实现呢? 最佳答案 您可以为此使用whereDoesntHave():$userId=1;$books=Book::whereDoesntHave('users',function($q)use($userId){$q->where('user_id',$userId);})->get();此方

php - 在具有多个 where 子句的 Active Record 中使用 find()

我想在ActiveRecord查询之后将(使用括号)分成3组。第一组将从第一个“Where”子句到最后一个“orWhere”。第二个和第三个将使用“andWhere”。请给我一些建议,告诉我如何使用方括号来分隔所有3个部分。$query=Book::find()->where('book_nameLIKE:book_name',array(':book_name'=>'%'.$book_name.'%'))->orWhere('book_categoryLIKE:book_category',array(':book_category'=>'%'.$category.'%'))->or