本着如果使用博客记录自己的学习路径,这个是自己的第一个博客,正好自己正在利用Python去连接MYSQL,所以记录下来以防将来学习使用。
首先需要有对应的Python环境,可以使用anaconda装载集成开发环境,也可以单独装python,再装pip。
重开一个terminal,如果已经装过Pip, 则直接输入pip install pymysql
就ok.
如果是windows则直接下载MYSQL不同版本的MYSQL,推荐使用64位版本,之后可以配置相应的db,然后我们就可以进行连接。
首先需要使用pymysql
与我们本地的mysql建立连接,如果是远程server,只需要更改对应的host,user和password即可。
import pymysql host = 'localhost' user = 'root' password = 'password' # which database to use. db = 'person' conn = pymysql.connect(host=host, user=user, password=password, database=db)
我们需要做的就是根据MYSQL基本建表语法进行SQL的编写即可。
new_table_create_sql = "create table if not exists `new_purchase` (`name` varchar(255), `item` varchar(255))" # with condiction so we don't need to care about close connection. with conn: with conn.cursor() as cursor: cursor.execute(new_table_create_sql)
插入数据则可以开一个connection,遍历我们需要插入的数据,如果我们插入成功则进行提交。
new_data = [("a", "1"), ("b", "2")] with conn: with conn.cursor() as cursor: cursor.execute(new_table_create_sql) insert_sql = "insert into new_purchase values (%s, %s)" for d in new_data: cursor.execute(insert_sql, (d[0], d[1])) conn.commit()
查询数据则只需要利用connection进行需要查询的SQL,我们可以将全部的数据集都查询出来,返回的结果为一个tuple,不可变;或者我们可以只查询一条数据以判定我们确实可以得到结果。
with conn: with conn.cursor() as cursor: cursor.execute("select * from new_purchase") # get full data out_res = cursor.fetchall() # if just need one record # out_res = cursor.fetchone()
其实我们使用pymysql
进行MYSQL的查询,最核心的就是连接MYSQL,之后我们可以的和我们直接写SQL是一样的。