SQL sever T-SQL语句

一、创建/删除数据库、表

create database 数据库名     --创建数据库  大小写不限制  --为注释符   可以选中该行点执行  只执行该行命令

drop database 数据库名   --删除数据库  很少使用  

go     --官方说法是:GO只是SQL Server管理器(SSMS)中用来提交T-SQL语句的一个标志。可以理解为一个.sql文件的结束标记,先执行此标记上面的内容,再执行下面的内容。

use 数据库名     --使用该数据库 一下操作都在该数据库内进行

create table 表名

(

  列名  数据类型  primary key,     --创建列  规定数据类型  primary key代表主键

  列名  nvarchar(50),    --长字符串  长度限制为50

  列名  数据类型  not null,   --not null  不能为空

)

查看数据库的表需要先在左侧索引位置刷新,然后数据库名-表-表名,右键-设计,能看到可视化的表视图。

drop table 表名   --删除该表   几乎不用  在数据库里面删除会找不回 所以所谓的“删除”其实是在数据库内单独开辟一片区域,给数据增加一个已删除的属性。

二、增/删/改/查   表

alter table 表名 add 列名 数据类型如decimal(5,1)   --在表里增加一个列 该列的数据类型为5位长度,小数点后1位的decimal数据

alter table 表名 drop column 列名    -- 删除表中的该列

1.增 

insert into 表名 values(值1,值2,值3)      --给表增加一行  括号里的值需要严格按照表的列的顺序写,否则会报错。除数字类型数据,都要加引号。

2.删

delete from 表名        --删除全部数据  一条条的删除

truncate table 表名    --清空表的数据  一次性删除

3.改

update 表名 set  列名 = '值4'   将某一列的数据修改为值4,  会改掉所有行的数据  所有一般配合限制条件使用

4.查

select * from 表名    --查询表中的所有数据

三 、drop、runcate 和 delete 的异同

相同点:truncate和不带where子句的delete、以及drop都会删除表内的数据。

不同:

1. truncate 和 delete 只删除数据不删除表的结构(定义),而drop 语句将删除表的结构。

2.delete 语句是数据库操作语言(dml),这个操作会放到 rollback segment 中,事务提交之后才生效;如果有相应的 trigger,执行的时候将被触发。

truncate、drop 是数据库定义语言(ddl),操作立即生效,原数据不放到 rollback segment 中,不能回滚,操作不触发 trigger。

 3.速度,一般来说: drop> truncate > delete。

4.作用范围:

想删除部分数据行用 delete,需要带上where子句. 回滚段要足够大;

想删除表,用 drop;

想保留表而将所有数据删除,用truncate即可。

原文地址:https://www.cnblogs.com/shenyuyaqing/p/7049420.html