Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk menggunakan Python Pymysql untuk penyimpanan data?

Bagaimana untuk menggunakan Python Pymysql untuk penyimpanan data?

WBOY
Lepaskan: 2023-04-23 20:34:15
ke hadapan
1224 orang telah melayarinya

Python menyambung dan mengendalikan pangkalan data MySQL, terutamanya melalui modul Pymysql. Di sini kami menerangkan cara menyimpan data yang ditangkap ke dalam pangkalan data MySQL.

Buat jadual data storan

Pertama sekali, anda harus memastikan bahawa pangkalan data MySQL telah dipasang pada komputer anda, dan kemudian lakukan perkara berikut:

# 1. 连接到mysql数据库
mysql -h227.0.0.1 -uroot -p123456
# 2. 建库
create database maoyandb charset utf8;
# 3. 切换数据库
use maoyandb;
# 4. 创建数据表
create table filmtab(
name varchar(100),
star varchar(400),
time varchar(30)
);
Salin selepas log masuk

Penggunaan asas Pymysql

1) Sambung ke pangkalan data

db = pymysql.connect('localhost','root','123456','maoyandb')
Salin selepas log masuk

Penerangan parameter:

  • localhost: alamat pelayan MySQL tempatan atau IP alamat pangkalan data jauh.

  • root: nama pengguna yang digunakan untuk menyambung ke data.

  • kata laluan: Kata laluan yang digunakan untuk menyambung ke pangkalan data, kata laluan pelayan MySQL tempatan ialah "123456".

  • db: Nama pangkalan data yang disambungkan.

2) Cipta objek kursor

cursor = db.cursor()
Salin selepas log masuk

3) Laksana arahan sql

execute() kaedah digunakan untuk melaksanakan pernyataan SQL. Seperti yang ditunjukkan di bawah:

#第一种方法:编写sql语句,使用占位符传入相应数据
sql = "insert into filmtab values('%s','%s','%s')" % ('刺杀,小说家','雷佳音','2021')
cursor.excute(sql)
第二种方法:编写sql语句,使用列表传参方式
sql = 'insert into filmtab values(%s,%s,%s)'
cursor.execute(sql,['刺杀,小说家','雷佳音','2021'])
Salin selepas log masuk

4) Hantar data

db.commit()
Salin selepas log masuk

5) Tutup pangkalan data

cursor.close()
db.close()
Salin selepas log masuk

Kod lengkap adalah seperti berikut:

# -*-coding:utf-8-*-
import pymysql
#创建对象
db = pymysql.connect('localhost','root','123456','maoyandb')
cursor = db.cursor()
# sql语句执性,单行插入
info_list = ['刺杀,小说家','雷佳音,杨幂','2021-2-12']
sql = 'insert into movieinfo values(%s,%s,%s)'
#列表传参
cursor.execute(sql,info_list)
db.commit()
# 关闭
cursor.close()
db.close()
Salin selepas log masuk

Hasil data pertanyaan adalah seperti berikut:

mysql> pilih * daripada movieinfo;
+------------+-- - --------------+
|. nama                                                                                                                                                                                                                                                                                                                             ------+--------- ----------+----------+
| Pembunuhan, penulis novel |. ----------+------+---- -------+
1 baris dalam set (0.01 saat)

Terdapat juga kaedah yang lebih cekap, menggunakan executemany() untuk memasukkan berbilang keping data pada masa yang sama. Contohnya adalah seperti berikut:

Tanya hasil sisipan seperti berikut:
db = pymysql.connect('localhost','root','123456','maoyandb',charset='utf8')
cursor = db.cursor()
# sql语句执性,列表元组
info_list = [('我不是药神','徐峥','2018-07-05'),('你好,李焕英','贾玲','2021-02-12')]
sql = 'insert into movieinfo values(%s,%s,%s)'
cursor.executemany(sql,info_list)
db.commit()
# 关闭
cursor.close()
db.close()
Salin selepas log masuk

mysql> pilih * daripada movieinfo;
+--------; -- ---+-------------------+----------------+

| nama | |. masa |
+------------+-----+--------- -----------+
|. Saya bukan tuhan perubatan | |
+------------- +-------------------+----------- -----+
2 baris dalam set (0.01 saat)


Ubah suai program perangkak

Sekarang ubah suai program perangkak untuk menyimpan data yang ditangkap dalam pangkalan data MySQL . Seperti yang ditunjukkan di bawah:

Pertanyaan pangkalan data menyimpan keputusan seperti berikut:

mysql> pilih * daripada movieinfo;
+----------------+---------------- ------------------------------------------+------ - ----+
|. nama                                                                                                                                                                                                                                                                --------------------------------------- +---- --------+
|. Saya bukan tuhan perubatan | Robbins, Morgan Ford, Bob Gunton | Matsuoka Moyu                                                                                                                                                                                                                                                                            Suami, Hanmo                                                                                                                                                                                                                                                                              020-01-03 |
|. Pembunuh ini tidak terlalu dingin | 2010-09-01 |
+------------ ----+----------------------- ------------------------- -------------+----------- -----+
10 baris dalam set (0.01 saat)

Atas ialah kandungan terperinci Bagaimana untuk menggunakan Python Pymysql untuk penyimpanan data?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan