SQL Server系统中数据库相关概念

在SQLServer数据库系统中分为2大类,系统数据库和用户数据库。

SQLServer安装后系统会自动生成4个系统数据库,他们是Master,Model,Msdb,Tempdb,系统数据库至少有2个文件组成,一个是扩展名为.mdf的数据库文件,一个是扩展名为.ldf的事务日志文件,他们存储在SQLServer默认安装路径下的MSSQL子目录下的Data文件夹中。

系统数据库

Master数据库

DBMS中最重要的系统数据库,一旦遭到破坏可能引起整个系统崩溃。保存了所有的登录信息,系统设置信息,初始化信息,和其他数据库相关信息。

通常只有SA,System Administrator系统管理员才有权利访问和使用Master数据库。

Model数据库

用户创建数据库和系统创建Tempdb数据库使用的模板数据库,创建新数据库时,系统将Model数据库内容自动复制到新的数据库中,作为新数据库的基础,以此来简化数据库以及其他对象的创建和设置操作,如果对Model数据库进行修改(比如数据库大小,排序规则,恢复模式,其他数据库项目),则修改将会应用于以后创建的所有数据库。

Msdb数据库

代理服务数据库,用来安排警报和作业,以及记录操作员信息的数据库。

Tempdb数据库

一个临时数据库,他为系统在运行过程中所产生的所有临时表,临时存储过程以及其他临时操作对象提供存储空间,作为全局资源,Tempdb数据库没有专门的权限限制,如果用户与SQLServer断开,创建的临时表对象也会被删除,SQLServer2008实例每次启动都会重新创建Tempdb数据库。

用户数据库

就是具有数据库创建权限的SQLServer用户在系统中根据需要创建的个人数据库,下面详细介绍。

在SSMS中创建“销售管理”数据库

需求分析

根据公司需求情况,分析得到以下信息:

公司目前所销售的产品大约有10000种,以后每年希望增加1000种,每种产品信息基本需要1kb空间进行保存,所以目前大约需要10MB空间保存产品信息,每年会再增加1MB。

公司目前有固定客户500个,每个买家客户信息需要500B,每年增加和失去的客户数量基本持平,所以目前大约需要0.25MB空间保存客户信息,基本没有增长。

公司每年发生的交易次数大约10000笔,每笔交易信息需要500B,所以公司每年需要大约5MB来保存销售信息。

由此可见,目前需要创建的数据库初始化大小应该是(10+0.25+5)MB,每年增加(1+5)MB。

创建数据库

右键数据库,选项新建数据库》输入数据库名称“销售管理”

数据库逻辑文件名称,默认和数据库名一样,事务日志文件的逻辑文件名称会自动加一个_log的扩展名

数据库命名

逻辑名称,是DBMS内部使用的名称,普通用户不会使用到该名称。通常情况下,系统会自动生成逻辑名称,数据库文件的逻辑名称是“数据库名.mdf”,日志文件的逻辑名称是“数据库名_log.ldf”

设置数据库大小和增长策略

修改数据库初始大小为16MB,日志文件大小2MB,这里还可以限制数据库文件的大小,不过可以默认不限制(磁盘有多大就存储多少数据)

设置增长策略,点击自动增长按钮,选择按MB增长,设置为6MB。

添加次要数据库文件 (不是必须)

添加数据文件,如果创建数据库数据量很大,可以同时创建2个数据库文件,一个作为主文件,一个作为次要文件。

一个数据库可以拥有多个数据库文件,但是只有一个主要数据库文件(.mdf),可以有多个次要数据库文件(.ndf),使用次要数据库文件的主要好处是,当数据存储于多个物理文件时,可以拥有更快的访问速度和更高的处理效率。

如果数据库中数据大小已经超过操作系统对文件大小的上限要求,也需要被动使用次要数据库文件来分担数据库的存储任务。

设置文件组

新建以及设置文件组,数据库文件通常保存在primary文件组中,如果需要将新建的数据库文件保存到一个新的文件组,单击文件组项目,选择新建。

修改数据库路径

数据库路径,在默认情况,数据和事务日志被放在同一个驱动器上的同一个路径下,这是为了处理单磁系统采用的方法,但是在生产环境中,这可能不是最佳的方法,建议将数据和日志文件放在不同的磁盘上。

数据库建立完成

最后单击确定,数据库建立完成。

数据库文件保存地址

可以到设置的目录,查看刚才创建的数据库文件

