当前位置:首页>python>每天学习一点Python——SQLite数据库操作入门

每天学习一点Python——SQLite数据库操作入门

  • 2026-02-28 01:14:59
每天学习一点Python——SQLite数据库操作入门

每天学习一点Python——SQLite数据库操作入门

大家好!今天我们来学习Python中内置的轻量级数据库SQLite。通过Jupyter Notebook的实战演示,让我们一步步掌握数据库操作的核心概念。

一、连接数据库并获取时间

第一步:导入模块并建立连接

代码:

import sqlite3
connection = sqlite3.connect("test_database.db")
type
(connection)

逐行讲解:

import sqlite3

  • • 这行代码导入了Python内置的SQLite数据库模块
  • • 这个模块是Python自带的,不需要额外安装
connection = sqlite3.connect("test_database.db")
  • • sqlite3.connect()是连接数据库的函数
  • • "test_database.db"是数据库文件名,如果当前目录下没有这个文件,Python会自动创建它
  • • 函数执行后会返回一个Connection对象,我们把它赋值给connection变量
  • • 这个connection变量代表程序与数据库之间的连接通道

type(connection)

  • • 这行代码用来查看connection变量的数据类型
  • • 在Jupyter中直接输入变量名或表达式,就会显示它的值

执行结果:

sqlite3.Connection

结果说明: 输出显示connectionsqlite3.Connection类型的对象,证明我们成功建立了数据库连接。


第二步:创建Cursor对象

代码:

cursor = connection.cursor()
type
(cursor)

逐行讲解:

cursor = connection.cursor()

  • • connection.cursor()是Connection对象的一个方法,用来创建Cursor对象
  • • Cursor可以理解为操作数据库的"手"或"光标"
  • • 我们要通过Cursor来执行SQL语句和获取查询结果
  • • 创建好的Cursor对象赋值给cursor变量

type(cursor)

  • • 查看cursor变量的数据类型

执行结果:

sqlite3.Cursor

结果说明: 输出显示cursorsqlite3.Cursor类型的对象,证明Cursor创建成功,可以开始操作数据库了。


第三步:编写并执行SQL查询

代码:

query = "SELECT datetime('now','localtime');"
results = cursor.execute(query)
results

逐行讲解:

query = "SELECT datetime('now','localtime');"
  • • 这行代码定义了一个字符串变量,名字叫query
  • • 字符串的内容是一条SQL查询语句,作用是从数据库获取当前时间
  • • SELECT是SQL命令,表示要查询数据
  • • datetime('now','localtime')是SQLite的内置函数:
    • • 'now'告诉数据库取当前日期和时间
    • • 'localtime'告诉数据库转换成本地时区
  • • 整条语句以分号;结尾,这是SQL语句的规范写法

results = cursor.execute(query)

  • • cursor.execute()是Cursor对象的方法,用来执行SQL语句
  • • 括号里的query就是上面定义的SQL字符串
  • • 这行代码的意思是:用cursor去执行query里面的SQL命令
  • • 执行后会返回Cursor对象本身,我们把这个返回值赋值给results变量

results

  • • 直接输入变量名results,查看它的内容
  • • 在Jupyter中,这样会显示变量的值

执行结果:

<sqlite3.Cursor at 0x288da395ac0>

结果说明: 输出显示results是一个Cursor对象。注意:这里显示的并不是时间数据,而是一个Cursor对象的引用。后面的十六进制数是它在计算机内存中的地址。


第四步:获取查询结果

代码:

row = results.fetchone()
row

逐行讲解:

row = results.fetchone()

  • • fetchone()是Cursor对象的方法,用来从查询结果中获取一行数据
  • • 每次调用fetchone()都会返回结果数据集的下一行
  • • 返回的数据是一个元组,元组里的每个元素对应一列的值
  • • 这里把获取到的第一行数据赋值给row变量

row

  • • 输入变量名row,查看获取到的内容

执行结果:

('2026-02-20 14:47:14',)

结果说明: 输出显示一个元组,里面有一个元素'2026-02-20 14:47:14'。因为我们的查询只选了一列(时间),所以元组里只有一个元素。

💡 小Tip:注意到元组中最后的逗号了吗?单元素元组无论创建还是显示,都必须有那个逗号,这样才能和普通的括号表达式区分开。


第五步:提取具体数值

代码:

time = row[0]
time

逐行讲解:

time = row[0]

  • • row是一个元组,row[0]表示取元组的第一个元素
  • • 在Python中,元组的索引从0开始,所以row[0]就是第一个元素
  • • 这里把取出来的时间字符串赋值给time变量

time

  • • 输入变量名time,查看它的值

执行结果:

'2026-02-20 14:47:14'

结果说明: 现在显示的是纯字符串格式的时间值,已经从元组中成功提取出来了。


第六步:关闭数据库连接

代码:

connection.close()

逐行讲解:

connection.close()

  • • close()是Connection对象的方法,用来关闭数据库连接,释放系统占用的资源
  • • 如果不关闭连接,程序运行结束后可能还会占用内存和文件句柄

二、使用with语句自动管理连接

with语句的优雅写法

代码:

with sqlite3.connect("test_database.db") as connection:
    cursor = connection.cursor()
    query = "SELECT datetime('now','localtime');"
    results = cursor.execute(query)
    row = results.fetchone()
    time = row[0]

time

逐行讲解:

with sqlite3.connect("test_database.db") as connection:
  • • with是Python的关键字,用来创建上下文管理器
  • • sqlite3.connect("test_database.db")创建数据库连接
  • • as connection把连接对象赋值给connection变量
  • • 这一行的末尾有冒号:,表示下面缩进的代码都属于这个with代码块
  • • 重要特性:当with代码块执行完后,Python会自动关闭连接并提交事务,不需要手动写close()commit()

第2-6行(缩进部分):

  • • cursor = connection.cursor():创建Cursor对象
  • • query = "SELECT datetime('now','localtime');":定义SQL查询语句
  • • results = cursor.execute(query):执行SQL查询
  • • row = results.fetchone():获取第一行数据
  • • time = row[0]:提取时间值

time

  • • 在with代码块外面输入变量名time
  • • 查看之前获取的时间值

执行结果:

'2026-02-20 14:50:49'

结果说明: 虽然with代码块执行完后数据库连接已经自动关闭,但变量time是普通的Python变量,它仍然存在,所以可以在外面正常使用。

💡 小Tip:使用with语句管理数据库连接是最佳实践!它不仅能自动关闭连接,还会自动提交事务,避免因忘记写commit()close()导致的各种问题。


三、创建表和插入数据

不使用with语句的完整操作

代码:

# 要创建的表
create_table = """
CREATE TABLE People(
    FirstName TEXT,
    LastName TEXT,
    Age INT
);
"""


# 插入多条数据

insert_values = """
INSERT INTO People VALUES
    ('Ron', 'Obvious', 42),
    ('Luigi', 'Vercotti', 43),
    ('Arthur', 'Belling', 28);
"""


connection = sqlite3.connect("test_database.db")
cursor = connection.cursor()

cursor.execute(create_table)
cursor.execute(insert_values)

connection.commit()

connection.close()

逐行讲解:

定义创建表的SQL语句:

create_table = """
CREATE TABLE People(
    FirstName TEXT,
    LastName TEXT,
    Age INT
);
"""
  • • 使用三重引号"""定义多行字符串,赋值给变量create_table
  • • 字符串内容是SQL语句,用来创建数据表
  • • CREATE TABLE People:创建一个名为People的表
  • • 括号里定义了三个字段(列):
    • • FirstName TEXT:姓名字段,数据类型是文本
    • • LastName TEXT:名字字段,数据类型是文本
    • • Age INT:年龄字段,数据类型是整数
  • • 每个字段定义用逗号分隔,最后一个后面不需要逗号
  • • 整个语句以分号结尾

定义插入数据的SQL语句:

insert_values = """
INSERT INTO People VALUES
    ('Ron', 'Obvious', 42),
    ('Luigi', 'Vercotti', 43),
    ('Arthur', 'Belling', 28);
