MSSQL 用SQL语句操作数据

一、SQL分类:
DDL— 数据 定义语言(CREATE,ALTER,DROP,DECLARE)  " j# j; U7 C8 Y; V7 M" q
DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT)  ! |  {4 G4 r$ R7 L9 P1 C0 ^; F

DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK) 4 z1 Y! t$ A) m

二、简单的基本的sql语句语法
选择:select * from 表名 [where 条件范围] 6 i5 Z. r& o# a  x7 _! o
插入:insert [into] 表名[(field1,field2)] values(value1,value2) 3 A) Y+ |9 z: I( O7 I! g) i* |
删除:delete [from] 表名 [where 条件范围] 6 i5 Z. r& o# a  x7 _! o
更新:update 表名 set field1=value1,filed2=value2 [where 条件范围]

三、插入多行数据 

1、语法:SELECT (列名) INTO <表名> FROM <源表名>

        复制表(只复制结构,源表名:a 新表名:b(不存在))
(一):
select * into b from a where 1 <>1 & t" x; |% T! i3 P: y

(二):select top 0 * into b from a
2、语法:
INSERT INTO <表名>(列名) SELECT <列名> FROM <源表>

    拷贝表(拷贝数据,源表名:a 目标表名:b(必须存在)) 
   insert into b(a, b, c) select d,e,f from b; 
f$ ?
3、语法:

  INSERT INTO <表名>(列名)

  SELECT <列名> UNION

  SELECT <列名> UNION

  ......

注意:不能使用default等,因此,这种插入数据的方式不常用


四、使用TRUNCATE删除数据行

  语法: TRUNCATE  TABLE  表名 

  1.表结构、列、约束等不被改动。
  2.不能用于有外键约束引用的表
  3.标识列重新开始编号 

  如:student(子表_FK),Grade(主表_PK)   

     truncate table Grade

  TruncateDelete对比讲解

注意:TRUNCATE  TABLE 不能用于有外键约束引用的表,即主表中的数据,无论外键表中是否有相关数据。

   而DeleteTable不同,必须先删除外键表的相关数据,再删除主表中数据。




 





你可能感兴趣的:(MSSQL 用SQL语句操作数据)