插入、更新与删除数据

插入数据:

为表的所有字段插入数据

INSERT语句中不指定具体的字段名

INSERT     into  表名         values(值1,值2,。。。,值n)

Insert语句中列出所有字段

Insert       into  表名(属性1,属性2,。。。,属性n)

Values(值1,值2,。。。,值n)

为表的指定字段插入数据

Insert       into           表名(属性1,属性2,。。。,属性n)

Values      (值1,值2,。。。,值n);

同时插入多条记录:

Insert       into           表名[(属性列表)]

Values      (取值列表1),(取值列表2)。。。(取值列表n);

将查询结果插入到表中:

Insert       into  表名1(属性列表1)   select       属性列表2      from                   表名2      where表名2

更新数据:

Update              表名

                   Set   属性名1=取值1,属性名2=取值2,。。。            where       条件表达式

删除数据:

Delete      from                   表名         [where     条件表达式]

2.MySQL运算符

算术运算符:

DIV                     x1DIVx2                             除法运算,返回商

MOD                           MOD(x1,x2)               返回余数

比较运算符:

<>或!=                                                             不等于

<=>                                                                     判断是否等于

Is NULL              x1 is NULL                               判断是否为空

In      x1 in(值1,值2)                                          判断x1的取值是否在其中一个

Like           x1 like 表达式                                     判断x1是否与表达式匹配

REGEXP             x1 REGEXP 正则表达式          判断x1是否与正则表达式匹配

逻辑运算符:

&&或者and                       与                                                                      ||或者or                            或

!或者not                         非                                                                      XOR                                       异或

位运算符:

&               按位与                       |                 按位或                       ~       按位取反

^                按位异或                   <<              按位左移                   >>     按位右移

3.存储过程和函数

创建存储过程:

Create      procedure         sp_name([proc_parameter[,…]]) [characteristic …] routine_body

Sp_name参数是存储过程的名称

Proc_parameter表示存储过程的参数列表

Characteristic参数指定存储过程的特性

Routine_body参数是SQL代码的内容,可以用begin…end来标志SQL代码的开始和结束

Pro-parameter 中每个参数有3部分组成,这3部分分布是输入输出类型、参数名称和参数类型,如:[IN|OUT |INOUT]param_name type               param_name是存储过程的参数名称

Characteristic参数有多个值:

LANGUAGE      SQL;

[NOT] DETERMINISTIC

{CONTAIAN SQL|NO SQL|READS SQL DATA|MODIDIES SQL DATA}

SQL SECURITY{DEFINER|INVOKER}

COMMENT ‘string’

创建存储函数:

CREATE    FUNVTION      p_name([func_parameter[,…]])       RETURNS type[characteristic…]routine_body

func_parameter可以由多个参数组成,其中每个参数由参数名称和参数类型组成 param_name      type

变量的使用

定义变量:

DECLARE          var_name[,…]           type          [DEFAULT          value]

为变量赋值:

SET   var_name=expr[,var_name=expr]…

SELECT     col_name[,…]  INFO         var_name[,…]  FROM    table_name     WEHRE    condition;

定义条件和处理程序

用DECLARE关键字

光标的使用

声明光标:

DECLARE cusor_name     CURSOR   FOR  select_statement;

Select_statement参数表示Select语句的内容

打开光标:

OPEN        cusor_name;

使用光标:

FETCH      cur_employee         INTO         var_name,emp_age

关闭光标:

CLOSE       cusor_name

流程控制的使用:

IF语句

CASE语句

LOOP语句

LEAVE语句

ITERATE语句

REPEAT语句

WHILE语句

调用存储过程:

CALL语句

查看存储过程和函数:

SHOW       STATUS语句查看存储过程和函数的形态

SHOW       CREATE语句查看存储过程和函数的定义

从information_schema。Routines表中查看存储过程和函数的信息

修改存储过程和函数:

ALTER       PROCEDURE语句修改存储过程

ALTER       FUNCTION语句修改存储函数

删除存储过程和存储函数:

DROP        PROCEDURE语句删除存储过程

DROP        FUNCTION语句删除存储函数