zoukankan      html  css  js  c++  java
  • python sqlite3

    import sqlite3
    from datetime import datetime
    #sqlite3
    
    #初始化sqlite3 内存表
    conn = sqlite3.connect(':memory:', check_same_thread=False)
    #开启外键约束
    conn.execute('pragma foreign_keys=ON')
    #创建表 关联外键必须设置主键
    sql = """CREATE TABLE IF NOT EXISTS demo(name TEXT, sex TEXT, heigth INTEGER, idt INTEGER not null primary key, time datetime)"""
    #添加外键操作相关表
    sql2 = """CREATE TABLE IF NOT EXISTS records(id INTEGER not null, idt INTEGER not null, test TEXT, FOREIGN KEY(idt) REFERENCES demo(idt) ON DELETE CASCADE ON UPDATE CASCADE)"""
    #执行
    conn.execute(sql2)
    conn.execute(sql)
    #提交事务
    conn.commit()
    #插入数据
    time = datetime.now()
    data = [('zhangsan', 'male', 180, 1, time), ('lisi', 'woman', 150, 2, time), ('wangwu', 'male', 190, 3, time)]
    sql = 'insert into demo values(?, ?, ?, ?, ?)'
    
    conn.executemany(sql, data)
    conn.execute('insert into records values(:id, :idt, :test)', {'id': 1, 'idt': 3, 'test': 'test'})
    conn.commit()
    #删除测试
    conn.execute('delete from demo where idt=3')
    #取所有数据
    sql = 'select * from records;'
    cursor = conn.cursor()
    
    cursor.execute(sql)
    
    conn.commit()
    #关联外键数据同时删除
    print(cursor.fetchall())
    
    #联合查询
    #关闭连接
    conn.close()
  • 相关阅读:
    ESXi 5.5 添加驱动
    .net static 变量
    socket
    .net HttpWebRequest 模拟form提交
    node.js form 上传
    .net Thrift 之旅 (二) TServer
    SVN服务器从Windows迁移到LInux
    如何在windows上安装部署设置SVN服务器
    [Ubuntu]在Ubuntu下搭建自己的源服务器
    Eclipse总是自动关闭
  • 原文地址:https://www.cnblogs.com/alplf123/p/9039938.html
Copyright © 2011-2022 走看看