【学习笔记】使用SQLyog连接MySQL数据库

一、使用SQLyog创建数据库用来管理学生信息

复制代码

1 #创建数据库student
  2 DROP DATABASE IF EXISTS Myschool;
  3 CREATE DATABASE Myschool;
  4
  5 #在数据库中新建四张数据表
  6 USE Myschool;
  7
  8 #创建年级表
  9 CREATE TABLE grade(
 10     gradeID INT(4) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT COMMENT '年级编号',
 11     gradeName VARCHAR(50) NOT NULL COMMENT '年级名称'
 12 )COMMENT="年级表";
 13
 14 #创建学生信息表
 15 CREATE TABLE student(
 16     studentNo INT(4) NOT NULL PRIMARY KEY COMMENT '学号',
 17     loginPwd VARCHAR(20) NOT NULL DEFAULT '123' COMMENT '密码',
 18     studentName VARCHAR(50) NOT NULL COMMENT '姓名',
 19     sex CHAR(2) NOT NULL DEFAULT '男' COMMENT '性别',
 20     gradeID INT(4) UNSIGNED COMMENT '年级编号',
 21     phone VARCHAR(50) COMMENT '电话',
 22     address VARCHAR(255) DEFAULT '地址不详' COMMENT '地址',
 23     bornDate DATETIME DEFAULT NOW() COMMENT '出生日期',
 24     email VARCHAR(50) DEFAULT 'xx@163.com' COMMENT '邮件账号',
 25     identityCard VARCHAR(18) COMMENT '身份证号'
 26 )COMMENT="学生信息表";
 27
 28 #创建科目表
 29 CREATE TABLE `subject`(
 30     subjectNo INT(4) NOT NULL PRIMARY KEY AUTO_INCREMENT COMMENT '课程编号',
 31     subjectName VARCHAR(50) COMMENT '课程名称',
 32     classHour INT(4) COMMENT '学时',
 33     gradeID INT(4) UNSIGNED COMMENT '年级编号'
 34 )COMMENT="科目表";
 35
 36 #创建成绩表
 37 CREATE TABLE result(
 38     studentNo INT(4) NOT NULL COMMENT '学号',
 39     subjectNo INT(4) NOT NULL COMMENT '课程编号',
 40     examDate DATETIME DEFAULT NOW() NOT NULL COMMENT '考试日期',
 41     studentResult INT(4) NOT NULL COMMENT '考试成绩'
 42 )COMMENT="成绩表";
 43
 44 #为表添加外键(关系)
 45
 46 #在student表中添加gradeID外键
 47 ALTER TABLE student
 48 ADD CONSTRAINT fk_student_grade FOREIGN KEY(gradeID)
 49 REFERENCES grade(gradeID);
 50
 51 #在subject表中添加gradeID外键
 52 ALTER TABLE `subject`
 53 ADD CONSTRAINT fk_subject_grade FOREIGN KEY(gradeID)
 54 REFERENCES grade(gradeID);
 55
 56 #在result表中添加studentNo,subjectNo外键
 57 ALTER TABLE result
 58 ADD CONSTRAINT fk_result_student FOREIGN KEY(studentNo)
 59 REFERENCES student(studentNo);
 60
 61 ALTER TABLE result
 62 ADD CONSTRAINT fk_result_subject FOREIGN KEY(subjectNo)
 63 REFERENCES `subject`(subjectNo);
 64
 65 #为表添加初始数据
 66
 67 #年级表grade的数据
 68 INSERT INTO grade(gradeID,gradeName)
 69 VALUES(1,'一年级'),(2,'二年级'),(3,'三年级'),(4,'四年级'),(5,'五年级');
 70
 71 #科目表subject的数据
 72 INSERT INTO `subject`(subjectNo,subjectName,classHour,gradeID)
 73 VALUES(1,'Logic Java',220,1),(2,'HTML',160,1),(3,'Java OOP',230,2);
 74
 75 #学生信息表student的数据
 76 INSERT INTO student(studentNo,studentName,sex,gradeID,phone,address,bornDate)
 77 VALUES(10000,'郭靖','男',1,13645667783,'天津市河西区','1990-09-08'),
 78 (10001,'李文才','男',1,13645667890,'地址不详','1994-04-12'),
 79 (10002,'李斯文','男',1,13645556793,'河南洛阳','1993-07-23'),
 80 (10003,'张萍','女',1,13642345112,'地址不详','1995-06-10'),
 81 (10004,'韩秋洁','女',1,13812344566,'北京市海淀区','1995-07-15'),
 82 (10005,'张秋丽','女',1,13567893246,'北京市东城区','1994-01-17'),
 83 (10006,'肖梅','女',1,13563456721,'河北省石家庄市','1991-02-17'),
 84 (10007,'秦洋','男',1,13056434411,'上海市卢湾区','1992-04-18'),
 85 (10008,'何睛睛','女',1,13053445221,'广州市天河区','1997-07-23'),
 86 (20000,'王宝宝','男',2,15076552323,'地址不详','1996-06-05'),
 87 (20010,'何小华','女',2,13318877954,'地址不详','1995-09-10'),
 88 (30011,'陈志强','女',3,13689965430,'地址不详','1994-09-27'),
 89 (30012,'李露露','女',3,13685678854,'地址不详','1992-09-27');
 90
 91 #成绩表result的数据
 92 INSERT INTO result(studentNo,subjectNo,examDate,studentResult)
 93 VALUES(10000,1,'2016-02-15',71),
 94 (10000,1,'2016-02-17',60),
 95 (10001,1,'2016-02-17',46),
 96 (10002,1,'2016-02-17',83),
 97 (10003,1,'2016-02-17',65),
 98 (10004,1,'2016-02-17',70),
 99 (10005,1,'2016-02-17',95),
