数据库知识初步汇总

创建标签表格:

sql 复制代码
CREATE TABLE IF NOT EXISTS labels (
    标签ID INTEGER PRIMARY KEY,
    标签名称 TEXT
);

创建文本与标签的关联表格:

sql 复制代码
CREATE TABLE IF NOT EXISTS 文本标签 (
    文本ID INTEGER,
    标签ID INTEGER,
    FOREIGN KEY (文本ID) REFERENCES texts(编号),
    FOREIGN KEY (标签ID) REFERENCES labels(标签ID)
);

给文本贴标签:

sql 复制代码
-- 假设文本ID为1的文本贴上了标签ID为1和2的标签
INSERT INTO 文本标签 (文本ID, 标签ID) VALUES (1, 1);
INSERT INTO 文本标签 (文本ID, 标签ID) VALUES (1, 2);

查询特定文本的标签:

sql 复制代码
-- 查询编号为1的文本的标签
SELECT 文本.编号, 文本.文本, labels.标签名称
FROM texts
JOIN 文本标签 ON texts.编号 = 文本标签.文本ID
JOIN labels ON 文本标签.标签ID = labels.标签ID
WHERE 文本.编号 = 1;

复制代码
数据库是
input输入多行文本,允许特殊字符串
按"# ꧂ ꧁"结束一个文本输入
无限循环

你想要创建一个数据库,允许用户输入多行文本,并在输入特殊字符串"# ꧂ ꧁"时结束输入,然后再次开始新的文本输入,是吗?这种情况下,你可以使用以下SQL语句创建一个表格来存储这些文本:

sql 复制代码
CREATE TABLE IF NOT EXISTS 文本输入 (
    编号 INTEGER PRIMARY KEY,
    文本内容 TEXT,
    输入时间 TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

然后,你可以编写一个程序或者脚本来实现无限循环,接受用户的输入并将其插入到数据库中。这里提供一个示例的Python脚本,使用SQLite数据库来实现这个功能:

python 复制代码
import sqlite3

# 连接到数据库文件(如果不存在会自动创建)
conn = sqlite3.connect('text_input.db')
cursor = conn.cursor()

# 创建文本输入表格
cursor.execute('''CREATE TABLE IF NOT EXISTS 文本输入 (
                    编号 INTEGER PRIMARY KEY,
                    文本内容 TEXT,
                    输入时间 TIMESTAMP DEFAULT CURRENT_TIMESTAMP
                )''')

# 无限循环接受用户输入并插入数据库
while True:
    文本 = input('请输入文本内容,以"# ꧂ ꧁"结束:\n')
    if 文本.strip() == '# ꧂ ꧁':
        break
    else:
        # 插入文本到数据库
        cursor.execute('''INSERT INTO 文本输入 (文本内容) VALUES (?)''', (文本,))
        conn.commit()

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

这个Python脚本会持续接受用户输入文本,直到输入"# ꧂ ꧁"时结束并退出循环,然后将文本内容插入到名为"文本输入"的数据库表格中。你可以根据实际需求调整代码和数据库结构。

#有查询和统计行#

如果你想要实现查询和统计已经输入的文本行的功能,你可以修改上面的Python脚本来实现。以下是一个示例,演示如何查询数据库中的文本行以及进行一些基本的统计:

python 复制代码
import sqlite3

# 连接到数据库文件(如果不存在会自动创建)
conn = sqlite3.connect('text_input.db')
cursor = conn.cursor()

# 查询所有文本行
cursor.execute('''SELECT * FROM 文本输入''')
rows = cursor.fetchall()

# 打印所有文本行
print("已输入的文本行:")
for row in rows:
    print(row)

# 统计已输入的文本行数量
num_rows = len(rows)
print("已输入的文本行数量:", num_rows)

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

这个示例Python脚本会查询数据库中的所有文本行,并打印出来。然后,它会统计已输入的文本行的数量并打印出来。你可以根据需要修改这个脚本以实现更复杂的查询和统计功能。

相关推荐
No0d1es1 天前
2025年12月 GESP CCF编程能力等级认证Python五级真题
开发语言·python·青少年编程·等级考试·gesp·ccf
曹牧1 天前
Oracle 大表数据分区存储
数据库·oracle
No0d1es1 天前
2025年12月 GESP CCF编程能力等级认证Python一级真题
开发语言·python·青少年编程·gesp·ccf
阿蔹1 天前
泰和昌商城接口自动化项目框架介绍
运维·自动化
win x1 天前
Redis 持久化
数据库·redis·缓存
程序猿20231 天前
MySQL的锁(行锁)
数据库·mysql
W001hhh1 天前
数据库实训Day005下午
数据库
hz_zhangrl1 天前
CCF-GESP 等级考试 2025年12月认证C++六级真题解析
c++·算法·青少年编程·程序设计·gesp·c++六级·gesp2025年12月
lechcat1 天前
多角色协同巡检流程设计技术教程
大数据·数据库·数据挖掘
小沈同学呀1 天前
基于时间片划分的提醒算法设计与实现
服务器·数据库·算法