SQL扩展之T-SQL中的数据操纵语言

   数据操纵语言在DML包括向表中插入记录,修改记录,删除记录的语句

   1,插入语句

  Inset 语句用于向数据表或者视图中插入由VALUES 指定的各列值的行,其语法格式如下:

INSERT [ TOP ( expression ) [ PERCENT ] ] 
      [ INTO ] 
 {   table_name                                     /*表名*/
      | view_name                               	/*视图名*/
      | rowset_function_limited  /*可OPENQUERY 或OPENROWSET 函数*/
      [WITH (<table_hint_limited>[…n])] /*指定表提示,可省略*/
  }
  {
       [ ( column_list ) ] 			/*列名表*/
       { VALUES ( ( { DEFAULT | NULL | expression } [ ,...n ] ) [ ,...n ] )
	       /*指定列值的value子句*/
            | derived_table    		/*结果集*/
            | execute_statement      	/*有效的EXECTUTE语句*/
            | DEFAULT VALUES 	/*强制新行包含为每个列定义的默认值*/
         } 
  } 
    说明:

●  table_name:被操作的表名。
●  view_name:视图名。
●  column_list:列名表,包含了新插入数据行的各列的名称。如果只给出表的部分列插入数据时,需要用column_list指出这些列。
●  VALUES子句:包含各列需要插入的数据,数据的顺序要与列的顺序相对应。若省略colume_list,则VALUES子句给出每一列(除IDENTITY属性和timestamp类型以外的列)的值。VALUES子句中的值有三种:
DEFAULT:指定为该列的默认值,这要求定义表时必须指定该列的默认值。
 NULL:指定该列为空值。
 expression:可以是一个常量、变量或一个表达式,其值的数据类型要与列的数据类型一致。注意表达式中不能有SELECT及EXECUTE语句。

     例如:向clients表中插入一个客户记录(1,‘晓帅歌’, ‘女’,‘春熙路1号’)。

USE test
INSERT INTO clients values(1,'晓帅歌','女','春熙路1号')
    由于掺入的数据包各列值并按表中各列的顺序列出这些值,所以省略列明表(colunm_list).

    2,修改语句

   UPDATE 语句用于修改数据表或视图中特定记录或列的数据,其语法格式如下:

 UPDATE { table_name | view_name }
 SET column_name = {expression | DEFAULT | NULL } [,…n]
 [WHERE <search_condition>]
     说明:

     该语句的功能是,将table_name 指定的表或者view_name 指定的视图中满足<search_condition>条件的记录中由SET指定的各列的列值设置为SET指定的新值,如果不实用WHERE子句,则更新所有记录的指定列值。

     例如,在clients表中将cid 为1 的客户端的address修改为“上海路88号”:

USE test
  UPDATE clients
  SET address='上海路88号'
  WHERE cid=1
    3,删除语句

    DELETE 语句用于删除表或者视图中的每一行或者多行记录,其语法格式如下:

 DELETE [FROM] { table_name | view_name }
 [WHERE <search_condition>]
     该语句的功能是,从table_name 指定的表或者view_name指定的视图中删除满足<search_condition>条件的行, 若省略该条件,则删除所有行。

例如,删除id为“2015”的学生的记录:

USE stsc
  DELETE student
  WHERE stno='2015'

你可能感兴趣的:(t-sql,SQL扩展,T-SQL中的数据操作语言)