2.1 T-SQL概述

SQL: Structured Query Language 结构化查询语言,用于操作关系型数据库

T-SQL: Transact-SQL 是ANSI92 SQL的扩展集,对功能进行了补充:如变量说明、流程控制、功能函数等

2.1.1 T-SQL语言主要组成部分

1)DML(数据库操作语言)

用于查询、插入、修改和删除数据库中的数据: select、insert、update、delete等

2)DDL(数据定义语言)

用于在数据库系统中创建数据库、表、视图、索引等:create database、drop database等

3)DCL(数据控制语言)

用来控制存取许可、存取权限等: grant、revoke等

除此之外:还包括变量说明、内部函数等其他命令

2.1.2 对象资源管理器

如果不小心关掉了,在查看中可重新调出来

2.1.3 查询窗口相关

调试:双击代码前面会出现断点,然后点击小三角号,会进去调试状态

2.2 数据库相关概念及数据库命名规则

2.2.1数据库存储结构

物理存储结构

数据库文件在磁盘上的存储形式

主数据文件: *.mdf   存储数据库的结构信息,存储部分或全部的数据,整个数据库只能有一个主数据文件

辅助数据文件:*.ndf   存储主数据文件没有存储的信息;可存在一个或多个,也可以没有

日志文件:*.ldf  记录DML操作;恢复损坏的数据库;整个数据库同样只能有一个日志文件

文件组:类似文件夹,主要是用来管理磁盘空间。分为主文件组Primary与次文件组FG,日志文件不属于任何文件组

逻辑存储结构:

由数据表、视图、索引等各种不同的数据库对象所组成,他们分别用来存储特定信息并支持特定功能

2.2.2数据库命名规则

1)第一个字符必须是字母或“_”、“@”、“#”

2)数据库名称不能是T-SQL的保留字

3)不允许嵌入空格或是其他特殊字符

2.2.3数据库分类

系统数据库:用来管理用户创建数据库的数据库,相当于中央管理机构。

master:记录SQL Server所有系统级别的信息,包括登录账户、系统配置、数据库存放位置、初始化信息等

model:模板数据库,为新创建数据库指定共同的模板

msdb:用来做SQL Server数据库的一些代理作业,以及数据库的备份及还原信息

tempdb:临时数据库,存储临时表和临时存储过程,程序结束后自动消失

resource:特殊的、隐藏的、只读的数据库,包含所有系统对象

用户数据库:用户自己创建的数据库

2.3使用视图创建数据库1

需求:使用管理器创建一个电子商城E_Market数据库,要求如下:(只有一个Primary文件组)

1)数据库的名称为E_Market:包含一个数据文件,初始容量大小为5MB,文件按15%自动增长,最大容量大小为100MB

2)一个日志文件,初始大小为1MB,不启用自动增长,所有文件都放在E:\Project目录下

2.3.1新建数据库

对象资源管理器-->数据库-->右键-->新建数据库

2.3.2新建数据库配置

1)名称:E_Market

2)数据库文件:按照需求配置

数据库大小:最小为3M

配置结束后,点击“确定”按钮,然后在对象资源管理器中选中数据库右键-->刷新,新建的数据库会显示在数据库的界面

数据文件:

2.3.3修改新建数据库属性

1)兼容性

选中E_Market数据库右键-->选择属性-->选项-->兼容级别(高版本的数据库可以兼容低版本的数据库),此处选择默认即可

2)限制访问

multi_user:默认配置,表示数据库在同一时刻允许多个用户同时访问数据库

Single_user:表示一次只允许一个用户访问数据库,系统维护数据库时选择该用户

Restricted_user:表示只有管理员或者特定的人员才可以访问数据库

3)文件组

当前只有一个Primary文件组

4)只读数据库设置

如果数据库设置为只读,那么该数据库写入数据,只能被查询

2.3.4创建数据库时需要指定的属性

1)文件名称、存放位置、分配的初始空间、属于哪个文件组

2)文件增长:可以按百分比或实际大小指定增长速度

3)文件容量设置:可以指定文件增长的最大值或不受限

4)兼容级别:版本号

5)数据库是否只读:默认False

6)限制访问:Multi_User(正常状态)

Single_User(维护操作状态)

Restricted_User(管理员与特定人员使用)

2.4使用视图创建数据库2

需求:使用对象资源管理器创建一个DemoDB,要求如下:

1)数据库的名称为DemoDB:包含一个数据文件,初始容量大小为10MB,文件按10%自动增长,最大容量大小为500MB

2)第二个文件组FG(次文件组),辅助数据文件为FG_DemoDB,初始大小为10MB,不启用自动增长

