提示:本文章详解python通过sqlite3模块操作MySQL的相关知识
文章目录
前言
在进行Python编程的时候,我们经常将一些数据保存起来,大家最常使用的是文本文件。但是,当保存的数据过大时,使用文本文件就会显得力不从心,因此我们选择使用数据库MySQL,那么如何让Python和MySQL进行交互呢?
第一部分:MySQL基础
一、MySQL的基本理论
MySQL是一个开放源代码的关系数据库管理系统。由于其性能高、成本低、可靠性好,被广泛应用在Internet上的中小型网站上。目前是甲骨文公司旗下产品。
1.基本术语
- 数据库
数据库是一些关联表的集合 - 数据表
表示数据的矩阵,在一个数据库中的表看起来像一个简单的电子表格 - 主键
主键是唯一的,一个数据表中只能包含一个主键,可以通过主键来查询数据
2.基本操作
2.1 数据库的操作
2.1.1创建数据库—— create
代码如下:
mysql> create database mrsoft;
Query OK, 1 row affected (0.00 sec)
2.1.2删除数据库—— drop
代码如下:
mysql> drop database mrsoft;
Query OK, 0 rows affected (0.00 sec)
2.1.3修改数据库—— alter
代码如下:
mysql> alter database mrsoft charset=utf8;
Query OK, 1 row affected (0.00 sec)
2.1.4查看数据库—— show
代码如下:
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mrsoft |
| mysql |
| performance_schema |
| sys |
+--------------------+
5 rows in set (0.00 sec)
2.1.5选择数据库—— use
代码如下:
mysql> use mrsoft
Database changed
2.2 数据表的操作
2.2.1创建数据表—— create
语法:
CREATE TABLE IF NOT EXISTS table_name (column_name column_type)
mysql> create table if not exists stud01(
-> id int auto_increment primary key,//primary key就是主键
-> name varchar(20) not null,
-> age int,
-> address varchar(50) not null default '重庆',
-> score int
-> )engine=innodb default charset=utf8;
Query OK, 0 rows affected (0.03 sec)
2.2.2删除数据表—— drop
语法:
DROP TABLE IF EXISTS table_name
mysql> show tables;
+------------------+
| Tables_in_mrsoft |
+------------------+
| stud01 |
| stud02 |
+------------------+
2 rows in set (0.00 sec)
mysql> drop table if exists stud01;
Query OK, 0 rows affected (0.01 sec)
mysql> show tables;
+------------------+
| Tables_in_mrsoft |
+------------------+
| stud02 |
+------------------+
1 row in set (0.00 sec)
2.2.3修改数据表—— alter
-
- 修改数据表本身
1、修改数据表的名称
- 修改数据表本身
语法:
ALTER TABLE table_name RENAME AS new_table_name
mysql> show tables;
+------------------+
| Tables_in_mrsoft |
+------------------+
| stud01 |
+------------------+
1 row in set (0.00 sec)
mysql> alter table stud01 rename as stud02;
Query OK, 0 rows affected (0.00 sec)
mysql> show tables;
+------------------+
| Tables_in_mrsoft |
+------------------+
| stud02 |
+------------------+
1 row in set (0.00 sec)
2、修改数据表的属性(engine、charset等)
语法:
ALTER TABLE table_name ENGINE=INNODB;
mysql> alter table stud02 engine=innodb;
Query OK, 0 rows affected (0.05 sec)
Records: 0 Duplicates: 0 Warnings: 0
-
- 修改数据表中的字段
1、增加数据表中的字段
- 修改数据表中的字段
语法:
ALTER TABLE table_name ADD column_name column_type
mysql> alter table stud02 add male varchar(10);
Query OK, 0 rows affected (0.03 sec)
Records: 0 Duplicates: 0 Warnings: 0
2、删除数据表中的字段
语法:
ALTER TABLE table_name DROP column_name
mysql> alter table stud02 drop male;
Query OK, 0 rows affected (0.03 sec)
Records: 0 Duplicates: 0 Warnings: 0
3、修改数据表中的字段(字段名和字段属性)
修改字段名语法:
ALTER TABLE table_name CHANGE column_name new_column_name column_type
mysql> alter table stud02 change male xingbie int;//这里可以同时修改字段名和字段属性
修改字段属性语法:
ALTER TABLE table_name MODIFY column_name column_type
mysql> alter table stud02 modify xingbie varchar(

本文详述Python与MySQL数据库的交互,包括SQLite3和PyMySQL模块的使用。首先介绍MySQL的基本理论和操作,如数据库与表的创建、删除、修改和查询。接着讲解SQLite3模块,阐述其无服务器特性和操作步骤,如导入模块、创建连接、执行SQL语句。最后,讨论PyMySQL模块,讲解如何连接MySQL数据库、创建游标以及执行SQL语句。
最低0.47元/天 解锁文章

9404

被折叠的 条评论
为什么被折叠?



