mysql怎么样在after trigger中更新列值

问题描述

因工作需要从sqlserver数据库移植到mysql数据库,原来在sqlserver的aftertrigger中可以用update对当前表更新,而mysql则不能。createtableTest(idbigintnotnullauto_increment,namevarchar(32),levelvarchar(50),primarykey(id));如上表,这里需要获取当前自增的id赋值给另一个列项level,即最终结果是id和level值相同。应该如何实现,请高手帮帮忙!!!

解决方案

解决方案二:
selectLAST_INSERT_ID();

读出来的值赋给level
解决方案三:
是怎么样更新level的值CREATEDEFINER=`root`@`localhost`TRIGGER.`AddTestTrigger`afterINSERTONTestFOREACHROWBEGIN--sqlserver中可以用updateTestsetlevel=inserted.id但mysql不能用update,只能用--setsetNEW.level=某个具体值,而after之后是不能更新表;--这里应该如何更新level的值END;
解决方案四:
谢谢1楼的,关键是读出来的值在trigger中怎么赋值给level,我要的是类似于sqlserver的update操作????

时间: 2024-09-15 13:44:29

mysql怎么样在after trigger中更新列值的相关文章

jQuery学习笔记(4)--Jquery中获取table中某列值的具体思路_jquery

花了一晚上的时间解决了一个看似很容易的问题.今晚做的这个东西中由于要获取某列中的一个ID值.如果是用平常的那种JS传值的方式此问题就不存在,但是由于此次用到的都是jquery插件,包括各种弹出框,用JS传值就得用JS那丑陋的弹出框,所以,你懂得. 网上找了很多方法,用起来都不行,后来想到了jquery中的鼠标事件,可以在鼠标经过table时,获得当前行与列的值.页面如下所示:  具体操作就是点击"删除"按钮,然后调用jquery插件页面,这时候需要获得相应行的"ID"

小弟接着昨天的问题继续提问,如何将DATATABLE中的列值插入数据库表格,请给我VB,NET源代码,谢谢!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

问题描述 小弟的问题还是在昨天的帖子里,谢谢各位帮忙,继续加分!!http://topic.csdn.net/u/20080417/10/2abdc7a7-01de-4ecb-94b7-f7b68a0660b5.html?seed=1439710112[:)]

MYSQL中设列的默认值为Now()

MySQL目前不支持列的Default为函数的形式,如达到你某列的默认值为当前更新日期与时间的功能,你可以使用TIMESTAMP列类型 下面就详细说明TIMESTAMP列类型 TIMESTAMP列类型 TIMESTAMP值可以从1970的某时的开始一直到2037年,精度为一秒,其值作为数字显示. TIMESTAMP值显示尺寸的格式如下表所示: : +---------------+----------------+ | 列类型 | 显示格式 | | TIMESTAMP(14) | YYYYMMD

Mysql中 unique列插入重复值该怎么解决呢_Mysql

当unique列在一个UNIQUE键上插入包含重复值的记录时,我们可以控制MySQL如何处理这种情况:使用IGNORE关键字或者ON DUPLICATE KEY UPDATE子句跳过INSERT.中断操作或者更新旧记录为新值. mysql> create table menus(id tinyint(4) not null auto_increment, -> label varchar(10) null,url varchar(20) null,unique key(id)); Query

正确理解Mysql中的列索引和多列索引_Mysql

Mysql数据库提供两种类型的索引,如果没正确设置,索引的利用效率会大打折扣却完全不知问题出在这. 复制代码 代码如下: CREATE TABLE test (    id         INT NOT NULL,    last_name  CHAR(30) NOT NULL,    first_name CHAR(30) NOT NULL,    PRIMARY KEY (id),    INDEX name (last_name,first_name)); 以上创建的其实是一个多列索引,

mysql查看表中每列信息

问题描述 mysql查看表中每列信息 mysql中如何查看表中每列的属性,比如是varchar(),还是int的? 解决方案 desc 表名......... 解决方案二: desc 表名........ 解决方案三: mysql查看表结构命令,如下: desc 表名; show columns from 表名; describe 表名; show create table 表名 如果回答对您有帮助,请采纳 解决方案四: 打开.......... 解决方案五: desc 表名; show col

如何让textbox中的信息更新到数据库中的列中

问题描述 如何让textbox中的信息更新到数据库中的列中 如何让textbox1和textbox2中的信息更新到数据库中的列中 解决方案 让textbox1和textbox2中的信息更新到数据库中,可以分为两步: (1) 从 textbox 中获取输入的数据,这个我想应该没有什么问题吧: (2)将数据写入数据库指定的列中,这个要看具体用的是什么数据库?个人如果对数据库不熟悉,就找点入门的资料看看. 解决方案二: using (SqlConnection connection = new Sql

php中对用户信息进行更新执行mysql语句时update无法正确更新

问题描述 php中对用户信息进行更新执行mysql语句时update无法正确更新 这是代码 这个更新语句不知道有没有什么问题 第一个是打印出update的执行结果 是true 证明sql语句能运行,但是不知道是否能达到目的 数据库中的结果,没有更新成功,但是用户名变为了0,密码没有更变成功 请阁下帮忙分析指点一下 解决方案 update语字的格式里,多个字段更新是用逗号分隔,不是用AND进行连接. "update userinfo set username='$newusername', pas

datagrid/GridView 控件中的列,添加编辑(删除,更新) 如果直接删除数据库中的记录,更新数据库的记录

问题描述 datagrid/GridView控件中的列,添加编辑(删除,更新)如果直接删除数据库中的记录,更新数据库的记录报错数据源,没有设置deletecommang对象 解决方案 解决方案二:是写在GridView1_RowDeleting事件里面???解决方案三:要不就是在模版列里面CommandName="Delete"如下<ItemTemplate><asp:LinkButtonID="LinkButton3"runat="se