zoukankan      html  css  js  c++  java
  • 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
  • 相关阅读:
    Git版本控制+配置中心(Spring Cloud Config)(八)
    NodeJS+Sidecar异构系统+Zuul(七)
    API网关Zuul(六)
    Hystrix断路器(五)
    Feign配合Ribbon和Eureka来提供负载均衡的HTTP客户端(四)
    负载均衡Ribbon(三)
    Eureka注册中心(二)
    SpringCloud介绍(一)
    Swift基础小结_2
    谓词(搜索)
  • 原文地址:https://www.cnblogs.com/zhichao123/p/11240889.html
Copyright © 2011-2022 走看看