Cam*_*Cam 23 mysql database organization
构建用于存储管理设置的MySQL表的最佳方法是什么?
像这样?
Setting _|_ Value
setting1 | a
setting2 | b
setting3 | c
setting4 | d
setting5 | e
Run Code Online (Sandbox Code Playgroud)
或者像这样?
|--------|_setting1_|_setting2_|_setting3_|_setting4_|_setting5_|
Settings | a | b | c | d | e |
Run Code Online (Sandbox Code Playgroud)
或者其他一些方式?
Ben*_*ard 24
表名='设置'
name | varchar <-- primary key
value | varchar
Run Code Online (Sandbox Code Playgroud)
然后你可以像这样查询:
SELECT * FROM settings WHERE name = 'default_printer';
Run Code Online (Sandbox Code Playgroud)
这个选项很简单,它可以很好地适应10或10,000个设置.使用另一个选项,您将不得不添加一个新列,这将完全没有浪费时间.
编辑
在您的第一个评论后,您可以选择多个这样的值:
SELECT * FROM settings WHERE name IN ('default_printer','default_page_size');
Run Code Online (Sandbox Code Playgroud)
:-)
将第一个选项 ( Setting, Value) 视为列。但也要考虑添加额外的元列,例如Description(如果您有很多不明确的设置,将会派上用场)、PreviousValue、LastUpdated、UpdatedBy等。
| 归档时间: |
|
| 查看次数: |
11649 次 |
| 最近记录: |