数据库的定义和创建表,插入数据、修改数据,还原备份

1. 定义数据库和表:

1) 创建学生-课程数据库student_course。

进入mysql命令行(两种方式:Navicat与Dos界面),使用SQL命令创建数据库student_course

 

2) 按照学生-课程数据库中的表结构,创建学生表Student、课程表Course和学生选课表SC。

使用新创建的数据库,并在数据库student_course内创建学生表Student、课程表Course和学生选课表SC:

 

 

 

 显示表结构:

 

 

1、插入数据:

查询Student表中数据:

利用Insert语句进行数据的插入。

  1. Student表插入一个新学生元祖(学号:201215121,姓名:李勇,性别:男,年龄:20岁,所在系:CS)。

注意:指明表属性,因此赋值要与指明的表属性相对应

  1. 向Student表插入一个新学生元祖(学号:201215122,姓名:刘晨,性别:女,年龄:19岁,所在系:CS)。

注意:没有指明表属性,因此列的值顺序要与定义表Student时的属性顺序相同

  1. 向Student表插入一个新学生元祖(学号:201215123,姓名:王敏,性别:女,所在系:MA,年龄:18岁)。

注意:指明表属性,且顺序与表定义的属性顺序不一值,赋值要与指明的表属性顺序一致

  1. 向Student表插入一个新学生元祖(所在系:IS,年龄:19岁,学号:201215125,姓名:张立,性别:男)。

注意:指明表属性,且顺序与表定义的属性顺序不一值,赋值要与指明的表属性顺序一致

  1. 对每一个系,求学生的平均年龄,并把结果存入数据库中。

需要创建一个新表,用来存放系别与平均年龄:

接着对Student表按系分组求平均年龄,并将系别和平均年龄存入新表

注意:利用子查询插入数据,插入的是一组数据

  1. 思考与练习:选择合适的插入数据方法,向Course和SC表插入图3.2中的课程信息和选课信息。

注意:外码引用失败,因为Course自已引用自己的Cno为外码,插入第一个数据时,因为没有插入1号的先行课5号课程数据,因此引用5号课程时引用失败,因此报错。解决方法:插入数据时,先将先行课设置为空值null,后续再进行修改为正确的先行课序号。

修改先行课Cpno

给SC表插入数据

标题三  修改数据:

  1. 将学生201215121的年龄改为22岁。

查询修改之前的表数据:

修改:

查询修改之后的表数据:

  1. 将所有学生的年龄增加1岁。

查询修改之前的表数据:

修改:

查询修改之后的表数据:

  1. 将计算机科学系全体学生的成绩置零。

查询修改前计算机科学系学生的成绩(利用连接查询):

修改(带子查询的修改):

查询修改后的计算机科学系学生成绩(利用连接查询):

  1. 删除数据:
  1. 删除学号为201215125的学生记录。

查询学生记录:

删除:

查询删除后的学生记录:

  1. 删除计算机科学系所有学生的选课记录,参考例3.77。

  1. 导出与导入:

(可以从Navicat中导出导出,也可以从命令行中导入导出,这里介绍Navicat中的常用方法)

导出备份与还原备份

(1)导出备份

新建备份,Navicat中找到数据库student_course,点击备份出现备份界面,点击新建备份

出现新建备份窗口,点击备份

备份完成,出现Finished successfully,备份成功,点击“关闭”

出现备份文件

选中备份文件,鼠标右键选择复制,后面就可以将备份文件粘贴到U盘带走或其他地方进行保存!!!

(2)还原备份

新建数据库,注意数据库名称需要与之前创建的数据库名称一致:

选中连接,右键下拉单中点击刷新,出现新建的数据库:

在新建的数据库中点击备份,右边窗口中出现备份对象窗口,复制备份文件,在备份对象中右键选中粘贴,将备份文件粘贴到备份窗口中:

选中备份文件,然后点击还原备份:

出现还原备份窗口,点击还原: 

出现Finished successfully,证明还原备份成功,点击关闭:

选中数据库“student_course”,右键出现菜单栏,点击刷新,查看表,出现之前创建的表:

  • 4
    点赞
  • 60
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Daniel Hao

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值