SQL 基础(一)创建、查看、修改、删除数据库

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
日志服务 SLS,月写入数据量 50GB 1个月
简介: 分别使用 Microsoft SQL Server Management Studio 和 T-SQL 语句创建、查看、修改、删除数据库
SQL(Structured Query Language),结构化查询语言

基础理论

T-SQLSQL 的区别:

  • T-SQLSQL 语言的一种版本,且只能在 SQL SERVER 上使用。是 ANSI SQL 的加强版语言、提供了标准的 SQL 命令。另外,T-SQL 还对 SQL 做了许多补允,提供了类似 CBasicPascal 的基本功能,如变量说明、流控制语言、功能函数等
  • SQL 由甲骨文发布,T-SQL 由微软发布
  • SQL 是一种标准,T-SQLSQLSQL SERVER 上的实现

主要功能:

  • 数据查询 Query
  • 数据定义 Definition
  • 数据操纵 Manipulation
  • 数据控制 Control

主要文件:

  • 主数据文件 .mdf
  • 次数据文件 .ndf
  • 事物日志文件 .ldf

数据库创建

使用 Management Studio

SQL 语句创建

CREATE DATABASE db_test
ON
(
NAME=test,
FILENAME='D:\Data\test.mdf', --路径+文件名(加扩展名)
SIZE=5MB,
MAXSIZE=10MB,
FILEGROWTH=5% --最后一句指令后不加逗号
)
LOG ON
(
NAME=test_log,
FILENAME='D:\Data\test_log.ldf',
SIZE=5MB,
MAXSIZE=10MB,
FILEGROWTH=2% --具体容量或 UNLIMITED 不限制
)

修改数据库

ALTER DATABASE db_test
ADD FILE
(
NAME=test_file, --在数据库 db_test 中添加次要数据文件                   逻辑名
FILENAME='D:\Data\test_file.ndf', -- 文件名.ndf 注意文件格式
SIZE=100,
MAXSIZE=200,
FILEGROWTH=10 -- 文件自动增量为10MB
)

查看数据库

EXECUTE Sp_helpdb db_test --查看数据库

迁移数据库 分离与附加

EXECUTE Sp_detach_db db_test --分离数据库

EXECUTE Sp_attach_db db_test,物理文件名(.mdf文件位置) --附加数据库

*注:数据库的分离与附加一般发生在数据库在不同机器迁移的情况下使用,当使用 Management Studio 操作时,可能会因权限问题导致附加失败,下面演示如何修改控制权限

本地找到数据库主文件(.mdf)右键修改属性,勾选完全控制

打开 Management Studio 选中数据库节点,进入附加数据库窗口

选择数据库文件位置,添加执行即可

删除数据库

DROP DATABASE db_test

*注:SQL 指令常用大写,减少后台指令转换执行时间,提升速度,影响较小,基本可忽略

练习

题目

实验任务 1
要求设计一个数据库,数据库名为 db_HX(要求利用 SQL Server Management
Studio 平台,T-SQL 语句两种方式创建数据库);数据库名为 db_HX;数据库中包含一
个数据文件,逻辑文件名为 HX_DATA,物理文件名为 HX_DATA.MDF,文件的初始容量为
5MB,最大容量为 15MB,文件容量递增值为 2MB
事务日志文件的逻辑文件名为 HX_LOG,物理文件名为 HX_LOG.LDF,初始容量为
3MB,最大容量为 10MB,文件容量递增值为 1MB;

实验任务 2
利用 SQL Server Management Studio 平台,T-SQL 语句两种方式修改数据库,按
要求对数据库进行修改在数据库 db_HX 中添加一个数据文件,逻辑文件名为 HX_DATA1,
文件的初始容量为 3MB,最大容量为 15MB,文件容量递增值为 2MB;
将事务日志文件的最大容量改为 20MB,文件容量递增值为 2MB;

实验任务 3
利用 SQL Server Management Studio 平台,T-SQL 语句两种方式修改数据库,按
要求对数据库文件进行删除,将数据库 db_HX 中刚添加的 HX_DATA1 数据库文件删除。

实验任务 4
利用 SQL Server Management Studio 平台,T-SQL 语句两种方式,将数据库 db_HX
进行分离和附加操作。

实验任务 5
使用 T-SQL 语句删除数据库 db_HX

任务拓展
创建一个包含多个数据文件和日志文件的数据库 db_MNS,该数据库包含两个初始大小
为 15MB 的数据文件和两个 5MB 的日志文件。

Query.sql