100 (10006,1,'2016-02-17',93),
101 (10007,1,'2016-02-17',23),
102 (20000,3,'2016-07-17',68),
103 (20010,3,'2016-07-17',90),
104 (20000,2,'2016-07-17',88),
105 (20010,2,'2016-07-17',78);
106
107 ##学生信息数据库备份##

复制代码

二、使用SQLyog创建数据库制作图书馆管理系统

复制代码

1 #建立一个图书馆管理系统的数据库来存放图书馆的相关信息,包括图书的基本信息、图书借阅的信息和读者的信息
 2
 3 #创建数据库Library
 4 CREATE DATABASE IF NOT EXISTS Library;
 5 USE Library;
 6 #创建实体表
 7 #图书信息表book
 8 CREATE TABLE book(
 9     bookId VARCHAR(50) PRIMARY KEY NOT NULL COMMENT '图书编号',
10     bookName VARCHAR(255) NOT NULL COMMENT '图书名称',
11     author VARCHAR(50) COMMENT '作者姓名',
12     pubComp VARCHAR(50) COMMENT '出版社',
13     pubDate DATE COMMENT '出版日期',
14     bookCount INT(4) COMMENT '现存数量',
15     price DOUBLE COMMENT '单价'
16 )COMMENT="图书信息表";
17
18 #读者信息表reader
19 CREATE TABLE reader(
20     readerId VARCHAR(50) PRIMARY KEY NOT NULL COMMENT '读者编号',
21     readerName VARCHAR(50) NOT NULL COMMENT '读者姓名',
22     lendNum INT(4) COMMENT '已借书数量',
23     readerAddress VARCHAR(255) COMMENT '联系地址'
24 )COMMENT="读者信息表";
25
26 #图书借阅表borrow
27 CREATE TABLE borrow(
28     readerId VARCHAR(50) NOT NULL COMMENT '读者编号',
29     bookId VARCHAR(50) NOT NULL COMMENT '图书编号',
30     lendDate DATETIME DEFAULT NOW() NOT NULL COMMENT '借阅日期',
31     willDate DATE COMMENT '应归还日期',
32     returnDate DATE COMMENT '实际归还日期'
33 )COMMENT="图书借阅表";
34
35 #罚款记录表penalty
36 CREATE TABLE penalty(
37     readerId VARCHAR(50) NOT NULL COMMENT '读者编号',
38     bookId VARCHAR(50) NOT NULL COMMENT '图书编号',
39     pDate DATE NOT NULL COMMENT '罚款日期',
40     pType INT COMMENT '罚款类型:1-延期,2-损坏,3-丢失',
41     amount DOUBLE COMMENT '罚款金额'
42 )COMMENT="罚款记录表";
43
44 #删除信息表
45 USE Library;
46 DROP TABLE IF EXISTS book;
47 DROP TABLE IF EXISTS reader;
48 DROP TABLE IF EXISTS borrow;
49 DROP TABLE IF EXISTS penalty;
50
51 #给borrow添加复合主键
52 ALTER TABLE borrow
53 ADD CONSTRAINT pk_borrow PRIMARY KEY(readerId,bookId,lendDate);
54
55 #给penalty添加复合主键
56 ALTER TABLE penalty
57 ADD CONSTRAINT pk_penalty PRIMARY KEY(readerId,bookId,pDate);
58
59 ##删除borrow和penalty的主键
60 ALTER TABLE borrow
61 DROP PRIMARY KEY;
62 ALTER TABLE penalty
63 DROP PRIMARY KEY;
64 ##删除borrow和penalty的外键
65 ALTER TABLE borrow
66 DROP FOREIGN KEY fk_borrow_book;
67 ALTER TABLE borrow
68 DROP FOREIGN KEY fk_borrow_reader;
69 ALTER TABLE penalty
70 DROP FOREIGN KEY fk_penalty_book;
71 ALTER TABLE penalty
72 DROP FOREIGN KEY fk_penalty_reader;
73
74 #给borrow添加外键
75 ALTER TABLE borrow
76 ADD CONSTRAINT fk_borrow_book FOREIGN KEY(bookId)
77 REFERENCES book(bookId);
78 ALTER TABLE borrow
79 ADD CONSTRAINT fk_borrow_reader FOREIGN KEY(readerId)
80 REFERENCES reader(readerId);
81
82 #给penalty添加外键
83 ALTER TABLE penalty
84 ADD CONSTRAINT fk_penalty_book FOREIGN KEY(bookId)
85 REFERENCES book(bookId);
86 ALTER TABLE penalty
87 ADD CONSTRAINT fk_penalty_reader FOREIGN KEY(readerId)
88 REFERENCES reader(readerId);

