python_操作MySQL 初解 之__<类方法调用并 增-删-改-查>

文件一: 调用(sqls文件)

 1 # 导入模块
 2 import pymysql
 3 from sqls import *
 4 # 创建类
 5 class KaoShi(object):
 6 
 7     # 初始化
 8     def __init__(self):
 9         self.db = pymysql.connect(
10                  host='localhost',
11                  port=3306,
12                  user='root',
13                  passwd='1234',
14                  db='test'
15             )
16         self.cur = self.db.cursor()
17 
18     # 实例对象销毁的时候,关闭游标和数据库
19     def __del__(self):
20         self.cur.close()
21         self.db.close()
22 
23     # 插入
24     def insert01(self, q1):
25         m = str(tuple(q1))
26         sql = "insert students values %s" % m
27         self.cur.execute(sql)
28         self.db.commit()
29 
30     # 查询
31     def select02(self, q):
32         for k, v in q.items():
33             sql = 'select * from students where %s = "%s"' % (k, v)
34             self.cur.execute(sql)
35             for i in self.cur:
36                 print(i)
37             print()
38             ret = self.cur.fetchall()
39             # 返回多个元组
40             if ret:
41                 print(ret)
42             else:
43                 print('没有找到 %s' % v)
44 
45     # 更新
46     def update03(self, q1, q2):
47         for k1, v1 in q1.items():
48             sql = "update students set %s = '%s' " % (k1, v1)
49 
50         for k2, v2 in q2.items():
51             sql += " where %s = %d " % (k2, v2)
52         print(sql)
53         self.cur.execute(sql)
54         self.db.commit()
55 
56     # 删除
57     def delete04(self, q):
58         print(q)
59         for k, v in q.items():
60             sql = "delete from students where %s = '%s' " % (k, v)
61             self.cur.execute(sql)
62             self.db.commit()
63 
64     # 查询
65     def count05(self, q):
66         print(q)
67         for k, v in q.items():
68             sql = 'select count(*) from students where %s = "%s"' % (k, v)
69             self.cur.execute(sql)
70             ret = self.cur.fetchall()
71             print(ret)
72 
73             print('查询到的数量为:', ret[0][0])
74 
75     # 插入5条数据
76     def insert06(self, q):
77         print(q)
78         self.cur.execute(q)
79         self.db.commit()
80 
81     # 删除
82     def delete07(self):
83         # cur.execute('delete from students')
84         self.cur.execute('truncate students')
85         self.db.commit()
86 
87 
88 ks = KaoShi()
89 ks.insert01(q1)
90 ks.select02(q2)
91 ks.update03(q3_1, q3_2)
92 ks.delete04(q2)
93 ks.count05(q5)
94 ks.insert06(q6)
95 ks.delete07()
View Code

文件二: 命名为(sqls.py)

q1 = [0, '张三', 12, 1, '汉族', '八维学校附近地下室八层999', 13899998888]

q2 = {'name': '王五'}

q3_1 = {'name': '李四'}
q3_2 = {'age': 12}

q5 = {'nation': ''}


q6 = """
    insert students values
        (0, '孙越', 18, 1, '汉', '北京', 13899994444),
        (0, '越', 16, 1, '满', '上海', 13899994488),
        (0, '王祖', 98, 1, '蒙古', '深圳', 13899004422),
        (0, '刘能', 70, 1, '契丹', '大连', 13899997799),
        (0, '曹操', 40, 1, '汉', '天津', 13899994400);
    """

"""
create table students(
id int primary key auto_increment,
name varchar(20),
age tinyint,
gender enum ("男","女"),
nation char(5),13
address varchar(30),
tel varchar(20)
);
"""
x={'cui':"热心的网友"}
for k,v in x.items():
    print(k)
    print(v)
View Code

 

转载于:https://www.cnblogs.com/zhichao123/p/11240889.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值