📜  Python SQLite – 使用日期和日期时间(1)

📅  最后修改于: 2023-12-03 15:04:08.800000             🧑  作者: Mango

Python SQLite – 使用日期和日期时间

SQLite 是一个轻量级的关系型数据库管理系统,它是使用 C 语言编写的。Python 中内置了 SQLite 数据库模块,我们可以使用它来管理 SQLite 数据库。在 SQLite 中,日期和日期时间数据类型可以用来存储日期和时间信息。

使用日期和日期时间数据类型

在 SQLite 中,我们可以使用以下两种数据类型来存储日期和日期时间信息:

  • DATE:日期数据类型,格式为 YYYY-MM-DD。
  • DATETIME:日期时间数据类型,格式为 YYYY-MM-DD HH:MM:SS。

以下是创建一个包含日期和日期时间类型的数据表的示例:

import sqlite3

# 连接到 SQLite 数据库
conn = sqlite3.connect('example.db')

# 创建包含日期和日期时间数据类型的数据表
conn.execute('''CREATE TABLE data_table
             (id INT PRIMARY KEY NOT NULL,
             date DATE,
             datetime DATETIME)''')

print("数据表创建成功!")

# 关闭数据库连接
conn.close()
插入日期和日期时间数据

在插入日期和日期时间数据之前,我们需要先将它们转换为字符串。Python 标准库中的 datetime 模块提供了许多有用的函数来操作日期和日期时间。以下是将日期和日期时间数据插入到数据表中的示例:

from datetime import datetime
import sqlite3

# 连接到 SQLite 数据库
conn = sqlite3.connect('example.db')

# 获取 Cursor 对象
cursor = conn.cursor()

# 将当前日期和日期时间插入数据表中
now = datetime.now()
date = now.strftime("%Y-%m-%d")
datetime = now.strftime("%Y-%m-%d %H:%M:%S")
cursor.execute("INSERT INTO data_table (id, date, datetime) VALUES (?, ?, ?)",
               (1, date, datetime))

# 提交事务
conn.commit()

print("数据插入成功!")

# 关闭数据库连接
conn.close()
查询日期和日期时间数据

使用 SQLite 查询日期和日期时间数据和查询其他数据没有任何区别。以下是查询包含日期和日期时间数据表中的数据的示例:

import sqlite3

# 连接到 SQLite 数据库
conn = sqlite3.connect('example.db')

# 获取 Cursor 对象
cursor = conn.cursor()

# 查询数据
cursor.execute("SELECT * FROM data_table")

# 获取查询结果
rows = cursor.fetchall()
for row in rows:
    print(row)

# 关闭数据库连接
conn.close()
总结

这篇教程介绍了如何在 SQLite 数据库中使用日期和日期时间数据类型。通过使用 datetime 模块,我们可以方便地将日期和日期时间数据转换为字符串并插入到数据表中。SQLite 数据库支持日期和日期时间数据类型,我们可以使用标准 SQL 查询这些数据。