Sqlite 如何创建动态数据库?
我想创建一个动态数据库 在此基础上,将其作为步骤或流程 如何通过存储查询或任何其他方式创建此数据库 我需要一个程序化的 1) 健康食谱分类表Sqlite 如何创建动态数据库?,sqlite,database-design,Sqlite,Database Design,我想创建一个动态数据库 在此基础上,将其作为步骤或流程 如何通过存储查询或任何其他方式创建此数据库 我需要一个程序化的 1) 健康食谱分类表 1)BreakFast 2)Lunch 3)Dinner 4)chicken & turkey 5)Dessert ........... 2) 早餐桌 - orange and vanilla protein oatmeal -chili-chocolote protein oatmeal ....
1)BreakFast
2)Lunch
3)Dinner
4)chicken & turkey
5)Dessert
...........
2) 早餐桌
- orange and vanilla protein oatmeal
-chili-chocolote protein oatmeal
.....
3) -橙色和香草蛋白燕麦桌
-Ingredients
-directions
提前感谢大家 我知道您希望使用SQLite。运行SQLite客户端(Sqliteman或类似),创建一个新数据库,并以脚本形式运行以下命令:
create table category (
category_id integer not null primary key,
name varchar(80) not null
);
create table meal (
meal_id integer not null primary key,
name varchar(80) not null,
directions text
);
create table meal_category (
meal_category_id integer primary key,
meal_id integer not null references meal,
category_id integer not null references category
);
然后,您可以像这样插入数据:
insert into category (category_id, name) values (1, 'Breakfast');
insert into category (category_id, name) values (2, 'Lunch');
insert into meal (meal_id, name) values (1, 'Orange and vanilla protein oatmeal');
insert into meal (meal_id, name) values (2, 'Chili-chocolote protein oatmeal');
insert into meal_category (meal_category_id, meal_id, category_id) values (1, 1, 1); -- meal 1 is a breakfast
insert into meal_category (meal_category_id, meal_id, category_id) values (2, 2, 1); -- meal 2 is a breakfast
select m.name || ' is ' || c.name from meal m
join meal_category mc on m.meal_id = mc.meal_id
join category c on mc.category_id = c.category_id;
然后像这样查询:
insert into category (category_id, name) values (1, 'Breakfast');
insert into category (category_id, name) values (2, 'Lunch');
insert into meal (meal_id, name) values (1, 'Orange and vanilla protein oatmeal');
insert into meal (meal_id, name) values (2, 'Chili-chocolote protein oatmeal');
insert into meal_category (meal_category_id, meal_id, category_id) values (1, 1, 1); -- meal 1 is a breakfast
insert into meal_category (meal_category_id, meal_id, category_id) values (2, 2, 1); -- meal 2 is a breakfast
select m.name || ' is ' || c.name from meal m
join meal_category mc on m.meal_id = mc.meal_id
join category c on mc.category_id = c.category_id;
这是最简单的设计。您可能需要添加其他字段和一些索引-请查看有关SQL操作的教程。无论如何,上面的内容将为您提供一个工作的SQLite数据库
您可能需要“配料”表,该表将保存可用于食谱的任何材料(鸡蛋、面粉、水等)的数据,以及“膳食配料”表,该表将显示膳食中是否应存在某种配料。配方的文本可以保存在deal.recipe字段中
请注意,设计数据库有不同的方法,通常应提供系统的详细规范,以便使用数据库进行良好的设计
最好考虑一下数据库的用途,想从中获取什么样的数据,然后阅读SQL并自己做一些实验。例如,如果你想寻找任何使用面粉的食物,最好将配料放在一张单独的桌子上,与食物相关联——就像一个类别与一顿饭相关联一样,这被称为“多对多关系”。但是,如果您不关心这样的功能,那么可以将菜谱和配料列表都放在dine.recipe字段中。数据库的设计应该反映您的需求和您想要拥有模型的现实部分。是的,非常感谢您。请再解释一下mysql中的流程!您的问题是专门针对sqlite的。上面的代码是非常通用的sql,可以在mysql中工作,可能需要一些小的调整。您需要查看数据库引擎的教程,并花一点时间在上面,否则您将无法理解它是如何工作的,也无法使用它。请在这项任务上投入一些时间和精力:-)