有人可以告诉我什么是在a中存储许多不同设置的最佳方式 数据库?我应该使用一个带有id,key,value的表吗?
以下是我必须存储的示例:
PageNavigation.Font = "fontRegular";
PageNavigation.FontSize = 14;
PageNavigation.FontColor = 0x000000;
PageNavigation.SubFont = "fontRegular";
PageNavigation.SubFontSize = 12;
PageNavigation.SubFontColor = 0x000000;
PageNavigation.width = 200;
PageNavigation.height = 22;
PageNavigation.spacing = 5;
PageNavigation.LetterSpacing = 0;
PageNavigation.top = 250;
PageNavigation.rightMargin = 24;
PageNavigation.RollOverColor = 0xFF3300;
PageNavigation.ActiveColor = 0xCCCCCC;
PageNavigation.Icon = "/assets/images/arrow_default.png";
PageNavigation.IconLeft = 5;
PageNavigation.TextLeft = 5;
PageNavigation.SubIcon = "";
PageNavigation.SubIconLeft = 5;
PageNavigation.SubTextLeft = 22;
PageViewer.BackgroundColor = 0xe9edee;
PageViewer.ThumbSource = "";
PageViewer.maxVisible = 17;
PageViewer.ThumbWidth = 38;
PageViewer.ThumbHeight = 49;
PageViewer.ThumbActiveBorder = 2;
PageViewer.ThumbActiveBorderColor = 0xEE2233;
PageViewer.ThumbSpacing = 10;
PageViewer.ThumbLeft = 20;
PageViewer.ThumbBorderColor = 0xFF3300;
PageViewer.ThumbBorderSize = 1;
PageViewer.ThumbRollOverColor = 0xDDDDDD;
PageViewer.ThumbActiveColor = 0xCCCCCC;
PageViewer.ThumbSelectColor = 0xCCCCCC;
PageViewer.ThumbShadow = 1;
PageViewer.ThumbLayout = "Layout1";
PageViewer.ButtonLayout = "ButtonLayout1";
我是数据库设计的新手,并不了解学习数据库设计的好资源
干杯, DOM
答案 0 :(得分:0)
我认为最好的是为每种类型的设置创建一个字段。这是做什么的,
ETC
答案 1 :(得分:0)
是的,这会起作用,但缺点是设置值没有合适的类型。您必须将所有内容声明为VARCHAR,您的应用程序必须检查值的有效性。
当然可以为每种设置类型创建一个表,例如
create table Settings
(
settings_id primary key int not null,
name VARCHAR(255) not null,
);
create table DoubleValues
(
value double not null
fk_setting int not null;
);
create table ColorValues
(
value char(8) not null
fk_setting int not null;
);
..
另一种方法是创建一个包含一行的表,每个设置都有一列。这样您就可以正确输入,并可以在数据库级别添加检查约束。但是我觉得这个更难维护和扩展,所以我更喜欢第一个,但一如既往,这取决于你的具体需求。
另一种方法是使用简单的文本文件并将设置读入哈希表,这是目前最快的方法。也许你可以看看像MongoDb或CouchDb这样的noSQL数据库。
想一想您的设置是静态的还是插入或删除新设置键的频率。