--使用master数据库
use master

--创建数据库文件
create database 数据库名字
on

  name=, --逻辑名称
  filename= .ndf, --数据文件物理路径名称
  size=, --文件初始大小
  maxsize= , --文件最大的大小
  filegrowth= --自动增长

--创建数据库日志文件
log on

  name=, --逻辑名称
  filename= .ldf, --日志文件物理路径名称
  size=, --文件初始大小
  maxsize= , --文件最大的大小
  filegrowth= --自动增长

go

--修改数据库的名称
alter database 数据库名称
modify name = 新名称

--给数据库添加一个数据文件
alter database testdb
add file

  name=, --逻辑名称
  filename= .ndf, --数据文件物理路径名称
  size=, --文件初始大小
  maxsize= , --文件最大的大小
  filegrowth= --自动增长

go

--给数据库添加一个日志文件
alter database testdb
add log file

  name=, --逻辑名称
  filename= .ldf, --日志文件物理路径名称
  size=, --文件初始大小
  maxsize= , --文件最大的大小
  filegrowth= --自动增长

go

--删除数据文件或日志文件
alter database testdb
remove file 数据文件逻辑名称
go

alter database testdb
remove file 日志文件逻辑名称
go

--修改数据文件或日志文件
alter database testdb
modify file

  name=, --逻辑名称
  filename= .ndf, --数据文件物理路径名称
  size=, --文件初始大小
  maxsize= , --文件最大的大小
  filegrowth= --自动增长

go
modify file

  name=, --逻辑名称
  filename= .ldf, --日志文件物理路径名称
  size=, --文件初始大小
  maxsize= , --文件最大的大小
  filegrowth= --自动增长

go

--分离数据库(执行存储过程)
exec sp_detach_db 数据库名字
go

--附加数据库(执行存储过程)
exec sp_attach_db @dbname=, --附加的逻辑名称
@filename1=, --数据文件物理路径名称
@filename2= --日志文件物理路径名称
go

--删除数据库
use master
go

drop database 数据库名字
go

--数据类型

种类:
数字数据类型:int,bigint,smallint,tinyint,decimal,mumeric,float,real,money,smallmoney,bit

字符数据类型:char,varchar,nchar,nvarchar,ntext text

日期和时间:datetime,smalldatetime,date,time,datetime2,datetimeoffsef

二进制数据类型:binary,varbinary,image

其他数据类型:uniqueidentifier,xml,timestamp,sql_variant

整型:
bigint(取值范围在(-2^63次方)到(2^63次方-1))、存储8个字节。(不常用)
int(取值范围在(-2^31次方)到(2^31次方-1))、存储4个字节。
smallint(取值范围在(-2^15次方)到2^15次方-1)、存储2个字节。
tinyint(取值范围在0到255)、存储1字节。

浮点类型:
float(存储取决与n的值)
real(存储4个字节)

字符类型:
char 类型是固定长度
varchar 类型是可变长度

日期类型:
datetime(取值范围在 1753年1月1日到9999年12月31日)、精确度3.33毫秒。
smalldatetime(取值范围在 1900年1月1日到2079年6月6日)、精确度1分钟。

其他类型:

a)用于存储大型非Unicode字符、Unicode字符及二进制数据的固定长度数据类型和可变长度数据类型:
ntext:类型长度是可变的Unicode,最大长度为2^30次方-1个字符,存储大小是所输入字符个数的两倍。
text:服务器代码页中长度可变的非Unicode数据,最大长度为2^31次方-1个字符,当服务器代码页使用双字节字符时,存储仍是2,147,483,647 字节。根据字符串,存储大小可能小于2,147,483,647 个字节。
image:长度可变的二进制数据,从0到2^31次方-1个字节。

b)用来存储Unicode字符数据集的字符数据类型(nchar 长度固定,nvarchar 长度可变)。
nchar[(n)]:n个字符的固定长度的Unicode字符数据,n值必须在1到4000之间(含)。存储大小为两倍n字节。
nvarchar[(n|max)]:可变长度Unicode字符数据,n值咋1到4000之间(含),max指示最大存储大小为2^31次方-1字节。
存储大小是所输入字符个数的两倍+2个字节,所输入数据的长度可以为0个字符。

c)用来存储二进制数据的固定长度或可变长度的Binary数据类型。
binary[(n)]:长度为n字节的固定长度二进制数据,其中n是从1到8,000的值。存储大小为n字节。
varbinary[(n|max)]:可变长度二进制数据。n可以取从1到8,000的值。max指示最大的存储大小为2^31字节-1字节。存储大小为所输入数据的实际长度+2个字节。所输入数据的长度可以是0字节。

创建数据表:

--先使用新创建的数据库,然后再创建表
use 数据库名
go

--创建数据表
create table 数据表名
(
--表里的字段的定义
--语法:字段名 数据类型 [约束]
--约束可加可不加,加一个约束可以,加多个约束也可以
)
go