复制代码

使用SQLyog连接MySQL数据库的更多相关文章

  1. 【学习笔记】使用SQLyog连接MySQL数据库

    一.使用SQLyog创建数据库用来管理学生信息 #创建数据库student DROP DATABASE IF EXISTS Myschool; CREATE DATABASE Myschool; #在 ...

  2. VS2015 +EF6 连接MYSQL数据库生成实体

      VS2015 +EF6 连接MYSQL数据库生成实体   已安装软件:VS2015                       XAMPP Control Panel(Mysql服务器)      ...

  3. 转载:Java连接MySQL 数据库的正确操作流程

    转载网址:http://www.bitscn.com/pdb/mysql/201005/186551.html       以下的文章主要介绍的是Java连接MySQL 数据库(以MySQL数据库为例 ...

  4. VS2015如何连接mySQL数据库

    mySQL数据库           如题,今天给大家简单演示一下VS2015如何连接mySQL数据库.       首先呢,大家需要安装vs2015和mySQL这两个软件,我还安装了一个辅助软件SQ ...

  5. mybatis连接mysql数据库实现的jdbc功能

    最近公司项目要使用myBatis,自己以前没有接触过,就在网上找到了一些资料研究了些.初步做出了基于myBatis连接mysql数据库的jdbc实现的功能. employee.java package ...

  6. 远程连接mysql数据库

    远程连接mysql数据库需要以下步骤(改表法): 1.数据源(数据库服务器)对要访问数据库进行授权: 2.本地库(本地)连接: 具体方法: 1. 进入数据服务器,输入cmd进入控制台:输入 mysql ...

  7. 使用SQLyog对mysql数据库的数据结构进行导出、导入

    主要分为两个步骤: 一.使用SQLyog对mysql数据库的数据结构进行导出 1.鼠标右键选择需要导出数据结构的数据库——>点击[备份/导出]——>点击[备份数据库,转储到SQL....] ...

  8. nodejs进阶(6)—连接MySQL数据库

    1. 建库连库 连接MySQL数据库需要安装支持 npm install mysql 我们需要提前安装按mysql sever端 建一个数据库mydb1 mysql> CREATE DATABA ...

  9. PDO连接mysql数据库

    1.PDO简介 PDO(PHP Data Object) 是PHP 5 中加入的东西,是PHP 5新加入的一个重大功能,因为在PHP 5以前的php4/php3都是一堆的数据库扩展来跟各个数据库的连接 ...

