对数据进行增删改查: 这里着重掌握查询的各种条件

1)插入数据(增加数据):将元组插入到指定的表中。

WPF sql server 增删改查_数据

//插入单条记录
insert into  表名(字段名1,字段名2,....)values (值a1,值a2, .....);
//插入多条数据
insert into  表名(字段名1,字段名2,....)values (值a1,值a2, .....), (值b1,值b2, .....),..... ;
//插入子查询的结果,注意这里是没有values的
insert into  表名1(字段名1,字段名2,....)
                                        select  字段名1,字段名2,....  from  表名2;
//插入固定的某些数据
insert  into  表名  set  字段名1=值1,字段名2=值2, ..... ;
//字段可以不用取全部的字段,部分字段也可以哦
insert into  表名(字段名1,字段名2,....)values (值a1,值a2, .....);

备注:如果是插入字段是全部子段的话,可以省略字段部分

insert into 表名 values(); ..........

例如:

WPF sql server 增删改查_php_02


WPF sql server 增删改查_数据库_03

1)删除数据:

delete from 表名 [where条件] [order排序] [limit限定];

备注:

3,order排序子句和limit限定子句,应用中通常不需要。

3.1 order排序子句用于设定删除数据的先后顺序。

3.2 limit限定子句用于限定在设定的顺序情况下删除指定的某些行。

扩展:(了解,不需要掌握也可以)

类似删除语句truncate:

truncate [table] 表名;用于直接删除整个表(结构)并重新创建该表。

1,删除整个表(数据和结构都没有了)

2,重新创建该表(全新表)。

3,跟delete 语句不带where条件,有什么区别?

主要影响的是类似:auto_increment这种类型的字段值:

truncate结果会重新计算,delete还能继续增长。

例题:

WPF sql server 增删改查_字段名_04


WPF sql server 增删改查_数据库_05


1)修改数据:

update 表名 set 字段名1=值表达式1,字段名2=值表达式2,....[where条件] [order排序] [limit限定];

备注:

1, where条件子句,在应用中,同样几乎都必须有,否则很可能就失去意义,类似delete
2,order排序子句通常不需要,用于将要更新的数据指定更新的顺序。
3,limit限定子句通常不需要,用于将要更新的数据的指定顺序去更新部分(局部)数据,比如:前500行。

扩展:复制表

复制表方法1:
create table tab2 like tab1; //复制结构了
insert into tab2 select * from tab1;    //复制数据,这种方法可以比较完整。
复制表方法2:
create table tab2 select * from tab1; //同时复制结构和数据,这种方法可能会丢一些结构信息,比如:索引,约束,自增长属性

例题:

WPF sql server 增删改查_字段名_06


WPF sql server 增删改查_数据库_07


1)查询数据:

select [all | distinct] 字段或表达式列表 [from子句] [where子句] [group by子句] [having子句] [order by子句] [limit子句];

注意:这里对表或者字段可以起别名,

语法: AS 别名 或者 空格 + 别名

WPF sql server 增删改查_字段名_08



[all | distinct]

用于设定所select出来的数据是否允许出现重复行(完全相同的数据行)

all:允许出现——默认不写就是All(允许的)。

distinct:不允许出现——就是所谓的“消除重复行”。



from子句

就是指定数据的来源,其实就是“表”,可以是一个表名,也可以是多个表——多表查询了。

where子句
一个概念:where子句,相当于php或js中的if条件语句:其最终结果就是布尔值(true/false)
1)where中可用的运算符:

算术运算符: +  -  *  /   %
    比较运算符: >   >=   <    <=   =(等于)   <>(不等于)   
    ==(等于,mysql扩展),!=(不等于,mysql扩展)
    逻辑运算符: and(与)  or(或)   not(非)

2)空值的判断方式:

判断为null:   XX  is  null
判断为非空:   XX  is  not  null

WPF sql server 增删改查_数据库_09

3)between语法:

XX  between  值1  and  值2;
    含义:字段XX的值在值1和值2之间(含),相当于:XX >=值1 and XX<=值2;

WPF sql server 增删改查_WPF sql server 增删改查_10

4)in语法:

XX  in (值1,值2,.......);
    含义:XX等于其中所列出的任何一个值都算成立,相当于:
    XX = 值1  or XX = 值2  or  XX = 值2 
    注意:其中的值1通常是“直接值”,但也可以是后面要学习的“查询结果值”

WPF sql server 增删改查_数据库_11


5)like语法(模糊查找):

语法形式: XX like  ‘要查找字符’;
    说明:
    1,like语法(模糊查找)用于对字符类型的字段进行字符匹配查找
    2,要查找的字符中,有2个特殊含义的字符:
    2.1:  %   其含义是:代表任意个数的任意字符
    2.2:  _   其含义是:代表1个的任意字符
    2.3:这里的字符,都是指现实中可见的一个“符号”,而不是字节。
    3,实际应用中的模糊查找,通常都是这样:like ‘%关键字%’;

WPF sql server 增删改查_数据_12


WPF sql server 增删改查_WPF sql server 增删改查_13


5)布尔值的判断方式:

WPF sql server 增删改查_字段名_14