Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 我可以为MySQL中的列提供特定的可选值吗_Php_Mysql_Sql_Database_Database Design - Fatal编程技术网

Php 我可以为MySQL中的列提供特定的可选值吗

Php 我可以为MySQL中的列提供特定的可选值吗,php,mysql,sql,database,database-design,Php,Mysql,Sql,Database,Database Design,基本上正如标题所说,在MySQL中,我可以为列指定一个特定的值范围,以便在添加记录时可以选择一个选项 我才刚刚开始了解MySQL,我知道你可以通过MS Access来实现这一点。我不确定,但在设计时,我是否必须在“长度/值”列中添加一些特殊的内容?如果我能做到这一点,我应该在哪里指定哪些值是可选的 如果没有,那么创建一个新表并将指定的值作为外键关联起来是否有更有效的解决方法 CheersMS Access将一些功能组合到一个程序中: 数据库引擎(MS Jet) 使用编程语言(VBA)的编程环境

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

我才刚刚开始了解MySQL,我知道你可以通过MS Access来实现这一点。我不确定,但在设计时,我是否必须在“长度/值”列中添加一些特殊的内容?如果我能做到这一点,我应该在哪里指定哪些值是可选的

如果没有,那么创建一个新表并将指定的值作为外键关联起来是否有更有效的解决方法


Cheers

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

  • 数据库引擎(MS Jet)
  • 使用编程语言(VBA)的编程环境
  • 表格编辑器
  • 表数据编辑器
  • 表单编辑器
  • 报告编辑
  • 查询编辑器
  • 。。。更多
MySQL只是一个数据库引擎。因此,没有自然的“选择框”来输入数据。这需要来自您的编程环境或表单生成器


也就是说,支持这种数据类型:使用
ENUM
——例如
创建表测试(saluation ENUM('Mr.,'Mrs.)

使用
INSERT
触发器,但这取决于数据的性质-另一个表和FK可能是一个更干净的解决方案,这正是我所需要的。对不起,如果我不是很清楚,但这就是我想要的。为什么我可以有这个,但可以保存多个值?一个枚举可以有许多不同的元素,例如
ENUM('A','B','C','D','e','F')
我不确定我是否正确理解它。在枚举选择发生的单元格中,我可以让它具有多个枚举值吗?Eugen,如果是这样的话,你是这样做的吗?啊,我明白了:你想在字段中存储一个列表。这几乎不是一个好主意,使用一个连接表,它有自己的PK,表的PK作为FK和枚举字段。要添加值,请在此表中创建一条记录。