随机推荐

  1. 遗留系统:IT攻城狮永远的痛

    我常常觉得我们非常幸运,我们现在所处的时代是一个令人振奋的时代,我们进入了软件工业时代.在这个时代里,我们进行软件开发已经不再是一个一个的小作坊,我们在进行着集团化的大规模开发.我们开发的软件不再是为 ...

  2. .net 控件生命周期

    这里列举出来了11个生命周期,一般的控件生命周期会经历这11个生命周期,但是有一些特别的控件比如页面控件System.Web.UI.Page等. 具体代码参考如下: /// <summary&g ...

  3. vue-scroller实现vue单页面的上拉加载和下拉刷新问题

    在vue中如何简单的实现页面的上拉加载和下拉刷新,在这里我推荐使用vue-scrolle插件. vue-scrolle的基本使用方法: 1.下载 npm i vue-scroller -D 2.导包 ...

  4. 服务治理-> Spring Cloud Eureka

    服务治理->搭建服务注册中心 服务治理可以说是微服务架构中最为核心和基础的模块, 它主要用来实现各个微服务 实例的自动化注册与发现. 为什么我们在微服务架构中那么需要服务治理模块呢?微服务 系统 ...

  5. 2019第十届蓝桥杯C++B组题解(赛后重写的,不确保答案正确性,仅供参考)

    先说一下这次的感受吧,我们考场比较乱,开始比赛了,还有的电脑有故障,(向这些人发出同情),第一次认真参加比赛,真正比赛的时候感觉没有那么正式,很乱,各种小问题,(例如博主就没找到题目在哪里,找到后又不 ...

  6. linq与lambda 常用查询语句写法对比

    LINQ的书写格式如下: from 临时变量 in 集合对象或数据库对象 where 条件表达式 [order by条件] select 临时变量中被查询的值 [group by 条件] Lambda ...

  7. 反爬虫和抗DDOS攻击技术实践

    导语 企鹅媒体平台媒体名片页反爬虫技术实践,分布式网页爬虫技术.利用人工智能进行人机识别.图像识别码.频率访问控制.利用无头浏览器PhantomJS.Selenium 进行网页抓取等相关技术不在本文讨 ...

  8. 利用Cocoapods创建基于SVN的私有库podspec

    由于项目年后要进行组件化,考虑到公司内部实现的一些私有组件,不对外公开,而又想在不同项目中使用,该怎么办呢?由于cocoapods有了强大的功能,可以自己创建podspec,更可以设置私有的库.那么利 ...

  9. Thunder-Beta发布-事后诸葛亮会议-2017秋-软件工程第十一次作业

    小组名称:Thunder项目名称:爱阅APP小组成员:王航 李传康 翟宇豪 邹双黛 苗威 宋雨 胡佑蓉 杨梓瑞一.设想和目标 1.我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有 ...

  10. c# 写文件注意问题及用例展示

    以txt写string举例,正确代码如下: private void xie() { FileStream fs = new FileStream("1.txt", FileMod ...