Kingbase数据库实验一 设计数据库、创建数据库和数据库

  • 一、实验目的
  • 二、实验内容
  • 三、实验步骤
  • 1.创建学生作业管理数据库
  • 2.对表3.6,表3.7和表3.8以下表的方式给出各字段的属性定义和说明。
  • 3. 使用SQL命令在学生作业管理数据库中建立学生表、课程表和学生作业表。
  • 4.在各个表中输入表3.6、表3.7和表3.8中的相应内容
  • 5.使用数据操纵完成以下任务。


一、实验目的

  1. 掌握在Kingbase中使用“数据库对象管理工具”和SQL命令创建数据库与修改数据库的方法。
  2. 掌握在Kingbase中使用“数据库对象管理工具”或者SQL命令创建数据表和修改数据表的方法(以SQL命令为重点)。

二、实验内容

给定教材126页的表3.6、表3.7和表3.8所示的学生信息。

  1. 在Kingbase中使用“数据库对象管理工具”和SQL命令创建学生作业管理数据库,数据库的名称自定。
    (1)使用“数据库对象管理工具”创建数据库,请给出重要步骤的截图。
    (2)删除第(1)步创建的数据库,再次使用SQL命令创建数据库,请给出SQL代码。
    (3)创建数据库之后,如果有需要,可以修改数据库。
  2. 对表3.6,表3.7和表3.8,分别以下表的方式给出各字段的属性定义和说明。
  3. 使用SQL命令在学生作业管理数据库中建立学生表、课程表和学生作业表,在实验报告中给出SQL代码。
  4. 在各个表中输入表3.6、表3.7和表3.8中的相应内容。
  5. 使用数据操纵完成以下任务(每一个任务都要给出SQL语句,并且列出查询结果)。
    (1)在学生表中添加一条学生记录,其中,学号为0593,姓名为张乐,性别为男,专业班级为电子05。
    (2)将所有课程的学分数变为原来的两倍。
    (3)删除张乐的信息。

三、实验步骤

1.创建学生作业管理数据库

(1)通过“数据库对象管理工具”创建学生作业管理数据库

kingbase转mysql数据迁移 kingbase创建数据库_SQL


(2)通过SQL语句创建学生作业管理数据库

SQL语句如下:

CREATE
	DATABASE 学生作业管理 WITH OWNER = "SYSTEM" ENCODING UTF8;

2.对表3.6,表3.7和表3.8以下表的方式给出各字段的属性定义和说明。


表3.6的属性定义和说明

字段名

数据类型

长度或者精度

默认值

完整性约束

学号

varchar

20

主键非空

姓名

varchar

20

非空

性别

varchar

4


非空

专业班级

varchar

20

非空

出生日期

varchar

20

可为空

联系电话

varchar

20

可为空

表3.7的属性定义和说明

字段名

数据类型

长度或者精度

默认值

完整性约束

课程号

varchar

4

主键

课程名

varcahr

4

非空

学分数

float

8

非空

学时数

int

4

非空

任课教师

varchar

20

非空

表3.8的属性定义和说明

字段名

数据类型

长度或者精度

默认值

完整性约束

课程号

varchar

20

学号

varchar

20

主键非空

作业1成绩

int

4

非空

作业2成绩

int

4

作业3成绩

int

4

非空

3. 使用SQL命令在学生作业管理数据库中建立学生表、课程表和学生作业表。

SQL语句如下:

Create table "PUBLIC".学生表(
	学号 nvarchar(20) PRIMARY KEY NOT NULL,
	姓名 nvarchar(20)not null,
	性别 nchar(4) default '男'not null,
	专业班级 nvarchar(20)not null,
	出生日期 nvarchar(20),
	联系电话 nvarchar(20)
);

Create table "PUBLIC".课程表(
	课程号 nvarchar primary KEY NOT NULL,
	课程名 nvarchar not null,
	学分数 FLOAT not null,
	学时数 int not null,
	任课教师 nvarchar(20) not null
);

Create table "PUBLIC".学生作业表(
	课程号 nvarchar(20),
	FOREIGN KEY(课程号) REFERENCES "PUBLIC".课程表(课程号),
	学号 nvarchar(20),
	FOREIGN KEY(学号) REFERENCES "PUBLIC".学生表(学号),
	作业1成绩 int not null,
	作业2成绩 int,
	作业3成绩 int not null
);

4.在各个表中输入表3.6、表3.7和表3.8中的相应内容

如下图所示:

kingbase转mysql数据迁移 kingbase创建数据库_数据库_02


kingbase转mysql数据迁移 kingbase创建数据库_作业管理_03

kingbase转mysql数据迁移 kingbase创建数据库_SQL_04

5.使用数据操纵完成以下任务。

(1)在学生表中添加一条学生记录,其中,学号为0593,姓名为张乐,性别为男,专业班级为电子05。
INSERT INTO "PUBLIC".学生表("学号","姓名","性别","专业班级")
	VALUES('0593','张乐','男','电子05');
 
(2)将所有课程的学分数变为原来的两倍。
UPDATE "课程表"
SET 学分数=2*学分数;
 
(3)删除张乐的信息。
DELETE FROM "学生表"
WHERE 姓名='张乐'