gpt4 book ai didi

java - 使用 UserInput SQL 数据库更改整数

转载 作者:行者123 更新时间:2023-11-29 23:30:45 25 4
gpt4 key购买 nike

我是 Java 的新手,所以请原谅我犯的任何错误。

我目前正在开发一个自动化的 TODO 列表应用程序,它可以对用户输入的任务列表进行排序,并优先考虑更重要的任务。

用户添加任务后,它会被添加到SQLite 数据库。我想知道如何将整数与每个单独的任务相关联。

例如:假设有一个名为 Priority 的整数,其默认值为 10。添加的每个任务都以默认值 Priority = 10 开始,但会根据用户需求进行更改。

因此,如果一个任务的默认值是 Priority = 10,则 Priority 可能会增加 11,而同一列表中的另一个任务从 Priority 开始> = 10 可能会减少到 Priority = 9。我非常不确定如何才能使添加到数据库中的每个任务都具有定期更改的单独值。

如果您希望我进一步阐述这一点,我很乐意,因为我的解释可能令人困惑。

提前致谢!

最佳答案

您或许可以使用触发器 SQL As Understood By SQLite - CREATE TRIGGER

例如,考虑以下内容:-

DROP TABLE IF EXISTS tasks;
CREATE TABLE IF NOT EXISTS tasks (ID INTEGER PRIMARY KEY, name TEXT, user_reference INTEGER, priority DEFAULT 10);
DROP TRIGGER IF EXISTS set_task_priority;

-- Create the Trigger
CREATE TRIGGER IF NOT EXISTS set_task_priority
AFTER INSERT ON tasks
WHEN ((SELECT count() FROM tasks WHERE user_reference = new.user_reference) > 3)
BEGIN
UPDATE tasks SET priority = new.priority + (SELECT count() FROM tasks WHERE user_reference = new.user_reference)
WHERE ID = new.ID
;
END;

-- Add some data to test the trigger
INSERT INTO tasks (user_reference,name) VALUES
(1,'CLEAN'),(1,'TIDY'),(1,'VACUMN'),(1,'WASH'),(1,'THINK'),
(2,'CLEAN'),(2,'TIDY'),(2,'VACUMN'),(2,'WASH'),
(3,'CLEAN'),(3,'TIDY'),(3,'VACUMN'),(3,'WASH'),(3,'THINK'),(3,'STUDY'),
(3,'CLEAN'),(3,'TIDY'),(3,'VACUMN'),(3,'WASH'),(3,'THINK'),(3,'STUDY'),
(3,'CLEAN'),(3,'TIDY'),(3,'VACUMN'),(3,'WASH'),(3,'THINK'),(3,'STUDY'),
(3,'CLEAN'),(3,'TIDY'),(3,'VACUMN'),(3,'WASH'),(3,'THINK'),(3,'STUDY')
;
INSERT INTO tasks (user_reference,name) VALUES (3,'SLEEP');
SELECT * FROM tasks;
  • 请注意,这并不是要解决您的问题(正如您所说的那样没有解释),而是一个 TRIGGER 如何自动应用更改的示例(在本例中是在插入一行之后)。

以下结果:-

enter image description here

你说

I'd like to know how I could associate an Integer with each individual task.

上面的每个任务都有它自己的唯一整数,rowid id 或者在上面的例子中,id 作为 rowid 的别名。 Rowid Tables .

甚至可能是这样的:-

CREATE TABLE IF NOT EXISTS tasks (ID INTEGER PRIMARY KEY, name TEXT, user_reference INTEGER, priority DEFAULT (ABS(random() % 100)));

关于java - 使用 UserInput SQL 数据库更改整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52730459/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com