sql创建数据库实例?sql数据库培训
大家好,今天来为大家解答sql创建数据库实例这个问题的一些问题点,包括sql数据库培训也一样很多人还不知道,因此呢,今天就来为大家分析分析,现在让我们一起来看看吧!如果解决了您的问题,还望您关注下本站哦,谢谢~
如何通过SQL脚本创建数据库
用SQL语句创建数据库的语法:
第一步:先要判断当前数据库系统中是否存在你要新建的数据库,如果是就要删除(MASTER系统数据库中的sysdatabases表中存放了所有数据库清单);
if exists(select* from sysdatabases where name='databasesName')
drop databases databasesName
第二步:创建新库;
create databases databasesName
ON
(
name='databases_data',--表示数据库的逻辑名
filename='路径/databases_data.mdf',--表示数据库的物理文件名
size=XXmb,--表示数据库的初始大小
maxsize=xxmb,--表示数据库的最大大小
filegrowth=xx--表示文件的增长速度(可以是百分数也可以是好多mb
)
log on
(
name='databases_log,--表示数据库的逻辑名
filename='路径/databases_log.ldf,--表示数据库的物理文件名
size=XXmb,--表示数据库的初始大小
maxsize=xxmb,--表示数据库的最大大小
filegrowth=xx--表示文件的增长速度(可以是百分数也可以是好多mb
)
实例:
use master
go
if exists(select* from sysdatabases where name='student')
drop database student
go
create database student
on
(
name='student_data',
filename='student_data.mdf',
size=10mb,
maxsize=100mb,
filegrowth=1mb
)
log on
(
name='student_log,
filename='student_log.ldf',
size=10mb,
maxsize=100mb,
filegrowth=1mb
)
通过SQL语句使用什么命令创建数据库
CREATE DATABASE为SQl语句,用于创建数据库。
语法
CREATE DATABASEdatabase_name
[ ON
[< filespec> [,...n] ]
[,< filegroup> [,...n] ]
]
[ LOG ON{< filespec> [,...n]} ]
[ COLLATEcollation_name]
[ FOR LOAD| FOR ATTACH ]
< filespec>::=
[ PRIMARY ]
([ NAME=logical_file_name,]
FILENAME='os_file_name'
[,SIZE=size]
[,MAXSIZE={max_size| UNLIMITED} ]
[,FILEGROWTH=growth_increment])[,...n]
< filegroup>::=
FILEGROUPfilegroup_name< filespec> [,...n]
参数
database_name
新数据库的名称。数据库名称在服务器中必须唯一,并且符合标识符的规则。database_name最多可以包含 128个字符,除非没有为日志指定逻辑名。如果没有指定日志文件的逻辑名,则 Microsoft® SQL Server™会通过向database_name追加后缀来生成逻辑名。该操作要求database_name在 123个字符之内,以便生成的日志文件逻辑名少于 128个字符。
ON
指定显式定义用来存储数据库数据部分的磁盘文件(数据文件)。该关键字后跟以逗号分隔的<filespec>项列表,<filespec>项用以定义主文件组的数据文件。主文件组的文件列表后可跟以逗号分隔的<filegroup>项列表(可选),<filegroup>项用以定义用户文件组及其文件。
n
占位符,表示可以为新数据库指定多个文件。
LOG ON
指定显式定义用来存储数据库日志的磁盘文件(日志文件)。该关键字后跟以逗号分隔的<filespec>项列表,<filespec>项用以定义日志文件。如果没有指定 LOG ON,将自动创建一个日志文件,该文件使用系统生成的名称,大小为数据库中所有数据文件总大小的 25%。
FOR LOAD
支持该子句是为了与早期版本的 Microsoft SQL Server兼容。数据库在打开dbo use only数据库选项的情况下创建,并且将其状态设置为正在装载。SQL Server 7.0版中不需要该子句,因为 RESTORE语句可以作为还原操作的一部分重新创建数据库。
FOR ATTACH
指定从现有的一组操作系统文件中附加数据库。必须有指定第一个主文件的<filespec>条目。至于其它<filespec>条目,只需要与第一次创建数据库或上一次附加数据库时路径不同的文件的那些条目。必须为这些文件指定<filespec>条目。
附加的数据库必须使用与 SQL Server相同的代码页和排序次序创建。应使用sp_attach_db系统存储过程,而不要直接使用 CREATE DATABASE FOR ATTACH。只有必须指定 16个以上的<filespec>项目时,才需要使用 CREATE DATABASE FOR ATTACH。
如果将数据库附加到的服务器不是该数据库从中分离的服务器,并且启用了分离的数据库以进行复制,则应该运行sp_removedbreplication从数据库删除复制。
collation_name
指定数据库的默认排序规则。排序规则名称既可以是 Windows排序规则名称,也可以是 SQL排序规则名称。如果没有指定排序规则,则将 SQL Server实例的默认排序规则指派为数据库的排序规则。
有关 Windows和 SQL排序规则名称的更多信息,请参见COLLATE。
PRIMARY
指定关联的<filespec>列表定义主文件。主文件组包含所有数据库系统表。还包含所有未指派给用户文件组的对象。主文件组的第一个<filespec>条目成为主文件,该文件包含数据库的逻辑起点及其系统表。一个数据库只能有一个主文件。如果没有指定 PRIMARY,那么 CREATE DATABASE语句中列出的第一个文件将成为主文件。
NAME
为由<filespec>定义的文件指定逻辑名称。如果指定了 FOR ATTACH,则不需要指定 NAME参数。
logical_file_name
用来在创建数据库后执行的 Transact-SQL语句中引用文件的名称。logical_file_name在数据库中必须唯一,并且符合标识符的规则。该名称可以是字符或 Unicode常量,也可以是常规标识符或定界标识符。
FILENAME
为<filespec>定义的文件指定操作系统文件名。
'os_file_name'
操作系统创建<filespec>定义的物理文件时使用的路径名和文件名。os_file_name中的路径必须指定 SQL Server实例上的目录。os_file_name不能指定压缩文件系统中的目录。
如果文件在原始分区上创建,则os_file_name必须只指定现有原始分区的驱动器字母。每个原始分区上只能创建一个文件。原始分区上的文件不会自动增长;因此,os_file_name指定原始分区时,不需要指定 MAXSIZE和 FILEGROWTH参数。
SIZE
指定<filespec>中定义的文件的大小。如果主文件的<filespec>中没有提供 SIZE参数,那么 SQL Server将使用model数据库中的主文件大小。如果次要文件或日志文件的<filespec>中没有指定 SIZE参数,则 SQL Server将使文件大小为 1 MB。
size
<filespec>中定义的文件的初始大小。可以使用千字节(KB)、兆字节(MB)、千兆字节(GB)或兆兆字节(TB)后缀。默认值为 MB。指定一个整数,不要包含小数位。size的最小值为 512 KB。如果没有指定size,则默认值为 1 MB。为主文件指定的大小至少应与model数据库的主文件大小相同。
MAXSIZE
指定<filespec>中定义的文件可以增长到的最大大小。
max_size
<filespec>中定义的文件可以增长到的最大大小。可以使用千字节(KB)、兆字节(MB)、千兆字节(GB)或兆兆字节(TB)后缀。默认值为 MB。指定一个整数,不要包含小数位。如果没有指定max_size,那么文件将增长到磁盘变满为止
说明在磁盘即将变满时,Microsoft Windows NT® S/B系统日志会警告 SQL Server系统管理员。
UNLIMITED
指定<filespec>中定义的文件将增长到磁盘变满为止。
FILEGROWTH
指定<filespec>中定义的文件的增长增量。文件的 FILEGROWTH设置不能超过 MAXSIZE设置。
growth_increment
每次需要新的空间时为文件添加的空间大小。指定一个整数,不要包含小数位。0值表示不增长。该值可以 MB、KB、GB、TB或百分比(%)为单位指定。如果未在数量后面指定 MB、KB或%,则默认值为 MB。如果指定%,则增量大小为发生增长时文件大小的指定百分比。
如果没有指定 FILEGROWTH,则默认值为 10%,最小值为 64 KB。指定的大小舍入为最接近的 64 KB的倍数。
扩展资料
组成
在正式学习SQL语言之前,首先让我们对SQL语言有一个基本认识,介绍一下SQL语言的组成:
1、一个SQL数据库是表(Table)的集合,它由一个或多个SQL模式定义。
2、一个SQL表由行集构成,一行是列的序列(集合),每列与行对应一个数据项。
3、一个表或者是一个基本表或者是一个视图。基本表是实际存储在数据库的表,而视图是由若干基本表或其他视图构成的表的定义。
4、一个基本表可以跨一个或多个存储文件,一个存储文件也可存放一个或多个基本表。每个存储文件与外部存储上一个物理文件对应。
5、用户可以用SQL语句对视图和基本表进行查询等操作。在用户角度来看,视图和基本表是一样的,没有区别,都是关系(表格)。
6、SQL用户可以是应用程序,也可以是终端用户。SQL语句可嵌入在宿主语言的程序中使用,宿主语言有FORTRAN,COBOL,PASCAL,PL/I,C和Ada语言等。SQL用户也能作为独立的用户接口,供交互环境下的终端用户使用。
参考资料来源:百度百科-SQL数据库
参考资料来源:百度百科-Create Database
SQL实战新手入门:创建数据库
创建数据库
在可以向RDBMS提交SQL语句之前还有一些准备工作需要完成如果读者已经按照附录B中的操作指南以及本书配套网站( wrox或 agilitator)上补充的幻灯片完成了相应的安装操作那么应该已经具有一个(或多个)已经安装完成并且处于运行状态的RDBMS本书将使用到读者安装的RDBMS或者读者应该安装Microsoft Access或OpenOffice BASE请参考附录B其中详细列出了安装RDBMS的步骤另外请参考附录A中关于如何安装Library示例数据库的操作指南
对于下面的示例只需要少量修改就可以在多种RDBMS服务器上运行 Oracle IBM DB Microsoft SQL Server PostgreSQL和MySQL在MicrosoftAccess和OpenOffice BASE/HSQLDB中需要创建一个项目
数据库的概念从逻辑上可以定义为受某个程序管理的数据存储(例如现在已经很少使用的数据银行)当使用一个桌面型数据库(例如Microsoft Access)时 Access数据库就是一个文件对于新启动的每一个项目 Access都会创建这样一个数据库文件基于服务器的RDBMS也使用类似的概念但实现的细节要复杂许多幸运的是 SQL语言是一种声明性语言它隐藏了数据库实现上的复杂性 SQL语言只需要说明需要做什么而无须说明如何做
在使用数据库之前必须创建一个数据库本书中使用的数据库包含了笔者书柜上所有的书它可以跟踪图书名称 ISBN号作者价格等信息这些信息有助于弄清楚书柜中图书的情况
下面的语句将在RDBMS中创建一个名为LIBRARY的数据库(只要RDBMS是Microsoft SQLServer IBM DB PostgreSQL和MySQL即可对于Oracle数据库情况则略有不同它对于什么是数据库具有不同的表述请参考附录A中的详细介绍)
CREATE DATABASE library;
在RDBMS实例中如果具有足够的权限上面的语句将创建一个数据库它是容纳数据的一个逻辑结构同时还包含了所有的支撑结构文件和数据库操作所需的许多其他对象我们并不需要知道这些幕后的内容所有的空白都会被默认值填充这就是声明性语言的强大威力!
Oracle将采用如下所示的语法
CREATE USER library IDENTIFIED BY discover;
该语句中的USER粗略地等价于其他RDBMS中的DATABASE但在本书中将不会详细地讨论这两者之间的相似和差异
当然在一个产品级的RDBMS环境中创建一个具有足够功能的数据库还有大量的工作要做还可以使用许多选项并权衡利弊但是只需要执行上面的语句就可以创建一个可用的基本数据存储
在创建了一个数据库之后也可以使用SQL的DROP语句轻而易举地销毁它在使用DROP语句时不能销毁并不存在的对象(如果试图执行这样的操作 RDBMS将发出警告)
DROP DATABASE library;
在Oracle中删除操作就是删除一个USER
执行DROP语句之后 LIBRARY数据库就从服务器上消失了在Microsoft Access和OpenOfficeBASE中删除数据库的操作等价于删除对应的文件
由于各个RDBMS之间使用的术语存在着某些差别因此在不同的专有数据库之间数据库的概念也存在差异例如在SQL Server中定义为数据库的东西在某种程度上类似于Oracle中的SCHEMA和USER但在本书介绍的内容中这些差别并不是特别重要
返回目录 SQL实战新手入门
编辑推荐
Oracle索引技术
高性能MySQL
lishixinzhi/Article/program/SQL/201311/16487
关于本次sql创建数据库实例和sql数据库培训的问题分享到这里就结束了,如果解决了您的问题,我们非常高兴。