Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
Python-100-Days
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
huangkq
Python-100-Days
Commits
48758e07
Commit
48758e07
authored
Jul 23, 2019
by
jackfrued
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
更新了数据库部分的文档
parent
d9ec8119
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
107 additions
and
11 deletions
+107
-11
31-35.玩转Linux操作系统.md
Day31-35/31-35.玩转Linux操作系统.md
+87
-8
36-38.关系型数据库MySQL.md
Day36-40/36-38.关系型数据库MySQL.md
+19
-2
concept-model-graph.png
Day36-40/res/concept-model-graph.png
+0
-0
玩转PyCharm.md
玩转PyCharm.md
+1
-1
No files found.
Day31-35/31-35.玩转Linux操作系统.md
View file @
48758e07
...
@@ -26,20 +26,12 @@
...
@@ -26,20 +26,12 @@
3.
1969年:MULTICS项目失败,Ken Tompson赋闲在家,为了玩“Space Travel”游戏用汇编语言在当时已经被淘汰的PDP-7上开发了Unics。
3.
1969年:MULTICS项目失败,Ken Tompson赋闲在家,为了玩“Space Travel”游戏用汇编语言在当时已经被淘汰的PDP-7上开发了Unics。
!
[](
./res/ken_young.jpg
)
!
[](
./res/pdp-7.png
)
> 注:很难想象,Unix这么伟大的系统,居然是一个赋闲在家的程序员(关键是老婆回娘家还带上了孩子)在一台被淘汰的设备上为了玩游戏开发出来的。
> 注:很难想象,Unix这么伟大的系统,居然是一个赋闲在家的程序员(关键是老婆回娘家还带上了孩子)在一台被淘汰的设备上为了玩游戏开发出来的。
4.
1970年~1971年:Ken Tompson和Dennis Ritchie用B语言在PDP-11上重写了Unics,并在Brian Kernighan的建议下将其更名为Unix。
4.
1970年~1971年:Ken Tompson和Dennis Ritchie用B语言在PDP-11上重写了Unics,并在Brian Kernighan的建议下将其更名为Unix。
!
[](
./res/dmr.png
)
!
[](
./res/ken-and-dennis-pdp-11.png
)
!
[](
./res/ken-and-dennis-pdp-11.png
)
!
[](
./res/pdp-11.jpg
)
5.
1972年~1973年:Dennis Ritchie发明了C语言来取代可移植性较差的B语言,并开启了用C语言重写Unix的工作。
5.
1972年~1973年:Dennis Ritchie发明了C语言来取代可移植性较差的B语言,并开启了用C语言重写Unix的工作。
6.
1974年:Unix推出了里程碑意义的第5版,几乎完全用C语言来实现。
6.
1974年:Unix推出了里程碑意义的第5版,几乎完全用C语言来实现。
...
@@ -1768,6 +1760,93 @@ build environment:
...
@@ -1768,6 +1760,93 @@ build environment:
key semid owner perms nsems
key semid owner perms nsems
```
```
### Shell编程
之前我们提到过,Shell是一个连接用户和操作系统的应用程序,它提供了人机交互的界面(接口),用户通过这个界面访问操作系统内核的服务。Shell脚本是一种为Shell编写的脚本程序,我们可以通过Shell脚本来进行系统管理,同时也可以通过它进行文件操作。总之,编写Shell脚本对于使用Linux系统的人来说,应该是一项标配技能。
互联网上有大量关于Shell脚本的相关知识,我不打算再此对Shell脚本做一个全面系统的讲解,我们通过下面的代码来感性的认识下Shell脚本就行了。
例子1:输入两个整数m和n,计算从m到n的整数求和的结果。
```
Shell
#!/usr/bin/bash
printf 'm = '
read m
printf 'n = '
read n
a=$m
sum=0
while
[
$a -le $n
]
do
sum=$
[
sum + a
]
a=$
[
a + 1
]
done
echo '结果: '$sum
```
例子2:自动创建文件夹和指定数量的文件。
```
Shell
#!/usr/bin/bash
printf '输入文件名: '
read file
printf '输入文件数量(<1000): '
read num
if
[
$num -ge 1000
]
then
echo '文件数量不能超过1000'
else
if
[
-e $dir -a -d $dir
]
then
rm -rf $dir
else
if
[
-e $dir -a -f $dir
]
then
rm -f $dir
fi
fi
mkdir -p $dir
index=1
while
[
$index -le $num
]
do
if
[
$index -lt 10
]
then
pre='00'
elif
[
$index -lt 100
]
then
pre='0'
else
pre=''
fi
touch $dir'/'$file'_'$pre$index
index=$
[
index + 1
]
done
fi
```
例子3:自动安装指定版本的Redis。
```
Shell
#!/usr/bin/bash
install_redis() {
if ! which redis-server > /dev/null
then
cd /root
wget $1$2'.tar.gz' >> install.log
gunzip /root/$2'.tar.gz'
tar -xf /root/$2'.tar'
cd /root/$2
make >> install.log
make install >> install.log
echo '安装完成'
else
echo '已经安装过Redis'
fi
}
install_redis 'http://download.redis.io/releases/' $1
```
### 相关资源
### 相关资源
1.
Linux命令行常用快捷键
1.
Linux命令行常用快捷键
...
...
Day36-40/36-38.关系型数据库MySQL.md
View file @
48758e07
...
@@ -16,7 +16,10 @@
...
@@ -16,7 +16,10 @@
-
编程语言:结构化查询语言(SQL)。
-
编程语言:结构化查询语言(SQL)。
4.
E-R图。
4.
E-R图 / 概念模型图。
!
[](
./res/concept-model-graph.png
)
-
实体 - 矩形框
-
实体 - 矩形框
-
属性 - 椭圆框
-
属性 - 椭圆框
-
关系 - 菱形框
-
关系 - 菱形框
...
@@ -165,9 +168,10 @@
...
@@ -165,9 +168,10 @@
? longblob;
? longblob;
```
```
### SQL详解
### SQL详解
#### 基本操作
1.
DDL
1.
DDL
```
SQL
```
SQL
...
@@ -419,6 +423,12 @@
...
@@ -419,6 +423,12 @@
revoke insert, delete, update on school.* from 'hellokitty'@'%';
revoke insert, delete, update on school.* from 'hellokitty'@'%';
```
```
#### 视图
#### 索引
#### 过程
### 相关知识
### 相关知识
#### 范式理论 - 设计二维表的指导思想
#### 范式理论 - 设计二维表的指导思想
...
@@ -430,15 +440,22 @@
...
@@ -430,15 +440,22 @@
#### 数据完整性
#### 数据完整性
1. 实体完整性 - 每个实体都是独一无二的
1. 实体完整性 - 每个实体都是独一无二的
- 主键(primary key) / 唯一约束 / 唯一索引(unique)
- 主键(primary key) / 唯一约束 / 唯一索引(unique)
2. 引用完整性(参照完整性)- 关系中不允许引用不存在的实体
2. 引用完整性(参照完整性)- 关系中不允许引用不存在的实体
- 外键(foreign key)
- 外键(foreign key)
3. 域完整性 - 数据是有效的
3. 域完整性 - 数据是有效的
- 数据类型及长度
- 数据类型及长度
- 非空约束(not null)
- 非空约束(not null)
- 默认值约束(default)
- 默认值约束(default)
- 检查约束(check)
- 检查约束(check)
> 说明:在MySQL数据库中,检查约束并不起作用。
#### 数据一致性
#### 数据一致性
1. 事务:一系列对数据库进行读/写的操作。
1. 事务:一系列对数据库进行读/写的操作。
...
...
Day36-40/res/concept-model-graph.png
0 → 100644
View file @
48758e07
439 KB
玩转PyCharm.md
View file @
48758e07
## 玩转PyCharm
## 玩转PyCharm
PyCharm是由JetBrains公司开发的提供给Python专业的开发者的一个集成开发环境,它最大的优点是能够大大提升Python开发者的工作效率,为开发者集成了很多用起来非常顺手的功能,包括代码调试、高亮语法、代码跳转、智能提示、自动补全、单元测试、版本控制等等。此外,PyCharm还提供了对一些高级功能的支持,包括支持基于Django框架的Web开发
、
。
PyCharm是由JetBrains公司开发的提供给Python专业的开发者的一个集成开发环境,它最大的优点是能够大大提升Python开发者的工作效率,为开发者集成了很多用起来非常顺手的功能,包括代码调试、高亮语法、代码跳转、智能提示、自动补全、单元测试、版本控制等等。此外,PyCharm还提供了对一些高级功能的支持,包括支持基于Django框架的Web开发。
### PyCharm的安装
### PyCharm的安装
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment