创建数据库的SQL语句:
create database stuDB
on primary -- 默认就属于primary文件组,可省略
(
/*--数据文件的具体描述--*/
name='stuDB_data', -- 主数据文件的逻辑名称
filename='D:\stuDB_data.mdf', -- 主数据文件的物理名称
size=5mb, --主数据文件的初始大小
maxsize=100mb, -- 主数据文件增长的最大值
filegrowth=15%--主数据文件的增长率
)
log on
(
/*--日志文件的具体描述,各参数含义同上--*/
name='stuDB_log',
filename='D:\stuDB_log.ldf',
size=2mb,
filegrowth=1mb
)
创建表和删除表的SQL语句如下:
use StuDB
go
if exists(select * from sysobjects where name='stuMarks')
drop table stuMarks
create table stuMarks
(
ExamNo int identity(1,1) primary key,
stuNo char(6) not null,
writtenExam int not null,
LabExam int not null
)
go
-- 其中,列属性"identity(起始值,递增量)" 表示"ExamNo"列为自动编号, 也称为标识列
alter table 表名
add constraint 约束名 约束类型 具体的约束说明
alter table 表名
drop constraint 约束名
alter table stuMarks
add constraint UQ_stuNo Unique(stuNo)
alter table stuMarks
drop constraint UQ_stuNo
/*--添加SQL登录账户--*/
exec sp_addlogin 'xie', '123456' -- 账户名为xie,密码为123456
--删除xie账户名
exec sp_droplogin 'xie'
/*--在stuDB数据库中添加两个用户(必须存在)--*/
use stuDB
go
exec sp_grantdbaccess 'xie','123456'
go
-- 提示:SQL Server 中的dbo用户是具有在数据库中执行所有活动权限的用户,表示数据库的所有者(owner),一般来说,
-- 如果创建了某个数据库,就是该数据库的所有者,即dbo用户,dbo用户是一个比较特殊的数据库用户,无法删除,且此用
-- 户始终出现在每个数据库中
/* --给数据库用户授权-- */
-- 授权的语法如下
-- grant 权限 [on 表名] to 数据库用户
use stuDB
go
grant select,update,insert on stuMarks to xie
grant create table to xie
go
② 通过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 的倍数。
(2)新建数据库的sql语句扩展阅读
组成
在正式学习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
③ 15个MySQL常用基本SQL语句
在学习SQL语句之前,首先需要区分几个概念,我们常说的数据库是指数据库软件,例如MySQL、Oracle、SQL Server等,而本文提到的数据库是指数据库软件中的一个个用于存储数据的容器。
在MySQL中,数据库称为database,数据表称为table,一个数据库软件中有多个数据库(databases),每个数据库中又可以有多个数据表(tables),最终,数据是存储在数据表中。
数据库和数据表之间的关系可以用下面这个图来表示,对于一个数据库来说,有多个数据表。
在正式开始写SQL语句之前,需要说明两点。
这里通过MySQL Workbench来写SQL代码,在Workbench中,执行一条SQL语句的方式有两种。
了解了这之后,接下来介绍一些常见的命令,分两部分:数据库常用命令和数据表常用命令。
1、查看有哪些数据库
2、创建数据库
创建一个名为Testdb的数据库。
3、创建数据库并指定编码格式
有些时候,为了防止中文乱码,创建数据库的时候需要指定编码格式。
4、使用某个数据库
使用mydb这个数据库,或者进入mydb这个数据库。
5、删除数据库
删除Testdb这个数据库。
1、查看有哪些数据表
进入某个数据库之后,想查看有哪些数据表,SQL语句为:
mydb是一个新建的数据库,所以自然是没有数据表。
2、创建数据表
建表SQL语句格式为:
说明: 每个字段以逗号分隔,最后一个字段不加逗号。
例如,给定一个学员信息表,如下表所示。
根据以上表格,建表SQL语句如下。
以上语句中,primary key表示主键,意思是这个字段作为记录的唯一标识,就像每个人的身份证号,都是唯一确定的。
3、查看表结构
查看表结构的SQL命令为:
执行该命令会显示表stuinfo的基本结构,例如有哪些字段,每个字段是什么类型,谁是主键等。
4、修改数据表
修改数据表通过drop子句进行,比如,建完表后,想增加一个字段,SQL语句的格式为:
想在指定位置增加一个字段,例如,在某个字段后增加一个字段,SQL语句的格式为:
如果在某个字段之前增加字段,用before即可。
例如,在字段age后增加一个字段major(专业),SQL语句为:
执行这个命令,再通过describe查看表结构,会发现表中多了一个字段major。
如果要删除major这个字段,通过drop子句,SQL语句为:
5、重命名表
重命名表通过alter+rename来实现,SQL语句格式为:
这里为了不影响之前创建的表,我们创建一个新表,SQL语句如下。
以上创建一个名为stuInfoTest的表,现在想将它的名称改成stuinfotest1,SQL语句为:
6、删除数据表
删除数据表通过drop进行,SQL语句格式为:
例如,删除数据表stuinfotest1,SQL语句为:
7、插入记录
此时的表stuinfo是空的,没有数据,我们要向表中插入记录。
插入记录通过insert into进行,SQL语句格式为:
例如,向表stuinfo插入一条记录,SQL语句为:
注意:上方是一条SQL语句,为了可读性换行,记住一条SQL语句默认以分号结尾。
如果需要一次性插入多条记录,SQL语句格式为:
例如,向表stuinfo再插入两条记录,SQL语句为:
注意:如果设置了主键,插入记录的主键字段是不能重复的,也就是不能插入重复的记录。
作业:大家可以按照上述方法将上面的学员信息表中的所有记录都插入表stuinfo中。
8、查询记录
有了数据之后,就可以查询记录了,查询记录通过select子句进行。
例如,想查询表stuinfo中的所有记录,SQL语句为:
执行之后,就可以看到表stuinfo中的所有记录了。
如果想查询符合某个条件的记录,就要用到where子句了,SQL格式为:
例如,想查询stuid为20161001的记录,SQL语句为:
9、删除记录
删除记录通过delete子句进行,SQL语句格式为:
例如,想删除stuid为20161002的记录,SQL语句为:
10、修改记录
修改记录通过update子句进行,update就是更新的意思,SQL语句格式为:
例如,想将学号(stuid)为20161001的记录的姓名(stuname)更新为Jack,SQL语句为:
以上,就是MySQL中的基本SQL语句。
零基础如何学习数据分析?查看下方专栏。
④ 怎么样用SQL语句创建一个数据库
您好:
1、使用CREATE DATABASE语句创建数据库最简单的方式,该方式只需要指定database-name参数即可,该参数表示要创建的数据库的名称,其他与数据库有关的选项都采用系统的默认值。
2、如果希望在创建数据库时明确指定数据库的文件和这些文件的大小以及增长的方式,就需要了解CREATE DATABASE语句的语法。
3、在语法格式中,每一种特定的符号都表示特殊的含义。
使用CREATE DATABASE语句创建数据库:
1、 打开【SQL Server Management Studio】窗口,并连接到服务器。选择【文件】→【新建】→【数据库引擎查询】命令或者单击标准工具栏上的【新建查询】按钮,创建一个查询输入窗口,在窗口内输入语句,创建“新建的数据1”数据库,保存位置为“C”。
2、单击【执行】按钮执行语句,如果执行成功,在查询窗口的【查询】中可以看到“命令以成功完成”。的提示信息框。在【对象资源管理器】窗口中书涮新,展开数据库节点就可以看到新建的数据了。
⑤ 如何用SQL语句创建数据库
在SQL语句中,CREATE DATABASE 语句用于创建数据库。
具体用法如下:
-from 树懒学堂
数据库表可以通过 CREATE TABLE 语句来添加。
⑥ ACCESS里如何用SQL语句创建数据库和表
方法:首先打开软件,在弹出对话框中创建数据库,点击SQLView菜单即可创建。
详细步骤:
1、打开Access,选择Blankdatabase,创建一个数据库。
2、然后在弹出的对话框中,指定数据库文件的存放目录和名字。并点击“create”按钮,创建数据库。
3、新创建的数据库,如图所示,默认会创建一个名称为Table1的table,可以看到界面上有一个名称为create的菜单。点击该菜单。
4、点击create菜单后,会得到如图所示的界面,在这个界面中选择QueryDesign。
5、看到在界面上方,有一个SQLView的菜单,选择该菜单。即可用SQL语句创建数据库和表。
⑦ mysql创建库的sql语句
使用 create 命令创建数据库,语法如下:
CREATE DATABASE 数据库名;
如果数据库名已经存在,则会提示不能创建,这里可以加上“if not exists"从句就可以避免类似错误,如下所示:
CREATE DATABASE IF NOT EXISTS 数据库名;
⑧ SQL数据库用代码创建 怎么创建
createdatabase数据库名称
on
(
name='aaa',
filename='aaa.dbf',
size=初始大小,
maxsize=存储上限,
filegrowth=增长增量
)
logon
(
name='b',
filename='b.ldf',
size=初始大小,
maxsize=存储上限,
filegrowth=增长增量
)
(8)新建数据库的sql语句扩展阅读:
SQL语句创建基本数据库
SQL语句代码:CREATEDATABASE语句。
CREATEDATABASEEpiphany
ON
(
NAME=Epiphany,
FILENAME='E:SQLSERVER2008Epiphany_data.mdf',
SIZE=5MB,
MAXSIZE=20,
FILEGROWTH=20
)
LOGON
(
NAME=Epiphany,
FILENAME='E:SQLSERVER2008Epiphany_log.ldf',
SIZE=2MB,
MAXSIZE=10MB,
FILEGROWTH=1MB
);
可以用这个模板,例子:
CREATEDATABASEEpiphany
ON
(
NAME=Epiphany,
FILENAME='E:SQLSERVER2008Epiphany_data.mdf',
SIZE=5MB,
MAXSIZE=20,
FILEGROWTH=20
)
LOGON
(
NAME=Epiphany,
FILENAME='E:SQLSERVER2008Epiphany_log.ldf',
SIZE=2MB,
MAXSIZE=10MB,
FILEGROWTH=1MB
);
完毕!
⑨ 创建数据库所用的SQL语句是什么
给你个简单的例子,创建一个数据库
if exists (select * from sysdatabases where name='bankDB')
drop database bankDB --查询是否已存在bankDB数据库,如果存在则删除
GO
create database bankDB --创建数据库
on
(
name='bank_data', --数据库名称
filename='e:\SQL\bank_data.mdf', --数据库位置
size=10mb, --数据库初始容量
maxsize=100mb, --数据库最大容量
filegrowth=15% --增长率
)
GO