sqlite3数据库使用

 数据库的连接

导入模块

import sqlite3  #导入模块
connnect = sqlite3.connect('test.db') #创建与数据库的连接

如果这个数据库存在,就连接这个数据库,如果这个数据库不存在,就直接新建一个数据库,".db"是sqlite3数据库的文件格式。

代码格式:

变量名=sqlite3.connect("数据库名.db")

创建游标

cursor = connect.cursor() 

在创建与数据库之间的连接后,需要一个游标来执行sql命令,括号内填写sql命令

代码格式:

变量名 = 数据库连接的变量名.cursor() 


数据库sql命令

新建表格

sql_order = '''CREATR TABLE roster(序号 TEXT,
                                   姓名 TEXT,
                                   性别 TEXT,
                                   籍贯 TEXT);'''

cursor.execute(sql_order)

roster--为表格的名称

序号、姓名、性别--为表格中的列名称

TEXT--为数据在表格中的存储格式

sqlite3中的数据格式  

格式含义
NULL一个NULL值
INTEGER整数
REAL浮点值(小数)
TEXT文本格式
BLOB值是一个blob数据,完全根据值的输入存储

向数据库中的表格添加数据

Data = [("1", "张山", "男", "山东"),
        ("2", "李诗", "女", "北京"),
        ("3", "王午", "男", "北京")]

cursor.executemany('''INSERT INTO roster VALUES(?,?,?,?)''', Data)
connect.commit()

(?,?,?) -- 占位符,需要与对应表格中的列数对应,过多过少都会报错

connect.commit() -- 数据保存,如果没有添加这行代码数据就添加不成功

修改数据

cursor.execute(''' UPDATE roster SET 姓名="王武" where 序号="3" ''')

姓名="王武" -- 这是需要的数据,roster中的“王午”修改“王武”

序号=“3” -- 用来数据定位,告诉计算机,修改的数据在序号为“3”的位置

获取数据

获取所有数据

cursor.execute("select * from roster")
Data_list = cursor.fetchall()
for i in Data_list:  
    print(i)

获取“姓名”这一列数据

cursor.execute("select 姓名 from roster")
Data_list = cursor.fetchall()
for i in Data_list:  
    print(i)

获取“姓名+性别”两列列数据

cursor.execute("select 姓名, 性别 from roster")
Data_list = cursor.fetchall()
for i in Data_list:  
    print(i)

查询数据

查询表中男的共有几人

cursor.execute("select * from roster where 性别='男'")
Data_list = cursor.fetchall()
print(len(Data_list))

查询来自北京的共有几人

cursor.execute("select * from roster where 籍贯='北京'")
Data_list = cursor.fetchall()
print(len(Data_list))

删除数据

删除所有数据

cursor.execute("delete from roster").rowcount

删除个别数据

cursor.execute("delete from roster where 姓名='张山' ")

删除表格

cursor.execute('drop table roster')

查看数据库中的表格

cursor.execute('select name from sqlite_master where type="table" ')
table_list = cursor.fetchall()
print(table_list)

在已有表格中新增列

cursor.execute(''' alter table roster add column "年龄" ''')

