MySQL触发器总结以及XML初步学习

来源:互联网 发布:金融大数据案例 编辑:程序博客网 时间:2024/05/16 03:33
 

触发器总结:

1)触发对象:

同一张表或者两张表

2)触发时间:

After

Before

3)触发事件:

Insert:    NEW.字段名

Delete:   OLD.字段名

Update:  NEW .字段名   OLD.字段名

执行步骤:

Mysql>insert into t1 values(5);  //客户端

     //先发送到服务器端,判断,

Mysql>create trigger t1_insert before insert(事件1) on t1 for each row

      Begin

       ……

Set @x=2;                ——(事件2)

        ……

End

After和before针对的是事件1和事件2到底哪个先执行

如果为after则表示事件1先执行

如果为before则表示事件2先执行

针对on关键字后的表执行事件1必须先输入---发送给服务器端去判断

后触发时执行顺序:

Mysql>select @x;

Mysql>insert into t1 values(10);

发送到服务器端,判断---执行insert,后执行(块begin..end)set @x=2;

Mysql>select @x;

NEW.字段名----表示on关键字后的表(t1)中字段

先触发执行步骤:

Mysql>insert into t1 values(15);//客户端写该SQL语句

//先发送到服务器端,判断---(块begin..end)set @x=2,执行insert;

数据类型(整型、浮点、字符串、位(布尔)、文本、时间日期、枚举(字符串对象))

常见sql语句(insert delete update select alter create等)

常见函数(数学、字符串、聚合、时间日期、if()等)

视图、关联(子查询等)

存储过程(流程控制结构、变量(用户自定义、局部变量、系统信息变量)等)

触发器

 

 

 

XML定义:

代表extensible markup language(可扩展的标记语言),xml被设计用来传输或存储数据的,xml是一套定义语言标记的规则。

与HTML有类似之处

特点:

1、  mysql关系型数据库,保存数据使用表格;

2、  xml类似于层次型数据库;

3、  html为了显示内容;

4、  xml标记需要自己去创建,html标记是预定义好的;

5、  xml标记语法严格;

6、  仅仅用来存储数据(与样式无关);

要求:针对没有任何规范(DTD、schema)的情况下

针对没有任何规范(DTD、schema)的情况下

Ø         根元素有且只能有一个;

Ø         标签必须要闭合;

Ø         属性值必须用引号;

Ø         标签名自己指定;

Ø         文档声明前不能有任何输出,包括空格;

DTD(重点)

注意:严格区分大小写;

1、  文件名  *.dtd

2、  规定内容

元素的定义规则;

元素关系的定义规则;

元素可使用的属性;

可使用的实体或符号规则;

     语法:

       <!DOCTYPE 根元素名称   [

          规则声明

          规则声明

        ]>

     规则声明:

u       元素:

<!ELEMENT   元素名称    类型>

l         <!ELEMENT  元素名称  EMPTY>:表示空元素

l         <!ELEMENT  元素名称  ANY>:表示可以出现任何内容,也可以为空;

l         <!ELEMENT  元素名称  (子元素声明列表)>:()表示分组,放置允许出现的子元素,并且严格按照声明顺序来使用;

l         <!ELEMENT  元素名称   (#PCDATA)>:表示可以在该元素的内容里放置文本、CDATA,但是不允许出现 &  < > ' ";

l         CDATA

    <![CDATA[

         文本(任何)

]]>

        总结:DTD声明以 <!DOCTYPE   文档根元素名称  [规范]>

              和xml文档出现在同一个文件里叫做内部DTD文档;

                  DTD规范单独存在于一个文件,外部DTD文档

                *.dtd

                引入

                SYSTEM:私有

         语法:

          <!DOCTYPE 根元素名称  SYSTEM   “地址”>

                PUBLIC:公有

             <?xml  ……    standalone=”yes|no”  ?>

        语法

       <!DOCTYPE 根元素名称  PUBLIC  “”>

 

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
“注册//组织//类型  标签//语言”
 注册:是否由国际标准化组织(ISO)注册;
+:表示是;
       -:表示否;
 组织:组织名称;
 类型:一般是DTD;
 标签:公开文本描述,可以带有版本号
 语言:EN表示英文,ZH表示中文

u       属性:

u       实体: