数据库基础(持续更新)

基于sql-server

数据库创建

不可以在系统数据库进行操作

一般新建数据库

  1. 右键数据库 -> 新建数据库

  2. 弹窗内输入数据库名称 修改数据库文件参数

  3. 确认数据库属性完成新建

使用T-SQL脚本新建数据库

CREATE DATABASE Stu_db2
on PRIMARY
	(NAME=studio_db2,
	FILENAME='D:\D_Data2\studio_db2.mdf',
	SIZE=3mb,
	MAXSIZE=unlimited,
	FILEGROWTH=10%
	),
FILEGROUP studio_new_group
	(name=studio_db_new,
	filename='D:\D_Data2\studio_db_new.ndf',
	size=3mb,
	maxsize=300mb,
	filegrowth=0
	)
log on
	(name=studio_log,
	filename='D:\D_Data2\studio_log.log',
	size=3mb,
	maxsize=20mb,
	filegrowth=1mb
	)

之后刷新数据库,就能看到新建的数据库了


数据库文件与文件组

文件

文件组

  1. 主文件组
  2. 用户自定义文件组
  3. 默认文件组

增加文件和文件组

USE Stu_db2 --指定使用的数据库
Go--执行上面的脚本,可以不写
--向数据库增加新文件组
ALTER DATABASE Stu_db2 ADD FILEGROUP File_group2
GO
--向数据库中增加新文件
ALTER DATABASE Stu_db2 ADD FILE
	(
	NAME=N'new_datafile2',
	FILENAME=N'D:\D_Data2\new_datafile2.ndf',
	SIZE=3072KB,
	FILEGROWTH=1024KB
	)
	TO FILEGROUP File_group2 --指定新文件在哪个文件组
	GO--  N'xxx' 标识将单引号中的xxx强制转换为Unicode编码的字符,不用在中文情况下会出现乱码。因为在英文中常用的是ASCII码(一个字符占一个字节),而我们用的中文一个汉字就要占两个字节所以要用N'xxx'强制转换为Unicode编码的字符,这样单引号中不管是英文字符还是汉字一个都占两个字节,统一起来,不会出现乱码

删除文件和文件组

删除文件组时必须先删除文件组的所有文件

USE Stu_db2
GO
--删除文件
ALTER DATABASE Stu_db2 REMOVE FILE new_datafile2--不需要加扩展名
GO
--删除文件组
ALTER DATABASE Stu_db2 REMOVE FILEGROUP File_group2
GO

修改文件和文件组属性

USE Stu_db2
--修改文件组名称
ALTER DATABASE Stu_db2 
MODIFY FILEGROUP File_group2 NAME=anygroup
GO
--修改文件名称
ALTER DATABASE Stu_db2
MODIFY FILE(name=new_datafile2,newname=anyname)
GO
--修改文件组中全部文件为只读
ALTER DATABASE Stu_db2 
MODIFY FILEGROUP anygroup READONLY
GO
--修改文件组中全部文件为只写
ALTER DATABASE Stu_db2 
MODIFY FILEGROUP anygroup READWRITE
GO

删除数据库

  • SSMS通过右键数据库删除

  • DROP DATABASE Stu_db2,Stu_db3,...n--加,和其他数据库名称可以同时删除多个数据库
    
  • 注意

    • 四个系统数据库不可删除
    • 正在使用的数据库不可删除
    • 数据库删除之后,文件及其数据都从服务器上的磁盘中被删除(永久删除)

修改数据库属性

USE Stu_db2
GO
--修改文件大小
ALTER DATABASE Stu_db2
MODIFY FILE(NAME=anyname,size=20mb)
GO
--移动文件位置
ALTER DATABASE Stu_db2
MODIFY FILE(NAME=anyname,FILENAME=N'D:\D_Data\anyname.ndf')
GO
--更改数据库选项
ALTER DATABASE Stu_db SET SINGLE_USER--单用户
ALTER DATABASE Stu_db SET READ_ONLY--只读
ALTER DATABASE Stu_db SET AUTO_SHRINK ON--自动收缩
GO

posted on 2021-09-27 18:06  YUNBB  阅读(93)  评论(0)    收藏  举报

导航