SQL Serever学习4相关推荐

  1. SQL Serever学习7——数据表2

    修改数据表的属性 保存数据表的修改的时候,总会弹出阻止修改的警告. 解决方法2种: 1.可以使用T-sql语句强行修改 2.工具>选项>设计器>表设计器和数据库设计器>阻止保存 ...

  2. SQL Server 学习系列之五

    SQL Server 学习系列之五 SQL Server 学习系列之一(薪酬方案+基础) SQL Server 学习系列之二(日期格式问题) SQL Server 学习系列之三(SQL 关键字) SQ ...

  3. sql 2005学习笔记1

    sql 2005学习笔记1 最近开始看赵松涛的<SQL 2005数据奥秘>,发现是本十分不错的独特的SQL 2005的书,讲了很多深入的东西,现学习之并每次笔记要点之. 1 SQL 200 ...

  4. 【Python】14种方式,34个案例:对比SQL,学习Pandas操作

    公众号:尤而小屋 作者:Peter 编辑:Peter 本文主题:对比SQL,学习Pandas操作! 在SQL中查询数据的时候我们所有各种操作,主要是通过select.where.group by等多个 ...

  5. 【SQL Server 学习系列】-- sql 随机生成中文名字

    [SQL Server 学习系列]-- sql 随机生成中文名字 原文:[SQL Server 学习系列]-- sql 随机生成中文名字 1 DECLARE @fName TABLE(Id INT I ...

  6. SQL注入学习part07:(SQL注入语句总结)

    写在前面: 此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) SQL注入学习part07 整数型和字符型 整数型 字符型 ...

  7. SQL注入学习part06:(结合sqli-libs学习:51-61关)

    写在前面: 此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) SQL注入学习part06 第五十一关 第五十二关 第五十三 ...

  8. SQL注入学习part05:(结合sqli-libs学习:41-50关)

    写在前面: 此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) SQL注入学习part05 第四十一关 第四十二关 第四十三 ...

  9. SQL注入学习part04:(结合sqli-libs学习:31-40关)

    写在前面: 此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) SQL注入学习part04 第三十一关 隐藏关卡 第三十二关 ...

最新文章

  1. wxWidgets:wxSingleInstanceChecker类用法
  2. 反思对新项目如何快速上手
  3. oracle多条sql语句常量,如何在Oracle中一次执行多条sql语句
  4. Python可变与不可变类型及垃圾回收机制
  5. 前端学习(2823):sitemap配置
  6. 腾讯车联发布TAI3.0:三步实现汽车智能进化,2个月快速上车
  7. mongoshake同步mongodb数据到kafka
  8. 【redis】三种redis数据导出导入方式
  9. android 5.0设备 外接键盘 输入中文
  10. happen before
  11. 抢占式实例在小博无线的应用
  12. 使用虾青素提升高密度脂蛋白,降低甘油三酯
  13. linux在线ipa签名,利用Cydia Impactor免越狱安装未签名APP教程 | ZMMOO
  14. 求阶乘问题c语言编程,求阶乘问题
  15. 如何设计安全可靠的开放接口---之AppId、AppSecret
  16. mysql 使用if函数实现多条件动态查询
  17. grep怎样匹配tab键
  18. eclipse+jsp+servlet+sqlserver+tomcat实现增删改查的一个小项目(超详细教程)
  19. Seaborn使用regplot函数可视化散点图并添加回归曲线、移除默认的回归曲线置信区间(Scatter plot with regression line、Remove CI band)
  20. 预产期计算器在线计算生男生女计算机,【测算生男生女】预产期计算器生男生女 帮你早知道宝宝的性别...

热门文章

  1. java forkjoinpool_Java并发——Fork/Join框架与ForkJoinPool
  2. mysql无法输入数据库_关于mysql数据库无法录入中文的问题
  3. Vue3 + cli4 配置路由
  4. Javascript选择排序
  5. c# mysql 汉字乱码_在C#和MySQL中存取中文字符时避免乱码的方法
  6. 怎么把php写入文件格式,如何将一个PHP数组有格式的写入文件中
  7. mysql的槽_Mysql槽点 - MySQL及其它开源数据库 - ITPUB论坛-中国专业的IT技术社区...
  8. 手机wps怎么设置语言_怎么使用手机对路由器进行设置
  9. unity天空盒渐变_Unity 制作天空盒
  10. 【Linux】du命令用法详解