3)一个日志文件,初始容量大小为5MB,不启用自动增长,所有文件都放在E:\Project目录下

2.4.1新建数据库

对象资源管理器-->数据库-->右键-->新建数据库

2.4.2新建数据库配置

1)名称:DemoDB

2)数据库文件:按照需求配置

首先新建次文件组FG

主文件组后面默认选项框对号表示:如果不选择文件组,默认添加文件均放在主文件组

然后再点击常规,配置新建数据库

配置完成后,点击确定,完成数据库的创建

2.5使用SQL语句创建数据库1

创建一个数据文件:E_Market_data.mdf和一个日志文件:E_Market_log.ldf的数据库

注意:括号内语句每一行要以英文逗号结尾,最后语句不加

USE master   --指向当前使用的数据库

GO  --批处理标志

--删除数据库

IF EXISTS(SELECT * FROM sysdatabases WHERE name = 'E_Market')

DROP DATABASE E_Market

GO

CREATE DATABASE E_Market  --创建E_Market数据库

ON PRIMARY  --主文件组

(

NAME = 'E_Market_data',   --主文件逻辑文件名

FILENAME = 'E:\Project\E_Market_data.mdf',  --主文件物理文件名

SIZE = 5MB,  --主文件初始大小

MAXSIZE = 100MB,  --主文件增长最大值

FILEGROWTH = 15% --主文件的增长率

)

LOG ON --日志文件

(

NAME = 'E_Market_log',  --日志文件逻辑文件名

FILENAME = 'E:\Project\E_Market_log.ldf',  --日志物理文件名

SIZE = 5MB,  --日志初始文件大小

FILEGROWTH = 0  --未启用自动增长

)

GO

创建完成后,刷新数据库就会看到新建的数据库了

使用sysdatabases表查询刚刚创建的数据库:

SELECT * FROM SYSDATABASES;

2.6使用SQL语句创建数据库2

创建多个数据文件和多个日志文件

USE master

GO

CREATE DATABASE E_Market

ON PRIMARY --主文件组

(

NAME = 'E_Market_data',

FILENAME = 'E:\Project\E_Market_data.mdf',

SIZE = 10MB,

FILEGROWTH = 10%,

MAXSIZE = 500MB

),  --第一个文件组结束

FILEGROUP FG  --创建了一次次文件组FG, 第二个文件组(次文件组)

(

NAME = 'FG_E_Market_data',

FILENAME = 'E:\Project\FG_E_Market_data.ndf',

SIZE = 10MB,

FILEGROWTH = 0

)

--日志文件不属于任何文件组

LOG ON

(

NAME = 'E_Market_log',

FILENAME = 'E:\Project\E_Market_log.ldf',

SIZE = 5MB,

FILEGROWTH = 0

),

--日志2的具体描述

(

NAME = 'E_Market_log1',

FILENAME = 'E:\Project\E_Market_log1.ldf',

SIZE = 5MB,

FILEGROWTH = 0

)

GO

执行完以上新建数据库的sql后,会在相应的路径下创建相应的数据文件

2.7使用SQL语句创建数据库3

向现有数据库中添加文件组和数据文件

2.7.1视图下添加文件组和数据文件

新建文件组:选中相应的数据库,点击右键属性,选择文件组,然后点击添加,新建FG2文件组

新建数据文件

选中相应的数据库,点击右键属性,选择文件,点击添加,新建文件E_Market_data3,文件名不用填,系统会默认指定文件名

2.7.2使用sql语句添加文件组和数据文件

USE E_Market

GO

--添加文件组

ALTER DATABASE E_Market ADD FILEGROUP FG1

GO

--为新建的文件组FG1添加数据文件

ALTER DATABASE E_Market ADD FILE

(

NAME = 'FG1_E_Market_data',

FILENAME = 'E:\Project\FG1_E_Market_data.ndf',

SIZE = 5MB,

FILEGROWTH = 10%

) TO FILEGROUP FG1

GO

--将FG1文件组设为默认文件组

ALTER DATABASE E_Market

MODIFY FILEGROUP FG1 DEFAULT

2.8删除数据库

2.8.1视图下删除数据库

选中要删除的数据库,右键删除,删除数据库后,会连带删除主数据文件+次数据文件+日志文件

注意选择关闭现有连接

2.8.2 SQL删除数据库

USE master

GO

--删除数据库

IF EXISTS(SELECT * FROM sysdatabases WHERE name = 'E_Market')

DROP DATABASE E_Market

GO

