SQLServer 学习笔记之超详细基础SQL语句 Part 1
Sqlserver 学习笔记
by:授客 QQ:1033553122
1创建数据库
格式:
CREATE DATABASE database_name
ON PRIMARY(在组文件组中指定文件)
(
name = ’数据库文件逻辑名’(在创建数据库后执行的T-SQL语句中引用文件的名称),
fileName = ’数据库文件物理文件名’(含有具体位置,即具体路径(即存储位置)),
size = 文件初始大小,
maxsize = 文件可以增长到的最大大小(可以为:unlimited),
fileGrowth = 文件的增长增量
)
示例:
--建立名为stud的数据库
CREATE DATABASE stud
ON PRIMARY
(
name = 'stud',
fileName = 'E:\数据库\stud.mdf',
size = 50MB,
maxsize = 100MB,
fileGrowth = 10%
)
2增加数据库文件容量(文件初始大小
格式:
ALTER DATABASE database_name
MODIFY FILE(这里是指修改文件属性)
(
name = file_name(这里使用的是逻辑名称),
size = newsize(这里的值只能比原来的大)
)
示例:
--修改数据库stud容量的大小[只能比原来大,就是说只能增大]
ALTER DATABASE stud
MODIFY FILE
(
name = 'stud',
size = 51MB
)
3减小数据库容量
格式:
DBCC SHRINKDATABASE(’database_name’,收缩比)
示例:
--收缩数据库stud的容量,收缩比为1
DBCC SHRINKDATABASE('stud', 1)
4更改数据库名称(文件逻辑名是不会因此改变的)
格式:
EXEC SP_RENAMEDB ‘oldname’,’newname’
示例:
--把数据库stud名称改为student
EXEC SP_RENAMEDB 'stud', 'student'
5删除数据库
格式:
DROP DATABASE database_name
示例:
--删除以上数据库student[注意:数据库名没有用''号]
DROP DATABASE student
6创建表
示例:
--在数据库student中建立一张stud_TABLE[注意先在可视化界面中选定数据库student]
CREATE TABLE stud_TABLE
(
学号 INT PRIMARY KEY IDENTITY,
名称 CHAR(6) NOT NULL,
专业方向 VARCHAR(10) NOT NULL,
系部代码 CHAR(2) NOT NULL,
备注 VARCHAR(5)
)
以上identity是指把其列为标识。
6查看表信息
格式:
EXEC SP_HELP TABLE_name(表名)
示例:
--查看表stud_table的各种信息
EXEC SP_HELP stud_TABLE
7使用T-SQL语句来修改表结构。
7.1重命名表
格式:
EXEC SP_RENAME ‘old_TABLE_name’, ‘new_TABLE_name’
示例:
--把表stud_table改名为stud_table1
EXEC SP_RENAME 'stud_TABLE', 'stud_table1'
7.2重命名列
格式:EXEC SP_RENAME ‘TABLE name.旧列名’,’新列名’
示例:
--把表stud_table1中的"备注"列改名为"其它"
EXEC SP_RENAME 'stud_table1.备注', '其它'
7.3删除表里面的所有数据
格式:
TRUNCATE TABLE 表名
示例:
TRUNCATE TABLE table1
8创建主键,外键约束
8.1创建主键约束
格式:
ALTER TABLE 表名
ADD CONSTRAINT pk
PRIMARY KEY CLUSTERED(列名)
以上CLUSTERED(列名):选择要设置主键的列名,pk是主键的名称,以下同理
8.2创建外键约束
格式:
ALTER TABLE表名
ADD CONSTRAINT fk
FOREIGN KEY(列名)
REFERENCES 表名(列名)
示例:
--新建表table1
CREATE TABLE table1
(
id INT NOT NULL,
name CHAR(20)
)
--在表中添加数据[右击表\打开表\手动输入]
--删除表table1中的全部数据[不可撤销]
TRUNCATE TABLE table1
--给表table1添加主键约束,选择列为id,把表table2中的id列作为table1的外键约束
CREATE TABLE table2
(
id INT NOT NULL,
name CHAR(20)
)
--为表table1添加主键约束
ALTER TABLE table1
ADD CONSTRAINT pk_key
PRIMARY KEY CLUSTERED(id)
--为表table2添加主键约束[注意两个表中的主键名不能一样]
ALTER TABLE table2
ADD CONSTRAINT pk_key2
PRIMARY KEY CLUSTERED(id)
--为表table1添加外键约束[必须先在被参照表中设置主键才能执行以下语句]
ALTER TABLE table1
ADD CONSTRAINT fk_key
FOREIGN KEY(id) REFERENCES table2(id)
8创建主键,外键约束
8.1创建主键约束
格式:
ALTER
TABLE
表名
ADD
CONSTRAINT pk
PRIMARY
KEY CLUSTERED(列名)
以上CLUSTERED(列名):选择要设置主键的列名,pk是主键的名称,以下同理
8.2创建外键约束
格式:
ALTER TABLE表名
ADD CONSTRAINT fk
FOREIGN KEY(列名)
REFERENCES
表名(列名)
示例:
--新建表table1
CREATE
TABLE table1
(
id INT NOT NULL,
name CHAR(20)
)
--在表中添加数据[右击表\打开表\手动输入]
--删除表table1中的全部数据[不可撤销]
TRUNCATE
TABLE table1
--给表table1添加主键约束,选择列为id,把表table2中的id列作为table1的外键约束
CREATE
TABLE table2
(
id INT NOT NULL,
name CHAR(20)
)
--为表table1添加主键约束
ALTER
TABLE table1
ADD
CONSTRAINT pk_key
PRIMARY
KEY CLUSTERED(id)
--为表table2添加主键约束[注意两个表中的主键名不能一样]
ALTER
TABLE table2
ADD
CONSTRAINT pk_key2
PRIMARY
KEY CLUSTERED(id)
--为表table1添加外键约束[必须先在被参照表中设置主键才能执行以下语句]
ALTER
TABLE table1
ADD
CONSTRAINT fk_key
FOREIGN
KEY(id)
REFERENCES table2(id)
SQLServer 学习笔记之超详细基础SQL语句 Part 1的更多相关文章
- SQLServer 学习笔记之超详细基础SQL语句 Part 3
Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 2------------------- 13. 使用compute对查 ...
- SQLServer 学习笔记之超详细基础SQL语句 Part 12(The End)
Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 11------------------- 现在,我们希望从 " ...
- SQLServer 学习笔记之超详细基础SQL语句 Part 11
Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 10------------------- DECLARE @myavg ...
- SQLServer 学习笔记之超详细基础SQL语句 Part 10
Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 9------------------- 删除约束的语法 ALTER T ...
- SQLServer 学习笔记之超详细基础SQL语句 Part 9
Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 8------------------- 3 范式的概念 第一范式的目标 ...
- SQLServer 学习笔记之超详细基础SQL语句 Part 8
Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 7------------------- --触发器str_trigge ...
- SQLServer 学习笔记之超详细基础SQL语句 Part 7
Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 6------------------- 29 存储过程和触发器 存储过 ...
- SQLServer 学习笔记之超详细基础SQL语句 Part 6
Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 5------------------- 28 聚合函数 --求平均分 ...
- SQLServer 学习笔记之超详细基础SQL语句 Part 5
Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 4------------------- 21使用默认 默认(也称默认值 ...
- SQLServer 学习笔记之超详细基础SQL语句 Part 4
Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 3------------------- 17 带比较运算符的嵌套查询 ...
随机推荐
- vue教程2-08 自定义键盘信息、监听数据变化vm.$watch
vue教程2-08 自定义键盘信息 @keydown.up @keydown.enter @keydown.a/b/c.... 自定义键盘信息: Vue.directive('on').keyCode ...
- FactoryMethod工厂方法模式(创建型模式)
1.工厂方法模式解决的问题 现在有一个抽象的游戏设施建造系统,负责构建一个现代风格和古典风格的房屋和道路. 前提:抽象变化较慢,实现变化较快(不稳定) 整个抽象的游戏设施建造系统相对变化较慢,本例中只 ...
- Attr的visitNewClass()方法解读
在visitNewClass()方法中有如下注释: We are seeing an anonymous class instance creation.In this case, the class ...
- 解决Redisson出现Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'create' threw exception; nested exception is java.lang.ArrayIndexOutOfBoundsException: 0的问题
一.背景 最近项目中使用了redisson的哨兵模式来作为redis操作的客户端,然后一个意外出现了,启动报:Failed to instantiate [org.redisson.api.Redis ...
- javascript实现代码高亮-wangHighLighter.js
1. 引言 (先贴出wangHighLighter.js的github地址:https://github.com/wangfupeng1988/wangHighLighter注意,程序和使用说明的更新 ...
- 两台Mysql数据库数据同步实现
两台Mysql数据库数据同步实现 做开发的时候要做Mysql的数据库同步,两台安装一样的系统,都是FreeBSD5.4,安装了Apache 2.0.55和PHP 4.4.0,Mysql的版本是4.1. ...
- linux上搭建ftp、vsftp, 解决访问ftp超时连接, 解决用户指定访问其根目录,解决ftp主动连接、被动连接的问题
linux上搭建ftp 重要 解决如何搭建ftp 解决用户指定访问其根目录 解决访问ftp超时连接 解决ftp主动连接.被动连接的问题 1.安装ftp ...
- Maven 入门——认识Maven结构
1.settings.xml 元素解读 localRepository 该元素表示本地 Maven 仓库的地址,不设置的话,默认为 ~/.m2/repository pluginGroups 将插件的 ...
- Java转义emoji等特殊符号
写在前面 网上找了很多转emoji等方法,大多有两种方法 更改数据库编码格式为utf8mb4 过滤字符串中的emoji 都不是很优雅 更改数据库编码,势必影响其他数据库 过滤emoj效率比较低 处理E ...
- 【SpringBoot系列3】SpringBoot使用事务和AOP
前言: 因为SpringBoot操作两者实在太简单了,我就放一起来写了. 正文(事务): /** * springboot中运用事务 * 真的超级方便,直接加上注解就ok了,连配置都省了 * @ret ...