草庐IT

et_update_your_trigger_name

全部标签

mysql - 如何: Find and update all the entries where the value in one column shows up more than once

我有一个包含以下列的表格:subid-资源的idauthorid-作者的id排序-作者在引用中的顺序对于用户可以提交资源并引用多个作者的应用程序。作者可以在他们的投稿中引用主要和次要作者,而且通常会这样做。有一种情况,用户(称他为用户111)提交的所有条目都将自己列为主要作者,实际作者为次要作者。不幸的是,那个人已经离开了这个项目,所以我来解决这个问题(我必须纯粹用sql来做)。我正在尝试弄清楚如何构建一个查询来执行以下操作:查找所有条目subid值在表中出现多次其中至少一个authorid值是111111的排序大于非111的任何用户的排序并更新它们not(111)作者的排序为“0”并

mysql - 我怎么能.... SELECT *, lcase(name) AS name FROM table

我想修改名称列并使其小写,但我还想选择所有其他列。有没有一种方法可以做到这一点而不必写下每一列的名称。我正在尝试做这样的事情:SELECT*,lcase(name)ASnameFROMtable;而不是像这样写出所有的列名:SELECTlcase(name)ASname,zip,address,age,birthday,etcFROMtable;这可能吗? 最佳答案 你不能,但一个选择是使用View:createviewtable_with_lower_nameasselectlcase(name)ASname,zip,addres

Mysql UPDATE 根据多个表选择数据

我写了一个SELECT查询来选择特定的值,基本上它只选择所有3个表中的数据。但是当我尝试更新时,它仍然更新了比应该更新的更多的数据(行)这里是选择SELECTi.id,i.group_id,i.name,u.item,u.value,u.shows,u.nr,u.typeFROMitemsASiINNERJOINitem_groups,item_properties2ASuONitem_groups.id=i.group_idWHEREitem_groups.idp='1140503406'ANDi.id=u.itemANDu.type=1140614900LIMIT30,3000这是

由于已设置的 NOT NULL 字段,MySQL DUPLICATE KEY UPDATE 无法更新

我有一个使用严格模式的MySQL数据库,所以我需要在插入一行时填充所有NOTNULL值。我创建的API仅使用DUPLICATEKEYUPDATE功能来执行插入/更新。如果插入了预期的任何NOTNULL属性,则客户端应用程序会提示。基本示例(id为主键,有两个非空的字段aaa和xxx)INSERTINTOtablename(aaa,xxx,id)VALUES("value","value",1)ONDUPLICATEKEYUPDATEaaa=VALUES(aaa),xxx=VALUES(xxx)到目前为止一切都很好。一旦插入,系统将允许进行更新。尽管如此,仅更新其中一个字段时出现以下错误

mysql - SQL SELECT 后跟 UPDATE

我有Employee表和HR表。员工的地址(地址列)在两个表中都有。我想用Employee表中的地址更新HR表的地址列,对于所有这些记录,只要HR表的地址与同一雇员的Employee表的地址不匹配。employee-id是employee表中的主键和外键在HR表中键入。 最佳答案 您仍然可以在UPDATE语句上执行JOIN。UPDATEHRaINNERJOINEmployeebONa.EmpID=b.ID--relationshipcolumnSETa.address=b.addressWHEREa.addressb.address

mysql - "You have an error in your SQL syntax"

SQL查询在MySQL数据库中工作正常,但是当我在JDBC中使用相同的查询时,我得到:YouhaveanerrorinyourSQLsyntax;checkthemanualthatcorrespondstoyourMySQLserverversionfortherightsyntaxtousenear'FoodsLtdANDclsp_stockexchange=bseGROUPBYCLSP_DATEOFTRADE'atline1MySQL版本为5.0。我的jdbc代码:Class.forName(driver).newInstance();conn=DriverManager.get

MySQL 复制 : struggling with replicate-rewrite-db to change the database name

我有我的主数据库,其中有一个表,产品(稍后会有更多,这只是开发)。操作系统:CentOS6.4我已将其设置为使用此复制的主服务器:在/etc/my.cnf中:server-id=1binlog-do-db=product_databaserelay-log=/var/lib/mysql/mysql-relay-binrelay-log-index=/var/lib/mysql/mysql-relay-bin.indexlog-error=/var/lib/mysql/mysql.errmaster-info-file=/var/lib/mysql/mysql-master.infore

mysql存储过程select和update selected

我正在尝试为mysql编写一个存储过程,基本上,它将选择一个ID,并更新所选ID的操作日期。DELIMITER//CREATEPROCEDUREgetID(INproc_intervaldatedatetime)BEGINDECLARERUserIDBIGINT;SELECTUserIDINTORUserIDFROMTasksWHEREOperationDate但是当我使用这个程序时,如果我发表评论,它会返回UserID但不会更新SELECTRUserID然后,它更新,但没有数据返回。 最佳答案 whenIusethis,proce

mysql - 来自 NDBCLUSTER 的错误 4239 'Trigger with given name already exists'

我们正在运行MySQL集群版本:mysql>SELECTVERSION();+------------------------------+|VERSION()|+------------------------------+|5.6.15-ndb-7.3.4-cluster-gpl|+------------------------------+尝试创建一个表CREATETABLExy(xaVARCHAR(36)NOTNULLDEFAULT'',xbVARCHAR(255)NOTNULL,xcTIMESTAMPNOTNULL,xdVARCHAR(36)DEFAULTNULL,xeVA

MySQL 错误 : Can't update table in stored function/trigger

我正在使用MySQL和引擎InnoDB。我有一个包含4列的SQL表(简化),如您在这张图片中所见:当需求状态变为“完成”时,我希望它的优先级为空,并且所有具有上述优先级的需求都递减。例如,如果第二个需求:“面包”是“完成”,它的优先级将设置为空,我希望“黄油”的优先级为2,“果酱”的优先级为3。我有这个触发器:DELIMITER|CREATETRIGGERmodify_priority_triggerBEFOREUPDATEONyour_tableFOREACHROWbeginifNEW.State='Done'thenupdateyour_tablesetpriority=prior