Sqlite_笔记

2022-11-24  本文已影响0人  lk_erzanml

[toc]

sqlite优点

非常方便,无需安装服务器;可以把他当读写本地文件任意处置,但又比读取文件方便因为数据库支持sql语句;

可视化工具

sqlite studio官网直接下载,简单粗暴;
直接把lk_sqlite_db_1.db文件拖入sqlite studio软件里面就能读取里面的数据;

python操作sqlite

打开数据库

import sqlite3

conn=sqlite3.connect('lk_sqlite_db_1.db')

print("打开数据库成功") #如果没有就是创建如有原来有就是打开

创建表

import sqlite3

conn= sqlite3.connect("lk_sqlite_db_1.db")

c=conn.cursor()

c.execute(
    '''
        create table company(
            id int primary key not null,
            name text not null,
            age int not null,
            address char(50),
            salary real
        );
    '''
)

print("创建表成功")

conn.commit()

conn.close()

插入数据

import sqlite3

conn = sqlite3.connect("lk_sqlite_db_1.db")

c=conn.cursor()

c.execute(
    "insert into company(id,name,age,address,salary) values (1,'per',32,'califoniya',20000.0)"
)
c.execute(
    "insert into company(id,name,age,address,salary) values (2,'li',23,'beijing',1200.0)"
)
c.execute(
    "insert into company(id,name,age,address,salary) values (3,'gou',44,'najing',2300.0)"
)

conn.commit()

conn.close()

查询

import sqlite3

conn = sqlite3.connect("lk_sqlite_db_1.db")

c=conn.cursor()

result=c.execute(
    "select * from company"
)

print(type(result))#<class 'sqlite3.Cursor'>

for i in result:
    print(i,type(i)) #(1, 'per', 32, 'califoniya', 20000.0) <class 'tuple'>


conn.close()

更新操作

import sqlite3

conn = sqlite3.connect("lk_sqlite_db_1.db")

c=conn.cursor()

c.execute(
    "update company set salary=20.0 where id=2"
)

conn.commit()

result=c.execute(
    "select * from company where id=2"
)


for i in result:
    print(i,type(i)) #(1, 'per', 32, 'califoniya', 20000.0) <class 'tuple'>


conn.close()

删除操作

import sqlite3

conn = sqlite3.connect("lk_sqlite_db_1.db")

c=conn.cursor()

c.execute(
    "delete from  company where id=2"
)

conn.commit()

result=c.execute(
    "select * from company"
)


for i in result:
    print(i,type(i)) #(1, 'per', 32, 'califoniya', 20000.0) <class 'tuple'>


conn.close()
上一篇下一篇

猜你喜欢

热点阅读