更新了数据库阶段的文档
parent
3ad03f0234
commit
c6666f45d4
|
@ -345,8 +345,6 @@ mongo --host 172.18.61.250
|
|||
|
||||
MongoDB shell version v3.6.5
|
||||
connecting to: mongodb://172.18.61.250:27017/
|
||||
...
|
||||
>
|
||||
```
|
||||
|
||||
1. 查看、创建和删除数据库。
|
||||
|
@ -544,4 +542,4 @@ python3
|
|||
>>>
|
||||
```
|
||||
|
||||
关于PyMongo更多的知识可以通过它的[官方文档](https://api.mongodb.com/python/current/tutorial.html)进行了解。
|
||||
关于PyMongo更多的知识可以通过它的[官方文档](https://api.mongodb.com/python/current/tutorial.html)进行了解,也可以使用[MongoEngine](<https://pypi.org/project/mongoengine/>)这样的库来简化Python程序对MongoDB的操作,除此之外,还有以异步I/O方式访问MongoDB的三方库[motor](<https://pypi.org/project/motor/>)都是不错的选择。
|
|
@ -87,6 +87,12 @@
|
|||
netstat -nap | grep mysql
|
||||
```
|
||||
|
||||
也可以使用下面的命令查找是否有名为mysqld的进程。
|
||||
|
||||
```Shell
|
||||
pgrep mysqld
|
||||
```
|
||||
|
||||
- 使用MySQL客户端工具连接服务器。
|
||||
|
||||
命令行工具:
|
||||
|
@ -177,10 +183,9 @@
|
|||
-- 创建学院表
|
||||
create table tb_college
|
||||
(
|
||||
collid int not null auto_increment comment '编号',
|
||||
collid int auto_increment comment '编号',
|
||||
collname varchar(50) not null comment '名称',
|
||||
collmaster varchar(20) not null comment '院长',
|
||||
collweb varchar(511) default '' comment '网站',
|
||||
primary key (collid)
|
||||
);
|
||||
|
||||
|
@ -189,7 +194,7 @@
|
|||
(
|
||||
stuid int not null comment '学号',
|
||||
stuname varchar(20) not null comment '姓名',
|
||||
stusex bit default 1 comment '性别',
|
||||
stusex boolean default 1 comment '性别',
|
||||
stubirth date not null comment '出生日期',
|
||||
stuaddr varchar(255) default '' comment '籍贯',
|
||||
collid int not null comment '所属学院',
|
||||
|
@ -197,8 +202,6 @@
|
|||
foreign key (collid) references tb_college (collid)
|
||||
);
|
||||
|
||||
-- alter table tb_student add constraint fk_student_collid foreign key (collid) references tb_college (collid);
|
||||
|
||||
-- 创建教师表
|
||||
create table tb_teacher
|
||||
(
|
||||
|
@ -222,31 +225,28 @@
|
|||
);
|
||||
|
||||
-- 创建选课记录表
|
||||
create table tb_score
|
||||
create table tb_record
|
||||
(
|
||||
scid int auto_increment comment '选课记录编号',
|
||||
stuid int not null comment '选课学生',
|
||||
couid int not null comment '所选课程',
|
||||
scdate datetime comment '选课时间日期',
|
||||
scmark decimal(4,1) comment '考试成绩',
|
||||
primary key (scid),
|
||||
foreign key (stuid) references tb_student (stuid),
|
||||
foreign key (couid) references tb_course (couid)
|
||||
recid int auto_increment comment '选课记录编号',
|
||||
sid int not null comment '选课学生',
|
||||
cid int not null comment '所选课程',
|
||||
seldate datetime default now() comment '选课时间日期',
|
||||
score decimal(4,1) comment '考试成绩',
|
||||
primary key (recid),
|
||||
foreign key (sid) references tb_student (stuid),
|
||||
foreign key (cid) references tb_course (couid),
|
||||
unique (sid, cid)
|
||||
);
|
||||
|
||||
-- 添加唯一性约束(一个学生选某个课程只能选一次)
|
||||
alter table tb_score add constraint uni_score_stuid_couid unique (stuid, couid);
|
||||
```
|
||||
|
||||
2. DML
|
||||
|
||||
```SQL
|
||||
|
||||
-- 插入学院数据
|
||||
insert into tb_college (collname, collmaster, collweb) values
|
||||
('计算机学院', '左冷禅', 'http://www.abc.com'),
|
||||
('外国语学院', '岳不群', 'http://www.xyz.com'),
|
||||
('经济管理学院', '风清扬', 'http://www.foo.com');
|
||||
insert into tb_college (collname, collmaster) values
|
||||
('计算机学院', '左冷禅'),
|
||||
('外国语学院', '岳不群'),
|
||||
('经济管理学院', '风清扬');
|
||||
|
||||
-- 插入学生数据
|
||||
insert into tb_student (stuid, stuname, stusex, stubirth, stuaddr, collid) values
|
||||
|
@ -289,7 +289,7 @@
|
|||
(9999, '审计学', 3, 3366);
|
||||
|
||||
-- 插入选课数据
|
||||
insert into tb_score (stuid, couid, scdate, scmark) values
|
||||
insert into tb_record (sid, cid, seldate, score) values
|
||||
(1001, 1111, '2017-09-01', 95),
|
||||
(1001, 2222, '2017-09-01', 87.5),
|
||||
(1001, 3333, '2017-09-01', 100),
|
||||
|
@ -304,9 +304,9 @@
|
|||
(1378, 1111, '2017-09-05', 82),
|
||||
(1378, 7777, '2017-09-02', 65.5),
|
||||
(2035, 7777, '2018-09-03', 88),
|
||||
(2035, 9999, curdate(), null),
|
||||
(3755, 1111, date(now()), null),
|
||||
(3755, 8888, date(now()), null),
|
||||
(2035, 9999, default, null),
|
||||
(3755, 1111, default, null),
|
||||
(3755, 8888, default, null),
|
||||
(3755, 9999, '2017-09-01', 92);
|
||||
```
|
||||
|
||||
|
@ -460,6 +460,26 @@
|
|||
- 隔离性:多个事务并发执行时,一个事务的执行不应影响其他事务的执行
|
||||
- 持久性:已被提交的事务对数据库的修改应该永久保存在数据库中
|
||||
|
||||
3. MySQL中的事务操作
|
||||
|
||||
- 开启事务环境
|
||||
|
||||
```SQL
|
||||
start transaction
|
||||
```
|
||||
|
||||
- 提交事务
|
||||
|
||||
```Shell
|
||||
commit
|
||||
```
|
||||
|
||||
- 回滚事务
|
||||
|
||||
```SQL
|
||||
rollback
|
||||
```
|
||||
|
||||
### Python数据库编程
|
||||
|
||||
我们用如下所示的数据库来演示在Python中如何访问MySQL数据库。
|
||||
|
|
Loading…
Reference in New Issue