MySQL使用触发程序
触发程序是与表有关的命名数据库对象,当表上出现特定事件时,将激活该对象。在某些触发程序的用法中,可用于检查插入到表中的值,或对更新涉及的值进行计算。
触发程序与表相关,当对表执行INSERT、DELETE或UPDATE语句时,将激活触发程序。可以将触发程序设置为在执行语句之前或之后激活。例如,可以在从表中删除每一行之前,或在更新了每一行后激活触发程序。
要想创建触发程序或舍弃触发程序,可使用CREATE TRIGGER或DROP TRIGGER语句
下面给出了1个简单的示例,在该示例中,针对INSERT语句,将触发程序和表关联了起来。其作用相当于累加器,能够将插入表中某一列的值加起来。
在下面的语句中,创建了1个表,并为表创建了1个触发程序:
mysql> CREATE TABLE account (acct_num INT, amount DECIMAL(10,2));
mysql> CREATE TRIGGER ins_sum BEFORE INSERT ON account
-> FOR EACH ROW SET @sum = @sum + NEW.amount;
CREATE TRIGGER语句创建了与账户表相关的、名为ins_sum的触发程序。它还包括一些子句,这些子句指定了触发程序激活时间、触发程序事件、以及激活触发程序时作些什么:
· 关键字BEFORE指明了触发程序的动作时间。在本例中,应在将每一行插入表之前激活触发程序。这类允许的其他关键字是AFTER。
· 关键字INSERT指明了激活触发程序的事件。在本例中,INSERT语句将导致触发程序的激活。你也可以为DELETE和UPDATE语句创建触发程序。
· 跟在FOR EACH ROW后面的语句定义了每次激活触发程序时将执行的程序,对于受触发语句影响的每一行执行一次。在本例中,触发的语句是简单的SET语句,负责将插入amount列的值加起来。该语句将列引用为NEW.amount,意思是“将要插入到新行的amount列的值”。
要想使用触发程序,将累加器变量设置为0,执行INSERT语句,然后查看变量的值:
mysql> SET @sum = 0;
mysql> INSERT INTO account VALUES(137,14.98),(141,1937.50),(97,-100.00);
mysql> SELECT @sum AS 'Total amount inserted';
+-----------------------+
| Total amount inserted |
+-----------------------+
| 1852.48  
相关文档:
首先放置好jdbc驱动程序,在 java\jre6\lib\ext\下,java\jdk1.6\jre\lib等地方都放起来,因为不确定在哪里有用···
Class.forName("com.mysql.jdbc.Driver").newInstance();
String url = "jdbc:mysql://localhost/DATABASENAME?user=USERNAME&password=PASSWORD&useUnicode=tru ......
来源:http://www.blogjava.net/Alpha/archive/2007/07/23/131912.html
//主键549830479
alter table tabelname add new_field_id int(5) unsigned default 0 not null auto_increment ,add primary key (new_field_id);
//增加一个新列549830479
alter table t2 add d timestamp;
alter table infos add ......
Mysql常用命令脚本
第一招、mysql服务的启动和停止
net stop mysql
net start mysql
第二招、登陆mysql
语法是 mysql -h主机 -u用户名 -p秘密
例子是 mysql -hlocalhost -uroot -p123456
要确定mysql安装时候勾选了可以远程链接。如果登陆本地计算机,-h可以省略,键入命令mysql -uroot -p, 回车后提示你输入密码, ......
groupadd mysql
新建一个名为mysql的用户组
useradd -g mysql mysql
在mysql用户组下新建一个名为mysql的用户
gunzip 解压下载到的.gz文件
cd mysql-VERSION
进入解压后的目录
CFLAGS="-O3 -mcpu=pentium4" CXX=gcc CXXFLAGS="-O3 -march=pentium4 -felide-constructors -fno-exceptions -fno-rtti" ./configu ......