zoukankan      html  css  js  c++  java
  • Python3 简单封装 sqlite3

    #coding: utf-8
    #Author:boxker
    #Mail:icjb@foxmail.com
    
    import sqlite3
    import os
    
    class simpleToolSql():
        """
        simpleToolSql for sqlite3
        简单数据库工具类
        编写这个类主要是为了封装sqlite,继承此类复用方法
        """
    
        def __init__(self,filename="stsql"):
            """
            初始化数据库,默认文件名 stsql.db
            filename:文件名
            """
            self.filename = filename + ".db"
            self.db = sqlite3.connect(self.filename)
            self.c = self.db.cursor()
            
        def close(self):
            """
            关闭数据库
            """
            self.c.close()
            self.db.close()
    
        def execute(self,sql,param=None):
            """
            执行数据库的增、删、改
            sql:sql语句
            param:数据,可以是list或tuple,亦可是None
            retutn:成功返回True
            """
            try:
                if param is None:
                    self.c.execute(sql)
                else:
                    if type(param) is list:
                        self.c.executemany(sql,param)
                    else :
                        self.c.execute(sql,param)
                count = self.db.total_changes
                self.db.commit()
            except Exception as e:
                print(e)
                return False,e
            if count > 0 :
                return True
            else :
                return False
    
        def query(self,sql,param=None):
            """
            查询语句
            sql:sql语句
            param:参数,可为None
            retutn:成功返回True
            """
            if param is None:
                self.c.execute(sql)
            else:
                self.c.execute(sql,param)
            return self.c.fetchall()
            
        # def set(self,table,field=" * ",where="",isWhere=False):
        #     self.table = table
        #     self.filed = field
        #     if where != "" :
        #         self.where = where
        #         self.isWhere = True
        #     return True
    
    if __name__ == "__main__":
        """
        测试代码
        """
        sql = simpleToolSql("test")
        f = sql.execute("create table test (id int not null,name text not null,age int);")
        print("ok")
        sql.execute("insert into test (id,name,age) values (?,?,?);",[(1,'abc',15),(2,'bca',16)])
        res = sql.query("select * from test;")
        print(res)
        sql.execute("insert into test (id,name) values (?,?);",(3,'bac'))
        res = sql.query("select * from test where id=?;",(3,))
        print(res)
        sql.close()
    
  • 相关阅读:
    Eclipse-将svn上的项目转化成相应的项目
    Maven-在eclipse创建maven项目
    Html-Css-div标签嵌套浮动div标签时无法撑开外部div的解决
    Html-Css-a标签的使用
    Jquery-获取父级元素parent
    Jquery-获取子元素children,find
    Jquery-获取同级标签prev,prevAll,next,nextAll
    Jquery-处理iframe的高度自适应
    Html-Css-iframe的自适应高度方案
    Html-Css-iframe的使用
  • 原文地址:https://www.cnblogs.com/boxker/p/10542896.html
Copyright © 2011-2022 走看看