--创建数据表添加约束
create table 数据表名
(
--identity标识列约束:自动增长,只能在整形的列上添加该约束
--primary key主键约束:不能为空且值不能重复
--unique唯一约束:值唯一不能重复,但可以为空
--not null非空约束:值不能为空
--check检查约束:可以设置检查条件
--default默认约束:可以设置默认值
)
go

--修改表
alter table 表名

--添加列
alter table 表名
add 列名 数据类型 列的特征

--删除表
drop table 表名

--删除列
alter table 表名
drop column 列名

--修改用户名
alter table 表名
alter column 列名

--添加检查约束
alter table 表名
add constraint 约束名 约束表达式

--删除一个约束
alter table 表名
drop constraint 约束名

约束类型:

主键约束(primary key constraint):主键列数据唯一,并且不为空,简称pk。
唯一约束(unique constraint):保证该列不允许出现重复值,简称UQ。
检查约束(check constrait):限制列中允许的取值以及多个列之间的关系,简称CK。
默认约束(default constraint):设置某列的默认值,简称DF。
外健约束(foreign key constraint):用于在两个表之间建立关系,需要指定主从表,简称FK。

添加约束语法:
alter table 表名
add constraint 约束名 约束类型 具体的约束说明

数据操纵语言(DML):
按照指定的组合、条件表达式或排序检索已存在的数据库中数据,或对已经存在的数据库表进行元组的插入、删除、修改等操作。
命令:
select 字段名 from 表名
where 当下条件

insert into 表名(字段名)
values(值1、值2、值....)

update 表名 set 字段名=值
where 当下条件

delete from 表名
where 当下条件

数据定义语言(DDL)
创建、修改或删除数据库中各种对象,包括表、视图、索引等。
命令:
create table , create view ,create index、alter table , drop table , drop view , drop index

数据控制语言(DCL)
用来授予或收回访问数据库的某种特权、控制数据访问的发生时间及效果、对数据库进行监视。
命令:
grant、revoke

事务控制语言(TCL)
用来操作事务提交或回滚操作的语句。
命令:
commit、rollback

逻辑运算符:
and 逻辑语 (如果两个布尔表达式都为true,那么就为true)。
not 逻辑非 (对任何其他布尔运算符的值取反)。
or 逻辑或 (如果两个布尔表达式中的一个为true,那么就为true)

比较运算符
between (如果操作输在某个范围之内,那么就为true)。
in (如果操作数等于表达式列表中的一个,那么就为true)。
like (如果操作数与一种模式相匹配,那么就为true)。

通配符:
% (包含零个或更多字符的任意字符串)。
_(下划线) (任何单个字符)。

添加数据操作:
插入数据:
1)insert into 表名(字段1、字段n...)
values(值1、值2、值....)

2)insert into 表名
select 字段 from 新表名

直接创建没创建的表:
3)select 字段 into 未创建过的新表名 form 表名

4)insert into 表名
values (值1),(值2),(值3)

5)insert into 表名
select 值1 union 值2 union 值3

修改数据操作:
updade 表名 set 字段名 (不带条件)
updade 表名 set 字段名1、字段名2 where 当下条件 (带条件)

删除数据操作:
delete from 表名 (不带条件)
delete from 表名 where 当下条件 (带条件)

删除表里的所有数据:
truncate table 表名

查询数据操作:
--查询所有行所有列
select * from 表名

--查询部分行部分列
select 字段1,字段2,字段n from 表名

--查询部分行所有列
select * from 表名
where 当下条件

--查询部分行部分列
select 字段1,字段2,字段n from 表名
where 当下条件

--指定列查询,并给每一列设置一个列名(相当于取一个别名)
第一种方式:
select 别名1=字段名1,别名2=字段名2,别名n=字段名n from 表名

第二种方式:
select 字段名1 as 别名1,字段名2 as 别名2,字段名n as 别名n from 表名

group by分组查询:
第一种方式:
select 字段名1 from 表名 group by 字段名1

第二种方式:
select 字段名1 from 表名
where 当下条件
group by 字段名1

第三种方法:
select 字段名1 from 表名
group by 字段名1
having count(*)范围

第四种方法:
select 字段名1 from 表名
where 当下条件
group by 字段名1
having count(*)范围

order by查询后排序:
第一种方法(降序):
select * from 表名
order by 字段名 desc

第二种方法(升序):
select * from 表名
order by 字段名 asc(asc不写,默认的也是升序)

第三种方法(按多个不同的类型分别排序):
select * from 表名
order by 字段名1 desc(降序),字段名2 desc(降序)

top取前几条数据:
第一种方法(比如取前5条):
select top 5 * from 表名

第二种方法(用10%):
select top 10 percent * from 表名

使用“+”符号进行多列合并并查询

注:

   1、可能有忽略了一些,但基本上很齐全。

  2、本博文为原创,是个人积累的笔记。

