实验1 应用SQL Server进行数据定义和管理

本文详细介绍了使用SQLServer2012Express进行数据库管理的实验流程,包括服务器管理、数据库的创建与删除、表的建立及数据查询,以及自定义数据类型的应用。通过具体实例,演示了如何使用SQL语句和SQLServerManagementStudio(SSMS)图形界面进行数据库操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实验1 应用SQL Server进行数据定义和管理

【实验目的】

1)熟悉SQL Server的配置和管理。

2)掌握数据库的定义和修改方法。

3)掌握表的定义和修改方法。

4)掌握使用SQL语句进行数据管理的方法。

【实验环境】

SQL Server 2012 Express(或SQL Server 2017 Express)

【实验内容】

实训1 服务器管理

启动,暂停和停止服务的方法很多,这里主要介绍SQL Server 配置管理器完成这些操作,其操作步骤如下:

  1. 单击“开始”---“Microsoft SQL Server 2012”-----“配置工具”,选择“SQL Server Configuration Manager”,打开SQL Setver配置管理器。单击“SQL Server 2012服务”选项,在右边的对话框里可以看到本地所有的SQL Server服务,包括不同实例的服务,如图1所示。
  2. 如果要启动、停止、暂停SQL Server服务的话,鼠标指向服务名称,单击右键,在弹出的快捷键菜单里选择“启动”、“停止”、“暂停”即可。

图1 SQL Server 配置服务管理器

实训2 创建和删除数据库

设有一学籍管理系统,其数据库名为“EDUC”,初始大小为6MB,最大为10MB,数据库自动增长,增长方式是按5%比例增长;日志文件初始为7MB,最大可增长到5MB,按1MB增长。数据库的逻辑文件名为“student_data”, 物理文件名为“student_data.mdf,存放路径为“D:\DBMS\sql_data”。日志文件的逻辑文件名为“student_log”, 物理文件名为“student_log.ldf”,存放路径为“D:\DBMS\sql_data”。

使用SQL Server Management Studio(简称SSMS)创建上述数据库。

【实验步骤】

1.启动SSMS

在开始菜单中执行SQL Server Management Studio

单击“连接”按钮,便可以进入【SQL Server Management Studio】窗口。如果身份验证选择的是“混合模式”,则要输入sa的密码。

2.建立数据库

在“对象资源管理器”窗口,在数据库节点上右击选择“新建”。建立数据库EDUC。

3.使用SQL语句建立数据库

用SSMS删除添加建立的数据库EDUC,执行以下SQL语句

CREATE DATABASE [EDUC] ON  PRIMARY

( NAME = N'student_data', FILENAME = N'C:\DBMS\sql_data\student_data.mdf' , SIZE = 6144KB , MAXSIZE = 51200KB , FILEGROWTH = 5%)

 LOG ON

( NAME = N'student_log', FILENAME = N'C:\DBMS\sql_data\student_log.ldf' , SIZE = 7168KB , MAXSIZE = 51200KB , FILEGROWTH = 1024KB )

GO

4.基于“模板资源管理器”建立数据库

(1)在Management Studio的“视图”菜单上,选择“模板资源管理器”命令。找到创建数据库的模板,如下图所示。

(2)在“查询”菜单上,选择“指定模板参数的值”命令。

(3)在出现的“指定模板参数的值”对话框中,显示了当前模板中存在的参数、类型和值3列。在此输入相关设置,单击“确定”完成对脚本的编辑。

输入的参数会出现在模板中的合适位置,单击“执行”按钮,将完成利用模板创建新的数据库的操作。

 

实训3 建立表及数据查询

  1. 建立学生-课程数据库

1. 建立“学生”表Student,学号是主码。可使用SQL语句直接执行,也可使用SSMS图形界面操作完成创建表。

    CREATE TABLE Student         

             (Sno   CHAR(9) PRIMARY KEY,   /* 设为主键*/                 

            Sname  CHAR(20),                     

            Ssex    CHAR(2),

            Sage   SMALLINT,

            Sdept  CHAR(20)

           );

 

数据如下:

Sno

Sname

Ssex

Sage

Sdept

200215121

李勇

20

CS

200215122

刘晨

19

IS

200215123

王敏

18

MA

200215125

张立

19

IS

 

2. 建立一个“课程”表Course。可使用SQL语句直接执行,也可使用SSMS图形界面操作完成创建表。

CREATE TABLE  Course

       (Cno     CHAR(4) PRIMARY KEY,

       Cname  CHAR(40),

       Cpno     CHAR(4),

       Ccredit  SMALLINT

       );

 

数据如下:

Cno

Cname

Cpno

Ccredit

1

2

3

4

5

6

7

数据库

数学

信息系统

操作系统

数据结构

数据处理

PASCAL语言

5

 

1

6

7

 

6

4

2

4

3

4

2

4

 