--任务1
create database db_hx
on
(
name=hx_data,
filename='D:\Data\hx_data.mdf',
size=5,
maxsize=15,
filegrowth=2
)
log on
(
name=hx_log,
filename='D:\Data\hx_log.ldf',
size=3,
maxsize=10,
filegrowth=1
)

--任务2
alter database db_hx
add file
(
name=hx_data1,
filename='D:\Data\hx_data1.ndf',
size=3,
maxsize=15,
filegrowth=2
)
alter database db_hx
modify file
(
name=hx_log,
filename='D:\Data\hx_log.ldf',
maxsize=20,
filegrowth=2
)

--任务3
alter database db_hx
remove file hx_data1

--任务4
execute sp_detach_db db_hx
execute sp_attach_db db_hx,'D:\Data\hx_data.mdf'

--任务5
drop database db_hx

--拓展
create database db_mns
on primary --创建多个数据文件(但仅有一个主数据文件)
(
name=mns_data1,
filename='D:\Data\mns_data1.mdf', --主数据文件
size=15
),
(
name=mns_data2,
filename='D:\Data\mns_data2.ndf', --主文件组,次数据库文件
size=15
)
log on
(
name=mns_log1,
filename='D:\Data\mns_log1.ldf',
size=5
),
(
name=mns_log2,
filename='D:\Data\mns_log2.ldf',
size=5
)

Tips:

选中代码,点击执行可以执行 部分指令

相关实践学习
消息队列RocketMQ版:基础消息收发功能体验
本实验场景介绍消息队列RocketMQ版的基础消息收发功能,涵盖实例创建、Topic、Group资源创建以及消息收发体验等基础功能模块。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
20天前
|
SQL 存储 关系型数据库
关系型数据库SQLserver基本 SQL 操作
【7月更文挑战第28天】
28 4
|
5天前
|
SQL 数据库 数据安全/隐私保护
SQL Server数据库Owner导致事务复制log reader job无法启动的解决办法
【8月更文挑战第14天】解决SQL Server事务复制Log Reader作业因数据库所有者问题无法启动的方法:首先验证数据库所有者是否有效并具足够权限;若非,使用`ALTER AUTHORIZATION`更改为有效登录名。其次,确认Log Reader使用的登录名拥有读取事务日志所需的角色权限。还需检查复制配置是否准确无误,并验证Log Reader代理的连接信息及参数。重启SQL Server Agent服务或手动启动Log Reader作业亦可能解决问题。最后,审查SQL Server错误日志及Windows事件查看器以获取更多线索。
|
4天前
|
SQL 存储 关系型数据库
数据库SQL入门指南
数据库SQL入门指南
|
1天前
|
SQL 关系型数据库 MySQL
解决:Mybatis-plus向数据库插入数据的时候 报You have an error in your SQL syntax
该博客文章讨论了在使用Mybatis-Plus向数据库插入数据时遇到的一个常见问题:SQL语法错误。作者发现错误是由于数据库字段中使用了MySQL的关键字,导致SQL语句执行失败。解决方法是将这些关键字替换为其他字段名称,以避免语法错误。文章通过截图展示了具体的操作步骤。
|
1天前
|
SQL 关系型数据库 MySQL
SQL数据库和 SQLserver数据库
【8月更文挑战第19天】SQL数据库和 SQLserver数据库
7 2
|
1天前
|
SQL 存储 安全
SQL Server数据库创建
【8月更文挑战第19天】SQL Server数据库创建
4 1
|
4天前
|
SQL 关系型数据库 数据库
数据库空间之谜:彻底解决RDS for SQL Server的空间难题
【8月更文挑战第16天】在管理阿里云RDS for SQL Server时,合理排查与解决空间问题是确保数据库性能稳定的关键。常见问题包括数据文件增长、日志文件膨胀及索引碎片累积。利用SQL Server的动态管理视图(DMV)可有效监测文件使用情况、日志空间及索引碎片化程度。例如,使用`sp_spaceused`检查文件使用量,`sys.dm_db_log_space_usage`监控日志空间,`sys.dm_db_index_physical_stats`识别索引碎片。同时,合理的备份策略和文件组设置也有助于优化空间使用,确保数据库高效运行。
13 2
|
17天前
|
SQL 安全 关系型数据库
关系型数据库SQL server DELETE 语句
【8月更文挑战第3天】
44 10
|
17天前
|
SQL 关系型数据库 数据库
关系型数据库SQL server UPDATE 语句
【8月更文挑战第3天】
43 10
|
17天前
|
SQL 关系型数据库 BI
关系型数据库SQL server INSERT 语句
【8月更文挑战第3天】
39 9