1 数据的维护:
  1.1 添加数据
  1.2 删除数据
  1.3 修改数据
  1.4 查询数据

1.1 添加数据(符合约束):有关系的表中,先添加子表的数据
   insert into tbname[(colname,colname,...)]
 values(v1,v2...)

  注意:列名的个数必须和值的个数相等,即使是null 也必须显式的写出
     列名顺序必须和值的顺序相同

1.1.1  为所有列添加数据 
insert into emp(emp_no,e_name,e_gender,e_age,e_hit,e_address,dept_no)
values(1,'tom',0,29,'2014-04-16','天津',1)


1.1.2  默认值的插入在values的默认对应位置插入关键字default
1.1.3 自增列的插入(自增列的列名不能写且values不能给)
insert into t_c(t_id,c_id,tc_time)
values(1,2,'2010-06-23')

   如果为所有的列插入值,所有的列名可以省略不写                  insert into tbname values()

  1.1.4 部分列插入数据(部分列名写出,必须包含所有非空的列,标识列除外)
       原因:可以为空的列,默认为null  
                            默认值约束default  
                            唯一列写出列名

  1.1.5 一次性的插入多行数据
insert into tbname [(colname)] values(v1,v2...),(v1,v2...),(v1,v2...)
insert into t_c values(2,1,'2010-10-04'),(3,3,'2010-10-04'),(1,2,'2010-10-04')

注意:在MySQL中 自增列的列名可以写出,赋值为null。
INSERT INTO change_c(c_c_id,stu_id,tc_id)VALUES(NULL,1,3)


1.2 删除数据 
  delete from tbname [where条件]
delete from emp where emp_no = 1
delete from emp where e_address like '%陕西%'

截断表
truncate table tbname

TRUNCATE语句删除表中的所有行,而不记录单个行删除操作。
TRUNCATE TABLE 在功能上与没有 WHERE 子句的 DELETE 语句相同;但是,TRUNCATE TABLE 速度更快,使用的系统资源和事务日志资源更少

删除表中所有的记录
 a 执行结果不同,执行是否成功
 b 不记录日志,数据无法恢复删除速度快



1.3 修改数据
update tbname set colname=值,colname=值,
[where 子句]条件
    值数据:
    常量值 表达式  函数的值
update emp set e_age=26 where emp_no=1
update emp set e_address='陕西西安' where e_name like '%'
 
update emp set e_age=30,e_gender=0 where
e_address in('陕西西安','北京')
 
update emp set e_address='陕西西安'
where e_hit is not null

SQL
 1 DDL 数据定义语言create alter drop truncate
 2 DML 数据操纵语言insert delete update
 3 DCL 数据控制语言grant revoke commit rollback
 4 DQL 数据查询语言select

SQL:Structured Query Language结构化查询语言,由ISO组织发布了标准的SQL文本
SQL特征:面向集合的操作,可以通过一条语句从一个数据表或多个数据表中查询多条记录;SQL只描述了用户的需求,与过程无关,如何完成任务由数据库管理系统负责解决
SQL集成了DDL语言和DML语言,包括了查询、操做、定义和控制等方面的功能
T-SQL:Transact-SQL,Microsoft开发的一种SQL语言,不仅提供了对SQL标准的支持,而且对标准SQL进行了一系列扩展,提供了一套过程化的开发工具