3. 建立一个“选课”表SC。可使用SQL语句直接执行,也可使用SSMS图形界面操作完成创建表。

CREATE TABLE  SC

             (Sno  CHAR(9),

             Cno  CHAR(4), 

             Grade    SMALLINT,

             PRIMARY KEY (Sno,Cno)      /* 主码由两个属性构成*/ 

          );

 

数据如下:

Sno

Cno

Grade

200215121

1

92

200215121

2

85

200215121

3

88

200215122

2

90

200215122

3

80

 

  1. 完成以下查询任务,写出SQL语句,并给出执行结果(拷屏形式给出)

1.查询全体男生的姓名及其出生年份。

2.查询年龄在18~21岁(包括18岁和21岁)之间的男生的姓名、系别和年龄。

3.查询信息系(IS)和计算机科学系(CS)女生的姓名和性别。

4.查询男同学和女同学均选修的课程的课程号。

实训4 自定义数据类型及数据管理

(1) 创建用户定义的数据类型:编号(非空,长度为8的字符型)
创建“编号”类型的SQL语句:

(2) 创建图书数据库(BookSys),并在数据库中建立如下表,要求图书编号、读者编号使用用户定义类型:编号。

图书信息(tsxx

图书编号

书名

价格

出版社

出版日期

作者

(tusbh)

(shum)

(jiag)

(chubs)

(chubrq)

(zuoz)

说:图书编号、书名不能为空。
创建“tsxx”表的SQL语句:

读者信息(dzxx

读者编号

姓名

身份证号

级别

(duzbh)

(xingm)

(shenfzh)

(jib)

说明:读者编号、姓名不能为空。

创建“dzxx”表的SQL语句:

借阅信息(jyxx

读者编号

图书编号

借阅日期

还书日期

是否续借

(duzbh)

(tusbh)

(jieyrq)

(huansrq)

(shifxj)

说明:图书编号、读者编号不能为空。

创建“jyxx”表的SQL语句:

3.完成如下操作。

(1)向读者信息表中添加列:联系方式,可以为空。

SQL语句:

(2)修改列“出版社”的定义,长度修改为200。

SQL语句:

(3)删除“联系方式”一列。
SQL语句:

4.完成如下数据操作。

(1)向各表插入若干数据。
给出向“tsxx”表插入一条记录的SQL语句:

给出向“dzxx”表插入一条记录的SQL语句:


给出向“jyxx”表插入一条记录的SQL语句:

(2)修改读者信息表中编号为00001001的读者的级别为2级。

SQL语句:

Update dzxx

Set jib=’2级’

Where duzbh=’00001001’

(3)删除借阅信息表中读者编号为00001001借阅10010001图书的记录。

SQL语句:

Delete jyxx

Where duzbh =’00001001’ and tusbh =’10010001’

这个错误是由于无法连接到本地主机的10248端口导致的。这个端口通常是kubelet进程监听的端口,用于健康检查。出现这个错误可能是由于kubelet进程没有正确启动或者配置错误导致的。 解决这个问题的方法是检查kubelet进程的状态和配置。你可以按照以下步骤进行操作: 1. 检查kubelet进程是否正在运行。你可以使用以下命令检查kubelet进程的状态: ```shell systemctl status kubelet ``` 如果kubelet进程没有运行,你可以使用以下命令启动它: ```shell systemctl start kubelet ``` 2. 检查kubelet的配置文件。你可以使用以下命令查看kubelet的配置文件路径: ```shell kubelet --kubeconfig /etc/kubernetes/kubelet.conf --config /var/lib/kubelet/config.yaml --bootstrap-kubeconfig /etc/kubernetes/bootstrap-kubelet.conf config view ``` 确保配置文件中的端口号和地址正确,并且与你的环境相匹配。 3. 检查网络连接。你可以使用以下命令检查是否可以连接到localhost10248端口: ```shell curl -sSL http://localhost:10248/healthz ``` 如果无法连接,请确保端口没有被防火墙或其他网络配置阻止。 4. 检查docker的配置。有时候,kubelet进程依赖于docker进程。你可以按照以下步骤检查docker的配置: - 创建/etc/docker目录: ```shell sudo mkdir /etc/docker ``` - 编辑/etc/docker/daemon.json文件,并添加以下内容: ```json { "exec-opts": ["native.cgroupdriver=systemd"], "log-driver": "json-file", "log-opts": { "max-size": "100m" }, "storage-driver": "overlay2", "storage-opts": [ "overlay2.override_kernel_check=true" ], "registry-mirrors": ["https://tdhp06eh.mirror.aliyuncs.com"] } ``` - 重启docker进程: ```shell systemctl restart docker ``` 请注意,以上步骤是一种常见的解决方法,但具体解决方法可能因环境而异。如果以上步骤无法解决问题,请提供更多的错误信息和环境配置,以便我们能够更好地帮助你。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值