zoukankan      html  css  js  c++  java
  • sqlite3相应的注意点

    注意:sqlite3在execute("sql语句")   sqlite3只支持?,:=占位符 不支持%s     但是sql语句作为变量execute(sql)里只可以用%s作占位符,等号的另一遍要加a = 'b'

    模糊查询

    sql语句like用法

     sql = "select %s,%s,%s,%s,%s,%s,%s from product where HisunPN like '%%%s%%' " % (self.sale_power[0], self.sale_power[1],
                                                                                                                   self.sale_power[2], self.sale_power[3],
                                                                                                                   self.sale_power[4], self.sale_power[5],
                                                                                                                  self.sale_power[6], value)
                    result = self.first.cursor.execute(sql).fetchall()

    显示结果为'%字段%', 上述查询结果为关键词里包含字段的

     

    sql语句修改操作

    update用法

    用占位符?

    self.cursor.execute("UpDATE userinfo set password = ? where usename = ?", (pwd, username))

    注意如果用%s 

     sql = "UpDATE product set %s='%s' where HisunPN='%s' " % (name, value, HisunPN)
                    print(sql)
                    self.cursor.execute(sql)

    插入数据的时候,如果字段对应,可以省略(col,col1....)

    self.cursor.execute("insert into userinfo values (?, ?, ?)", (username, pwd, power))

    注意:在实际项目中,执行数据库操作脚本都需要加上commit才能刷新,但是同样也需要加上try捕捉数据库的异常,如果出现异常需要进行rollback回滚操作

    self.conn.rollback()

  • 相关阅读:
    关于代码片段
    感谢visual studio(git插件)救我一命
    SRX一些配置命令
    .NET Core Policy和Claim
    .NET Core Identity 用户管理和策略
    .NET Core基础配置、注册服务、中间件、ViewComponent、DbContext
    table非常细边框
    js数字转大写金额
    蓝牙开发
    Laravel artisan 命令
  • 原文地址:https://www.cnblogs.com/cjj-zyj/p/10097688.html
Copyright © 2011-2022 走看看