摘要:如何快速创建一个简单的MySQL数据库;使用PyMySQL库操作MySQL。
*写在前面:为了更好的学习python,博主记录下自己的学习路程。本学习笔记基于廖雪峰的Python教程,如有侵权,请告知删除。欢迎与博主一起学习Pythonヽ( ̄▽ ̄)ノ *
目录
数据库
使用MySQL
使用PyMySQL
数据库
使用MySQL
MySQL是Web世界中使用最广泛的数据库服务器,能承受高并发访问,同时占用的内存也远远大于SQLite。
创建一个简单的数据库
通过上面提供的网址,下载并安装MySQL。
安装成功后,在命令提示符中输入命令(这里用的是Windows系统):
cd C:\Program Files\MySQL\MySQL Server 8.0\bin
路径为安装MySQL的路径。
然后启动MySQL服务:
net start mysql80
由于安装的版本为8.0,所以这里输入的是mysql80
。
然后输入下面命令,进入MySQL:
mysql -u root -p
之后会提示输入密码,这是密码是在安装MySQL时设置的。
如果出现下面的提示,则表示成功进入MySQL:
接下来创建一个名为test的数据库:
mysql> create database test
Query OK, 1 row affected (0.10 sec)
进入test数据库:
mysql> use test
Database changed
在test数据库中创建一个名为user的数据库表:
mysql> create table user(
-> `id` int(11) NOT NULL AUTO_INCREMENT,
-> `name` varchar(20) DEFAULT NULL,
-> `score` int(10) NOT NULL,
-> PRIMARY KEY (`id`)
-> )ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;
Query OK, 0 rows affected, 1 warning (0.12 sec)
在user
内,我们创建了id
,name
,score
三行数据表,其中id
为主键。
我们可以使用命令describe
来查看:
mysql> describe user;
+-------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| name | varchar(20) | YES | | NULL | |
| score | int(10) | NO | | NULL | |
+-------+-------------+------+-----+---------+----------------+
3 rows in set (0.00 sec)
至此,我们创建了一个简单的数据库。关于MySQL的更多操作,这里不做介绍。
接下来我们看看如何通过Python操作MySQL
使用PyMySQL
PyMySQL是Python中用于连接MySQL服务器的一个库。
我们通过PyMySQL来连接MySQL。
在命令提示符中通过pip命令安装:
pip install pymysql
安装完成后,就可以使用了。
我们引入PyMySQL模块,然后建立与MySQL的连接和游标:
>>> import pymysql
>>> conn = pymysql.connect('localhost','root','','test')
>>> cursor = conn.cursor()
connect()
方法需要输入四个参数,依次为连接地址,用户名,密码,数据库名。
这里请确保已经开启MySQL服务,并且已创建了数据库test。
然后我们就可以进行相关操作了,如添加数据:
>>>cursor.execute('drop table if exists user') # 如果存在表user,先删除,即二次启动。
0
>>>cursor.execute('create table user(id int primary key, name varchar(20),score int)')
0
>>>cursor.execute(r"insert into user values(1,'Ming',100)")
1
>>>cursor.close()
>>>conn.commit()
>>>conn.close()
查询数据:
>>>conn = pymysql.connect('localhost','root','','test')
>>>cursor = conn.cursor()
>>> cursor.execute(r"select * from user where id = %s", (1))
1
>>> values = cursor.fetchall()
>>> values
((1, 'Ming', 100),)
>>>cursor.close()
>>>conn.close()
这里占位符用%s
表示,与SQLite略有不同。其他操作代码与SQLite十分类似。
进行相关操作之后,记得关闭连接。
以上就是本节的全部内容,感谢你的阅读。
下一节内容:数据库之 使用SQLAlchemy
有任何问题与想法,欢迎评论与吐槽。
和博主一起学习Python吧( ̄▽ ̄)~*