是否可以在某处以某种方式添加评论?
在使用 MySQL 时,我不会假装自己是任何专家,当然也不会整天花在它上面。我经常忘记我打算如何使用列(通常是位列),如果我可以添加评论以提醒我 1 是好还是坏,我会非常兴奋。
如果它只出现在“显示创建表格”之类的内容中,我会很高兴,但表格结构中的任何模糊位置都会比我桌子上当前的便利贴更好、更容易找到。
http://dev.mysql.com/doc/refman/5.0/en/create-table.html
table_option:
{ENGINE|TYPE} [=] engine_name
| AUTO_INCREMENT [=] value
| AVG_ROW_LENGTH [=] value
| [DEFAULT] CHARACTER SET [=] charset_name
| CHECKSUM [=] {0 | 1}
| [DEFAULT] COLLATE [=] collation_name
| COMMENT [=] 'string'
例子:
CREATE TABLE foo (
id int(10) NOT NULL auto_increment COMMENT 'unique ID for each foo entry',
bar varchar(255) default NULL COMMENT 'the bar of the foo',
....
) TYPE=MyISAM;
您可以评论列和表:
CREATE TABLE example (
example_column INT COMMENT="This is an example column",
another_column VARCHAR COMMENT="One more column"
) TYPE=MYISAM COMMENT="This is a comment about table";
MySQL 支持对将显示在 show create 上的表和列的注释:
create table example (field1 char(3) comment 'first field') comment='example table'
这是一个老歌,关于如何更新列评论或创建带有评论的表格有很多回应。但是关于如何查看评论的给出的答案相当糟糕
查看评论的最简单方法是使用带有 FULL 关键字的SHOW COLUMNS :
SHOW FULL COLUMNS FROM mytable
只有在删除等号后,最高投票的答案才对我有用。我的工作示例是
CREATE TABLE `example` (
`id` int(11) NOT NULL,
`two` varchar(255) COMMENT "comment text",
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
您确定您不想使用 ENUM 列吗?好的 MySQL 表应该是自记录的。
另一种方法是注释具有用于定义表的 SQL 的模式文件(我假设你有这些,并且你没有使用 PHPMyAdmin 来动态增长表模式......)
但是,如果您坚持,INFORMATION_SCHEMA COLUMNS表,特别是 COLUMN_COMMENT 列,可能就是您要查找的内容。虽然它是专有的 MySQL 语法,所以我倾向于避免它(尽管数据库互操作性的想法真的是个笑话)。
如果您使用 MySQL Administrator 工具来管理/编辑您的数据库,那么每当您使用表编辑器时,每列的注释都会自动显示/可编辑。
经测试。这行得通。
CREATE TABLE `table_with_comment` (
`id` int(11) NOT NULL,
`column_a` varchar(255) DEFAULT NULL COMMENT 'comment comlumn text',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='This is a table comment';
如果您到这里寻找 DATABASE/SCHEMA 中的评论,MySQL 不支持它,但 MariaDB 中支持它: