【问题标题】:Can I have specific selectable values for a column in MySQL我可以为 MySQL 中的列设置特定的可选值吗
【发布时间】:2014-05-08 00:57:35
【问题描述】:

基本上正如标题所说,在 MySQL 中,我可以为列指定特定范围的值,以便在添加记录时可以选择一个选项。

我才刚刚开始了解 MySQL,而且我知道您可以执行此 MS-Access。我不确定,但在设计时我是否必须在“长度/值”列中添加一些特殊内容?如果可以,我在哪里可以指定哪些值可以选择?

如果没有,是否有比创建新表并将指定值关联为外键更有效的解决方法。

干杯

【问题讨论】:

标签: php mysql sql database database-design


【解决方案1】:

MS Access 将几个功能组合到一个程序中:

  • 数据库引擎 (MS Jet)
  • 带有编程语言 (VBA) 的编程环境
  • 表格编辑器
  • 表格数据编辑器
  • 表单编辑器
  • 报告编辑器
  • 查询编辑器
  • ...更多

MySQL 只是一个数据库引擎。所以没有自然的“选择框”来输入数据。这需要来自您的编程环境或表单生成器。

也就是说,支持这种数据类型:使用ENUM - 例如CREATE TABLE test (saluation ENUM ('Mr.', 'Mrs.'));

【讨论】:

  • 完美就是我所需要的。对不起,如果我不是那么清楚,但这就是我所追求的。干杯
  • 无论如何我可以拥有这个但能够保存多个值?
  • 一个 ENUM 可以有许多不同的元素,例如ENUM ('A', 'B', 'C', 'D', 'E', 'F')
  • 我不确定我是否理解正确。在发生 ENUM 选择的单元格中,我可以让它有多个 ENUM 值吗? Eugen,如果是这样,你是这样做的吗?
  • 啊,我明白了:你想在一个字段中存储一个 list。这几乎不是一个好主意,使用连接表,它有自己的 PK,表的 PK 作为 FK 和 ENUM 字段。要添加值,请在此表中创建一条记录。
猜你喜欢
  • 1970-01-01
  • 2020-10-11
  • 1970-01-01
  • 2011-08-20
  • 2011-04-05
  • 2018-09-11
  • 1970-01-01
  • 1970-01-01
  • 2019-11-21
相关资源
最近更新 更多