python3 SQLite3

目录

  • 操作SQLite3创建表
  • 插入数据
  • 查询数据
  • 修改删除数据

操作SQLite3创建表

import sqlite3

con  = sqlite3.connect('first.db')  # 在硬盘上创建连接

cur = con.cursor()                  # 创建游标对象,执行sql

# sql语句
sql = '''create table t_person(
            pno INTEGER primary key autoincrement,
            pname VARCHAR not null,
            age INTEGER
        )'''
try:
    # 执行sql
    cur.execute(sql)
    print('创建成功')
except Exception as e:
    print(e)
    print('创建失败')
finally:
    #关闭游标
    cur.close()
    #关闭连接
    con.close()

插入数据

import sqlite3

con  = sqlite3.connect('first.db')  # 在硬盘上创建连接

cur = con.cursor()                  # 创建游标对象,执行sql

# sql语句
sql = 'insert into t_person(pname, age) values (?,?)'
# 在创建表时,设置主键自增,这里就不插入pno的值了

try:
    # 执行sql
    cur.execute(sql,('zp_2', 22))
    # 插入多条数据
    cur.executemany(sql, [('zp_3', 22), ('zp_4', 22), ('zp_5', 22)])
    # 提交事务
    con.commit()
    print('插入成功')
except Exception as e:
    print(e)
    print('插入失败')
    con.rollback() #回滚
finally:
    #关闭游标
    cur.close()
    #关闭连接
    con.close()

查看一下
python3 SQLite3_第1张图片

查询数据

import sqlite3

con  = sqlite3.connect('first.db')  # 在硬盘上创建连接

cur = con.cursor()                  # 创建游标对象,执行sql

# sql语句
sql = 'select * from t_person'

try:
    # 执行sql
    cur.execute(sql)
    # 获取结果
    
    person_one = cur.fetchone()
    print('打印第一条数据')
    print(person_one)

    person_all = cur.fetchall()
    print('打印剩余全部数据')
    print(person_all)
    
    print('查询成功')
except Exception as e:
    print(e)
    print('查询失败')
finally:
    #关闭游标
    cur.close()
    #关闭连接
    con.close()

修改删除数据

import sqlite3

con  = sqlite3.connect('first.db')  # 在硬盘上创建连接

cur = con.cursor()                  # 创建游标对象,执行sql

# sql语句
sql = 'select * from t_person'
update_sql = 'update t_person set pname=? where pno=?'
delete_sql = 'delete from t_person where pno=?'

try:
    # 执行sql
    cur.execute(sql)
    person_one = cur.fetchone()
    print('打印第一条数据')
    print(person_one)

    cur.execute(update_sql,('update_1', 1))  #修改第一条数据
    #提交
    con.commit()
    
    print('修改成功')

    cur.execute(sql)
    person_one = cur.fetchone()
    print('打印第一条数据')
    print(person_one)

    cur.execute(sql)
    person_all = cur.fetchall()
    print('打印全部数据')
    print(person_all)

    # 删除第一条数据
    cur.execute(delete_sql, (1,)) #参数时元组类型,需要加逗号
    con.commit()
    print('删除成功')

    cur.execute(sql)
    person_all = cur.fetchall()
    print('打印全部数据')
    print(person_all)

except Exception as e:
    print(e)
    print('修改失败')
    con.rollback()
finally:
    #关闭游标
    cur.close()
    #关闭连接
    con.close()

结果
python3 SQLite3_第2张图片

你可能感兴趣的:(python,SQLite3)