### 回答1: Linux下可以使用命令行工具sqlite3来操作SQLite数据库SQLite是一种轻量级的关系型数据库,它的数据存储在单个文件中,非常适合小型项目或嵌入式设备。 要使用sqlite3,首先需要安装它。在Ubuntu或Debian系统中,可以使用以下命令安装: sudo apt-get install sqlite3 安装完成后,可以使用以下命令打开一个SQLite数据库文件: sqlite3 /path/to/database/file.db 在sqlite3命令行中,可以执行SQL语句来创建表、插入数据、查询数据等操作。例如,创建一个名为“users”的表: CREATE TABLE users ( id INTEGER PRIMARY KEY, name TEXT, age INTEGER ); 插入一条数据: INSERT INTO users (name, age) VALUES ('Tom', 25); 查询数据: SELECT * FROM users; 更多操作可以参考SQLite官方文档。 ### 回答2: SQLite3是一种内嵌式的关系型数据库,它拥有小巧灵活、可移植性强的特点,并且在很多平台上都可以使用。常见的Linux操作系统中一般会自带SQLite3,因此我们可以利用这一点轻松地在 Linux 系统中使用 SQLite3 数据库。 首先我们需要在命令行界面下打开 SQLite 命令行工具,这可以通过在终端中输入 sqlite3 命令实现。此时会进入 SQLite3 的 shell 窗口,在这个窗口中,我们可以输入 SQL 语句和 SQLite 提供的命令来操作数据库。 接下来,我们可以创建一个新的数据库文件。可以使用如下命令创建数据库: ``` sqlite3 database.db ``` 这个命令将会在当前目录下创建一个名为 database.db 的 SQLite3 数据库文件。如果指定的文件已经存在,这个命令会直接打开这个数据库文件。 接着,我们可以使用 SQLite3 的语言来执行数据库操作,例如我们可以使用如下命令创建一个名为 users 的表格: ``` CREATE TABLE users ( id INTEGER PRIMARY KEY, name TEXT NOT NULL, age INTEGER NOT NULL ); ``` 在这个命令中,我们首先指定了表的名称为 users,并用括号包含了我们想要存储的每一个字段。我们定义了三个字段,分别是 id、name 和 age。其中,id 字段被定义为 PRIMARY KEY,这意味着它将作为这个表格的主键,确保每一行数据都具备唯一性。而 name 和 age 字段则分别被定义为 TEXT 和 INTEGER 类型,并且我们也为它们定义了 NOT NULL 属性,禁止这两个字段为空值。 我们可以使用 INSERT INTO 语句向 users 表格中添加数据: ``` INSERT INTO users (name, age) VALUES ("Tom", 20); ``` 在这个例子中,我们向 users 表格中添加了一行数据,字段 name 的值为 "Tom",age 的值为 20。我们没有指定 id 字段,因为它是自动生成的。若果我们需要查看 users 表格中的所有数据,可以使用 SELECT * FROM users 命令。 总的来说,SQLite3 是一个功能强大而且简单易用的数据库系统,并且它适用于多种不同的平台。在 Linux 操作系统上,SQLite3 是一个非常好的选择,因为它可以帮助我们轻松地管理和操作一些小型的数据。它还可以通过 Python 和其他语言的 API 来非常简单地实现许多数据操作任务。 ### 回答3: Linux下使用SQLite3数据库是一种比较流行的数据库运用方式,因为SQLite3是一款轻量级的、开源的数据库,数据存储在单一文件中,所以在单个用户下使用SQLite3是非常方便的。 SQLite3的安装过程很简单,只需要通过apt-get命令进行安装即可。在安装完成后,就可以在linux服务器中使用sqlite3命令行进行数据库的管理。 SQLite3的使用可以分为以下几个步骤: 1. 创建数据库 使用sqlite3数据库之前,需要先创建一个数据库文件,可以使用如下的命令创建: $ sqlite3 test.db 2. 创建数据表 使用CREATE TABLE语句可以在数据库中创建数据表,例如: CREATE TABLE users ( id INT PRIMARY KEY, name TEXT, age INT ); 3. 插入数据 插入数据可以使用INSERT INTO语句,例如: INSERT INTO users(id, name, age) VALUES (1, 'Tom', 20); 4. 查询数据 可以使用SELECT语句查询数据,例如: SELECT * FROM users; 5. 更新数据 使用UPDATE语句可以更新数据,例如: UPDATE users SET age = 21 WHERE id = 1; 6. 删除数据 使用DELETE语句可以删除数据,例如: DELETE FROM users WHERE id = 1; SQLite3在使用过程中有许多的优点,比如轻量级、文件型数据库、高性能等等。不过也有些缺点,比如不支持并发访问、不支持存储过程等。所以,如何选择数据库还需要结合具体应用场景来进行选择。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值