"""
  • • 使用三重引号定义多行字符串,赋值给变量insert_values
  • • INSERT INTO People VALUES:向People表中插入数据
  • • 后面跟着三组值,每组用括号括起来,用逗号分隔:
    • • 第一组:('Ron', 'Obvious', 42),对应FirstName、LastName、Age
    • • 第二组:('Luigi', 'Vercotti', 43)
    • • 第三组:('Arthur', 'Belling', 28)
  • • 注意:这是一种SQL语法,一条语句插入多条数据,比多次执行INSERT效率更高

执行操作的代码:

connection = sqlite3.connect("test_database.db")
  • • 连接数据库文件
cursor = connection.cursor()
  • • 创建Cursor对象
cursor.execute(create_table)
  • • 执行创建表的SQL语句
  • • 这会在数据库中创建一个名为People的空表
cursor.execute(insert_values)
  • • 执行插入数据的SQL语句
  • • 这会向People表中插入三条记录
connection.commit()
  • • 提交事务,把更改保存到数据库文件中
  • • 非常重要:如果不调用commit(),表和数据都不会真正保存到硬盘上
connection.close()
  • • 关闭数据库连接

💡 小Tip:在SQL语句中,字符串值必须用单引号括起来!这是SQL语法规则,和Python可以用双引号不同。比如'Ron'是正确的,"Ron"在SQL中可能会出错。


验证数据插入

代码:

connection = sqlite3.connect("test_database.db")
cursor = connection.cursor()

query = "SELECT * FROM People;"
results = cursor.execute(query)

results.fetchall()

逐行讲解:

connection = sqlite3.connect("test_database.db")
  • • 重新连接数据库
cursor = connection.cursor()
  • • 创建新的Cursor对象
query = "SELECT * FROM People;"
  • • 定义查询语句
  • • SELECT *中的*是通配符,表示选择所有列
  • • FROM People表示从People表中查询
  • • 整条语句的意思是:从People表中取出所有列的所有数据
results = cursor.execute(query)
  • • 执行查询语句
results.fetchall()
  • • fetchall()方法获取查询结果中的所有行
  • • 返回的是一个列表,列表中的每个元素是一个元组,代表一行数据

执行结果:

[('Ron', 'Obvious', 42), 
('Luigi', 'Vercotti', 43), 
('Arthur', 'Belling', 28)]

结果说明: 输出显示一个列表,包含三个元组。每个元组对应一条记录,顺序就是插入时的顺序。这证明数据插入成功了。


删除表

代码:

cursor.execute("DROP TABLE People;")
connection.commit()
connection.close()

逐行讲解:

cursor.execute("DROP TABLE People;")
  • • 执行删除表的SQL语句
  • • DROP TABLE People会永久删除整个People表,包括表里的所有数据
  • • 警告:这个操作不可逆,一旦执行就无法恢复
connection.commit()
  • • 提交删除操作,让删除生效
connection.close()
  • • 关闭数据库连接

💡 小Tipconnection.close(不加括号)只是引用这个函数,不会执行关闭操作。正确的写法应该是connection.close()(加括号)。这是一个非常容易犯的错误!


四、使用with语句重新实现

用with语句创建表和插入数据

代码:

with sqlite3.connect("test_database.db") as connection:
    cursor = connection.cursor()
    cursor.execute(create_table)
    cursor.execute(insert_values)

逐行讲解:

with sqlite3.connect("test_database.db") as connection:
  • • 使用with语句连接数据库
  • • 冒号后面缩进的部分都属于这个with代码块
    cursor = connection.cursor()
  • • 创建Cursor对象
    cursor.execute(create_table)
  • • 执行创建表的SQL语句(使用之前定义的create_table变量)
    cursor.execute(insert_values)
  • • 执行插入数据的SQL语句(使用之前定义的insert_values变量)

不需要写commit()close():当with代码块执行完毕后,Python会自动提交事务并关闭连接。


验证插入结果

代码:

connection = sqlite3.connect("test_database.db")
cursor = connection.cursor()

query = "SELECT * FROM People;"
results = cursor.execute(query)

results.fetchall()

执行结果:

[('Ron', 'Obvious', 42), ('Luigi', 'Vercotti', 43), ('Arthur', 'Belling', 28)]

结果说明: 和之前一样,证明with语句同样成功创建了表并插入了数据。


五、fetchone()与fetchall()对比

fetchone()的工作原理

假设我们执行了SELECT * FROM People查询,结果有三行数据:

调用次数
代码
获取的行
返回值
第1次
fetchone()
第1行
('Ron', 'Obvious', 42)
第2次
fetchone()
第2行
('Luigi', 'Vercotti', 43)
第3次
fetchone()
第3行
('Arthur', 'Belling', 28)
第4次
fetchone()
无数据
None

形象理解:fetchone()就像书签,每调用一次就向下移动一行,不能倒退。如果已经读到末尾,再调用就会返回None


处理多行数据的方法对比

方法
代码示例
适用场景
优点
缺点
fetchall()all_rows = cursor.fetchall()
数据量小
一次获取所有,简单直接
数据量大时占用内存多
fetchmany(n)rows = cursor.fetchmany(100)
数据量大
分批获取,控制内存
需要手动管理批次
直接遍历
for row in cursor:通用推荐
内存友好,代码简洁

推荐写法:

cursor.execute("SELECT * FROM People")
for
 row in cursor:
    print
(row)

这种写法不需要手动调用fetchone(),Python会自动逐行处理,无论有多少行数据都能优雅处理。


六、核心知识点速查表

操作
方法
说明
返回值类型
连接数据库
sqlite3.connect()
连接或创建数据库文件
Connection对象
创建Cursor
connection.cursor()
获取操作数据库的"手"
Cursor对象
执行SQL
cursor.execute()
执行单条SQL语句
Cursor对象
获取单行
fetchone()
每次获取一行,游标向下移动
元组或None
获取所有
fetchall()
一次获取所有行
元组列表
批量获取
fetchmany(n)
一次获取n行
元组列表
提交事务
connection.commit()
保存更改(with自动处理)
关闭连接
connection.close()
释放资源(with自动处理)

📦 资源获取提示

关注「码农自习室」,后台回复关键词 Python学习,即可获取本文完整代码及配套练习数据集,一起动手掌握高效数据操作的核心技巧!


❤️ 支持我们

如果觉得本文对你有帮助,欢迎点赞 + 推荐 + 关注,您的支持是我们持续创作优质内容的最大动力!


📚 学习资源说明

本文内容整理自《Python基础教程(第3版)》第15章,所有命令均已实测。

让我们一起坚持学习,每天进步一点点!💪

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-02-28 21:26:32 HTTP/2.0 GET : https://f.mffb.com.cn/a/477243.html
  2. 运行时间 : 0.076084s [ 吞吐率:13.14req/s ] 内存消耗:4,929.72kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=34ddb9df74cb116a935145f971ac3289
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000519s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001028s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000244s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000219s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000527s ]
  6. SELECT * FROM `set` [ RunTime:0.000190s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000515s ]
  8. SELECT * FROM `article` WHERE `id` = 477243 LIMIT 1 [ RunTime:0.000470s ]
  9. UPDATE `article` SET `lasttime` = 1772285192 WHERE `id` = 477243 [ RunTime:0.000781s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 66 LIMIT 1 [ RunTime:0.000229s ]
  11. SELECT * FROM `article` WHERE `id` < 477243 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000435s ]
  12. SELECT * FROM `article` WHERE `id` > 477243 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.001623s ]
  13. SELECT * FROM `article` WHERE `id` < 477243 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.001142s ]
  14. SELECT * FROM `article` WHERE `id` < 477243 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.000797s ]
  15. SELECT * FROM `article` WHERE `id` < 477243 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.000897s ]
0.077742s