几行代码创建属于你自己的SQL数据库

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介:

创建数据库有多重方法,如可以使用企业管理器创建数据库,也可以使用向导创建数据库。上面两种方法操作都很简单,但却有一个很大的缺点就是他很难大规模重复。换句话说,如果你创建一个准备重新分布到世界各地的数据库,对于一个没有经验的用户来说,应付SQL企业管理器并建立数据库并不是一件容易的事。于是为了解决我们上面所说的难题,用T-SQL语句创建数据库的方法变应运而生。

  在讲语法之前我先给大家介绍下什么是数据库文件。数据库文件说简单点就是存储我们所需要的数据库的数据,或者事务日志。就好比文件夹是为了存储文件一样。

  在SQL Sever中有如下三种类型的数据库文件:

数据库文件类型

描述

主数据库文件

        是所有数据库的起点。这些文件不仅包含数据库用户收集的信息,还包含了数据库中所有其他文件的有关信息。每个数据库都有一个主数据库文件。主数据库文件的扩展名默认并推荐使用.mdf

辅数据库文件

        顾名思义它其实是那些你增加到数据库中的其他任何数据库文件。增加它们可以用来为数据库增大容量。不是所有的数据库都有辅数据库文件,但是如果想要你的数据库文件延伸到多个物理磁盘上,就需要有辅数据库文件。它的扩展名默认使用.ndf

日志文件

        用来保存数据库的事务日志。每个数据库至少有一个日志文件。日志文件的扩展名使用.ldf

  那接下来让我们认识Create Database语句的语法:

CREATE DATABASE <database_name>
      On [primary]
      [<filespec> [,…n]  ]
      [,<filegroup> [,…n]  ]
[LOG ON {<filespec> [,…n] }  ]
[FOR LOAD |  FOR  ATTCH  ]

  上面几句就是创建数据库最基本的语法,很简单吧。但是里面有些选项还是需要我们慢慢讲来的。

  其中的两个选项<filespec>和<filegroup>是什么意思呢?简单的说他们分别代表了创建一个文件和一个文件组所需要的信息,可能很难懂吧,不用着急我们看下面它们两个的语法。

<filespec>::=
                   (   [NAME=logical_file_name,]
                        FILENAME='os_file_name'
                        [,SIZE=size]
                        [,MAXSIZE={max_size | UNLIMITED}]
                        [,FILEGROWTH=growth_increment])  [,…n]
       <filegroupspec>::=
                        FILEGROUP filegroup_name <filespec>  [,…n]

  在SIZE、MAXSIZE、FILEGROWTH中如果大小的单位是兆字节(MB),则该单位可以省略,也就是说兆字节是缺省单位。但其它的表示单位不可省略。

  没晕吧(偷笑),没关系我们接着来看个例子。在下面的例子里,你可以建立一个数据库Test、一个数据库文件Test_Data和一个日志文件Test_Log:

  Create Database Test

         On primary

         (      name=’Test_Data’,

                 Filename=’c:\mssql17\data\Test_Data.mdf’,

                Size=10[MB],

                Maxsize=50[MB],

                Filegrowth=5[MB]   )

         LOG ON

         (      name=’Test_Log’,

                Filename=’c:\mssql17\data\Test_Log.ldf’,

                Size=5[MB],

                Maxsize=25[MB],

                Filegrowth=10%    )

          GO

  在SQL 2000中的查询分析器中执行后,你会看到一下的结果:

  CREATE DATABASE 进程正在磁盘 'Test_Data' 上分配 10.00 MB 的空间。

  CREATE DATABASE 进程正在磁盘 'Test_Log' 上分配 5.00 MB 的空间。

  上面代码括号中的部分即为<filespec>部分,是对创建的数据库的说明。怎么样,变的很简单了吧。









====================================分割线================================



最新内容请见作者的GitHub页:http://qaseven.github.io/

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
7天前
|
SQL Oracle 数据库
使用访问指导(SQL Access Advisor)优化数据库业务负载
本文介绍了Oracle的SQL访问指导(SQL Access Advisor)的应用场景及其使用方法。访问指导通过分析给定的工作负载,提供索引、物化视图和分区等方面的优化建议,帮助DBA提升数据库性能。具体步骤包括创建访问指导任务、创建工作负载、连接工作负载至访问指导、设置任务参数、运行访问指导、查看和应用优化建议。访问指导不仅针对单条SQL语句,还能综合考虑多条SQL语句的优化效果,为DBA提供全面的决策支持。
28 11
|
21天前
|
SQL 关系型数据库 MySQL
MySQL导入.sql文件后数据库乱码问题
本文分析了导入.sql文件后数据库备注出现乱码的原因,包括字符集不匹配、备注内容编码问题及MySQL版本或配置问题,并提供了详细的解决步骤,如检查和统一字符集设置、修改客户端连接方式、检查MySQL配置等,确保导入过程顺利。
|
20天前
|
SQL 监控 安全
SQL Servers审核提高数据库安全性
SQL Server审核是一种追踪和审查SQL Server上所有活动的机制,旨在检测潜在威胁和漏洞,监控服务器设置的更改。审核日志记录安全问题和数据泄露的详细信息,帮助管理员追踪数据库中的特定活动,确保数据安全和合规性。SQL Server审核分为服务器级和数据库级,涵盖登录、配置变更和数据操作等事件。审核工具如EventLog Analyzer提供实时监控和即时告警,帮助快速响应安全事件。
|
1月前
|
SQL 关系型数据库 MySQL
体验使用DAS实现数据库SQL优化,完成任务可得羊羔绒加厚坐垫!
本实验介绍如何通过数据库自治服务DAS对RDS MySQL高可用实例进行SQL优化,包含购买RDS实例并创建数据库、数据导入、生成并优化慢SQL、执行优化后的SQL语句等实验步骤。完成任务,即可领取羊羔绒加厚坐垫,限量500个,先到先得。
151 12
|
21小时前
|
SQL Java 数据库连接
JDBC编程安装———通过代码操控数据库
本文,教你从0开始学习JBCD,包括驱动包的下载安装调试设置,以及java是如何通过JBDC实现对数据库的操作,以及代码的分析,超级详细
|
27天前
|
SQL 存储 BI
gbase 8a 数据库 SQL合并类优化——不同数据统计周期合并为一条SQL语句
gbase 8a 数据库 SQL合并类优化——不同数据统计周期合并为一条SQL语句
|
27天前
|
SQL 数据库
gbase 8a 数据库 SQL优化案例-关联顺序优化
gbase 8a 数据库 SQL优化案例-关联顺序优化
|
27天前
|
JSON JavaScript 关系型数据库
node.js连接GBase 8a 数据库 并进行查询代码示例
node.js连接GBase 8a 数据库 并进行查询代码示例
|
1月前
|
SQL Java 数据库连接
canal-starter 监听解析 storeValue 不一样,同样的sql 一个在mybatis执行 一个在数据库操作,导致解析不出正确对象
canal-starter 监听解析 storeValue 不一样,同样的sql 一个在mybatis执行 一个在数据库操作,导致解析不出正确对象
|
SQL Oracle 关系型数据库
本机不安装Oracle客户端,使用PL/SQL Developer连接远程数据库
本机不安装Oracle客户端,使用PL/SQL Developer连接远程数据库
249 0