SQL Server2008数据库管理 (第二部分)相关推荐

  1. SQL Server2008数据库用户管理 (第三部分)

    3.1创建SQL Server数据库登录名 打开数据库管理器->安全性->登录名->右键选择新建登录名 1)Windows身份验证 选中Windows身份验证,点击搜索,在下面的提示 ...

  2. Sql Server2008安装图解

    Sql Server2008安装图解 软件下载地址:http://pan.baidu.com/s/1bnjg3H9 1.我的安装版本: 解压目录: 2.双击setup.exe: 点击左面面板的 安装选 ...

  3. ASP.NET(基于C#)及Sql Server2008网页项目学习总结

    使用总结 1.前语 2.DataList(或FormView.GridView--中Button绑定)(可用于管理员界面.用户删除.编辑已发布内容的事件) 3.局部刷新的使用(基于ScriptMana ...

  4. 安装sql server2008踩坑记录

    文章目录 前言 一.第一个坑:net framework3.5框架安装不上 二.第二个坑:计算机名与用户名一样,安装失败 总结 前言 本文记录本人安装sql server2008的辛酸血泪史. 本来是 ...

  5. SQL Server2008附加数据库之后显示为只读

    SQL Server2008附加数据库之后显示为只读时解决方法 啰嗦的话就不多说了,直入主题吧! 方案一: 碰到这中情况一般是使用的sa账户登录的,只要改为Windows身份验证,再附加数据库即可搞定 ...

  6. SQL SERVER2008 镜像

      两台服务器,没有域环境,如何配置SQL SERVER2008镜像呢? 详细过程如下: SQL 2008配置有证书镜像的步聚共有四步: 1.      配置出站连接:创建主秘钥.证书和端点,备份证书 ...

  7. SQL Server2008(一)简介

    数据库系统是由数据库及其管理软件组成的系统,大家常把与数据库有关的硬件和软件系统称为数据库系统. SQL Server2008关系数据库的规范化:关系数据库中的每一个关系都要满足一定的规范.根据满足规 ...

  8. SQL Server2008附加数据库之后显示为只读时解决方法

    SQL Server2008附加数据库之后显示为只读时解决方法 啰嗦的话就不多说了,直入主题吧! 方案一: 碰到这中情况一般是使用的sa账户登录的,只要改为Windows身份验证,再附加数据库即可搞定 ...

  9. 服务器2012r2系统安装数据库,数据库图文详解Windows Server2012 R2中安装SQL Server2008...

    入手一台Windows Server2012云服务器,搭建一下服务环境,选用SQL Server2008 直奔主题,下好安装镜像后,直接双击 选择运行程序而不获取帮助 如图: 进入安装中心后选择 安装 ...

最新文章

  1. 从产品经理向人工智能产品经理进阶 | 机器学习必备知识
  2. HiveSQL运行优化参数配置
  3. excel表格大学计算机知识,大学计算机基础excel电子表格
  4. Leetcode 1559二维网格图中探测环 技巧DFS|剪枝
  5. 【Docker学习笔记(五)】小结
  6. MATLAB高斯平顶化,一种高斯光束变换为平顶光束整形透镜的粒子群设计方法与流程...
  7. ACM解题总结——HihoCoder1200 (微软笔试题)
  8. Android实现抖音无水印视频
  9. HDU:2055 An easy problem
  10. Excel批量设置数字转化成“以文本形式存储的数字”
  11. 一个程序员是如何蜕变为投资人的?
  12. JavaScript基础随笔
  13. 自动驾驶--高精地图技术
  14. 1分钟让别人喜欢你(二)
  15. Python数据分析6——数据规整
  16. 一个大学生从月薪3500到700万和他的情感经历
  17. 案例-站狼云品智美站助力必信空调中国制造领先品牌
  18. pyqt5做了一个无线网连接器,与君共勉
  19. 【附源码】计算机毕业设计JAVA罪犯信息管理系统
  20. open_nsfw: 雅虎基于Caffe的成人图片识别模型

热门文章

  1. linux内核那些事之物理内存模型之FLATMEM(1)
  2. 保存blob为本地文件
  3. Vue2+WebPack2使用css/sass+postcss的autoprefixer
  4. 中文select 加载完成后再排序
  5. 开源Blog系统-欧式风格家具网站源码v1.5.4
  6. WPSmushProv3.7.0图片上传压缩插件-WordPress图像优化插件
  7. 百度SEO快克工具包 1.5.0 官方版
  8. LeetCode160 | Intersection-of-two-linked-lists
  9. oracle 高效函数,Oracle分组函数之高效的ROLLUP
  10. rust 睡袋怎么用_婴儿晚上用睡袋好吗?带过娃的告诉你正确答案!