草庐IT

parentID

全部标签

php - 应将相同的自动增量 ID 插入到插入查询中

我需要你们的帮助。我不知道这可能与否。在PHP中,当我将新查询插入数据库时​​,ID值将自动递增。我在该查询中还有一个变量,即parentID。运行查询时,parentID应该等于自动增量ID。我试过mysqli_insert_id($conn);这个函数。获取最后一个ID。添加一个具有该值的值,然后将该值分配给parentID,然后插入到数据库中。但有些时候可能会出现隔离问题。因此,任何一个指南都可以提供一些其他解决方案来避免隔离问题。隔离意味着当我尝试插入时,我从数据库中获得了最后一个ID。现在将该值分配给ParendID变量。然后我尝试插入数据库。假设这可能需要几分钟。在那几分钟

mysql - SQL难题非常接近解决但无法获得parentid

我需要一些关于如何使用以下信息编写SQL查询的帮助/指导:问题是:经理想查看当前陈列室中的所有汽车及其价格,格式如下:[Make][Model]–£[Price]例如“大众高尔夫-3000”。编写一个SQL查询来满足这一点。我似乎无法让parentCarid与汽车表中的ID匹配,这是我最接近实现它的方法。SELECTCar.Makecode,Car.Name,Showroom.PriceFROMCarINNERJOINShowroomONCar.Id=Showroom.CarIDWHEREShowroom.CarId=“2”ORShowroom.CarId=“5”ORShowroom.

MySQL - 防止一行引用自身

我有一个表categories具有以下结构:----------------------------------|id(PK)|name|parentId(FK)|----------------------------------其中parentId可以引用同一表中的一行。我想防止更新一行以使其引用自身(parentId!=id)。我知道我必须使用数据库触发器,但我不知道它应该是什么样子。请问我该怎么做?我知道我可以(也将)在应用程序逻辑中处理这个问题,但我认为仅在应用程序逻辑中处理这类事情不是一个好的做法。我也想防止插入和更新时的循环引用,但我想那是另一个问题。

mysql - 在 MySQL 选择查询中嵌套 if/else

我在为嵌套的mysqlif语句设置正确的语法时遇到了一些麻烦。这是我当前的查询,很好。但是我需要的是父类。这是让我感到困惑的地方。基本上我需要将parentid位添加到我的查询中(用伪代码编写)SELECTp.*,i.`image`,(IF(`limitc1`.`parentid`IN(135,136),`limitc1`.parentid)ELSEIF(`limitc2`.`parentid`IN(135,136),`limitc2`.parentid)ELSEIF(`limitc3`.`parentid`IN(135,136),`limitc3`.parentid)ELSEIF(`

sql - MySQL:获取父子结构的根节点

我有一个类似这样的表:=================|Id|ParentId|=================|1|0|-----+-----------|2|1|-----+-----------|3|0|-----+-----------|4|3|-----+-----------|5|3|-----+-----------|6|0|-----+-----------|7|6|-----+-----------|8|7|-----------------给定一个Id,我需要知道它的根“节点”Id。所以,给定1,返回1给定2,返回1给定3,返回3给出4,返回3给定5,返回3给定

MySQL数据库设计。在 1to1 表中插入行。

将行插入到彼此引用1到1的表中的最佳方法是什么?我的意思是,在MySQL5.5和表InnoDB中,我有一个类似于以下的数据库设计当我们尝试在表1和表2中插入行时,问题就出现了。由于MySQL中没有多表插入,我不能插入一行,因为外键在两个表中都是NOTNULL字段,应该同时插入到两个表中。解决这个问题的最佳方法是什么?我想到了3种可能的解决方案,但我想知道是否有更多的解决方案,或者哪个是最好的以及为什么。将外键字段设置为NULLABLE,在表中插入一行后,插入另一行,然后更新第一行。如上所示,但有一个特殊值,如-1。首先,在一个表中插入相当于NULL的foreignkey=-1但避免将字

mysql - 事务隔离对mysql写操作的影响

我有一个mysqlproc,它执行一次读取和一次更新(在2个不同的表中)。为了确保读取速度快,我将隔离级别更改为读取未提交。脏读是可以的,数据一致性并不重要。但它看起来在读取未提交隔离级别,更新非常缓慢-事实上它影响了我表中的其他写入。我的代码是这样的SETSESSIONTRANSACTIONISOLATIONLEVELREADUNCOMMITTED;SELECTParentIdINTO@ParentIdFROMTableAwhereId=var_ID;UPDATETableBSETCounter=Counter+1whereId=@ParentId;SETSESSIONTRANSAC

MySQL:在自己的触发器中更新表

显然MySQL有一个非常恼人的限制,即无法在为同一表定义的触发器内更新表。我正在使用MySQL5.1版,但出现错误:“无法更新存储函数/触发器中的表,因为它已被调用此函数/触发器的语句使用”。我的是这样的:createtablefolder(idintunsignednotnullauto_incrementPRIMARYKEY,namevarchar(100)notnull,parentIdintunsignednotnull);这是一个分层文件夹结构。文件夹有一个名称,可能还有一个父文件夹(如果没有,则parentId为零)。删除文件夹后,我需要更改其中所有子文件夹的parentI

mysql - 如何在MySQL中设计类别和子类别?

我有一个类别列表以及与每个类别关联的子类别数。假设类别表称为Cat然后我在其中有冷热类别我有另一个名为subcats的表,然后我有以下内容:猫:IDName1Hot2Cold子类别:SubCatIDCATIDName11soup21rice31pizza42salad52fruit我的设计应该考虑性能,您如何评价我的设计?有没有更好的解决方案?(类别只是示例-我有很多类别和子类别。) 最佳答案 您可以将所有内容都放在一张表中,类别。然后有一列用于parentID。如果parentID=0,它是一个主类别,如果它是另一个ID,那么它是

mysql - IF 语句按 Doctrine 2 查询 Symfony 2 的子句排序

我正在尝试创建一个显示所有评论的博客,并且用户将能够在回复之前发布的评论时发表评论notoorder然后在sql查询中,这样它们就会按顺序显示,我一直收到错误。SELECTc.userid,c.comment,c.reply,u.username,c.createdat,c.image,c.usernameasComUserFROMBundle:CommentscLEFTJOINBundle:UsersuWITHc.userid=u.idWHEREc.articleid=1ORDERBY(CASEWHEN(c.parentid=0)THENc.idELSEc.parentidEND)c