sql sever数据库常用的执行语句的更多相关文章

  1. 关于Java连接SQL Sever数据库

    1.前提条件 需要: 1>本机上装有SQL Sever数据库(2005.2008或者更高版本) 2>eclipse或者myeclipse开发环境 3>jar文件(名为sql_jdbc ...

  2. C#常见控件与SQL Sever数据库交互

    C#常见控件与SQL Sever数据库交互 下拉框(ComboBox)与数据库绑定 首先,我们采用DataSet作为临时的数据库,这样会比较好 那么,我们先创建两个成员(对象) string sqlc ...

  3. 数据库操作----找了MySQL和SQL Sever两个的基础语句

    这是MySQL的基本操作: 1 登入数据库:mysql -uroot -p+密码 (SQL Sever登入: osql -U 用户名 -P 密码) 显示已存在的数据库:show databases; ...

  4. 如何把本机Sql Sever数据库转移到虚拟主机sql数据库

    不少站长的网站都是asp+access的网站  因为操作access数据库的网站非常简单,甚至你对数据库不懂都可以 但如果是mssql数据库的网站,有些新手朋友就不知道该怎么弄了  在这里给大家做个简 ...

  5. C#窗体程序与sql sever 数据库链接

    一.所用工具 Visual Studio 2017和SQL Server Management Studio 2012 二.连接 打开SQL Server Management Studio 2012 ...

  6. SQL Server数据库常用的T-SQL命令

    1. 查看数据库的版本 select @@version 2.查看数据库所在机器操作系统参数 exec master..xp_msver 3. 查看数据库启动的参数 sp_configure 4.查看 ...

  7. 通过sql 向数据库插入多行语句

    我们知道通过insert into 表名(列名) values(值)是向表中插入一条语句,可是当我们需要向数据库插入多条语句时,应该怎么做呢? 可以通过如下格式的sql 语句来实现一次向数据库插入多行 ...

  8. SQL Server数据库常用函数

    好久没学习新知识了.今天学了下sql的一些常用语句.人还是需要不断学习进步的 否则只能停滞不前. 先从最简单的一句开始说起吧. select *from 表名 这里*的含义 表示了表的各字段,以逗号隔 ...

  9. 3-1创建Sql Sever数据库登录名

    登录名:连接Sql Sever 服务器 数据库用户名: Sql Sever 的使用者 每个用来登录Sql Sever 的账户都是一个用户. 同一个数据库可以拥有多个用户,每一个用户也同时可以访问多个数 ...

随机推荐

  1. Java多线程编程实战指南(核心篇)读书笔记(一)

    (尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/76422930冷血之心的博客) 博主准备恶补一番Java高并发编程相 ...

  2. Unity3D 屏幕空间雪场景Shader渲染

    笔者介绍:姜雪伟,IT公司技术合伙人,IT高级讲师,CSDN社区专家,特邀编辑,畅销书作者,已出版书籍:<手把手教你架构3D游戏引擎>电子工业出版社和<Unity3D实战核心技术详解 ...

  3. 机器人操作系统(ROS)在线实训平台学习实验指南

    机器人操作系统(ROS)在线学习指南       在高校开设ROS相关课程已经积累了一年多的经验,由于自动化类专业在课程安排中不同于计算机相关专业,通常没有Linux相关的课程基础,直接上手ROS较为 ...

  4. mysql时间与字符串的互转

    将时间转换为字符串select date_format(now(), '%Y%m%d%H%i%s'), now(); 将字符串转换为时间select str_to_date('201901131111 ...

  5. 每天一个linux命令:【转载】cat命令

    cat命令的用途是连接文件或标准输入并打印.这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用. 1.命令格式: cat [选项] [文件] ...

  6. Java并发--进程与线程由来

    下面是本文的目录大纲: 一.操作系统中为什么会出现进程? 二.为什么会出现线程? 三.多线程并发 一.操作系统中为什么会出现进程? 说起进程的由来,我们需要从操作系统的发展历史谈起. 也许在今天,我们 ...

  7. 快速学习MD5的方法

    MD5加密的Java实现 在各种应用系统中,如果需要设置账户,那么就会涉及到存储用户账户信息的问题,为了保证所存储账户信息的安全,通常会采用MD5加密的方式来,进行存储.首先,简单得介绍一下,什么是M ...

  8. PHP和JS页面跳转和刷新总结

    PHP 页面跳转: // 只是跳转,所以一定要用die();或者exit;终止下一步操作; header('location:index.php'); exit; // 等待3秒,跳转并刷新 head ...

  9. Scrapy源码研究前戏

    一.Twisted的使用 在 Twisted 中,有一种特殊的对象用于实现事件循环.这个对象叫做 reactor.可以把反应器(reactor)想象为 Twisted 程序的中枢神经.除了分发事件循环 ...

  10. rem自适应原理

    rem自适应原理 rem是根据html的font-size大小来变化,正是基于这个出发,我们可以在每一个设备下根据设备的宽度设置对应的html字号,从而实现了自适应布局.更多介绍请看这篇文章:rem是 ...