我想在 MySQL 数据库中的表中添加一个新列,该列应该获取同一个表中另一列的值。这可能吗?如果是这样,你怎么做?
Sumit Garg
问问题
6652 次
4 回答
6
从 MySQL 5.0.2 开始,您可以编写一个链接到 a 的存储过程,TRIGGER
该过程可以在每次插入一行时检查新列,如果没有为新列提供值,则自动将另一列的值复制到新列中。
于 2009-03-18T22:59:57.113 回答
3
您可以使用以下两个命令来完成您的工作。
此命令将用于在您的表中添加新列。记住要复制的数据类型,以便在新列中使用这些数据类型。
ALTER TABLE table_name ADD new_column_name VARCHAR(60);
2:此命令将数据从旧列名复制到新列名。
UPDATE table_name SET new_column_name = old_column_name;
然后如果要删除上一列,则可以使用以下命令
ALTER TABLE table_name DROP COLUMN old_column_name;
于 2013-01-22T07:21:59.657 回答
2
截至 20101212 mysql 不支持默认 2 个时间戳列,这意味着您不能在同一张表上执行“创建”和“更新”。
如果这是您尝试做的事情,那么使用存储过程的触发器就是要走的路。
于 2010-12-13T06:51:15.860 回答
1
创建一个视图,您可以两次选择同一列并为其命名,然后应用程序可以使用视图而不是直接使用表。
于 2010-07-08T01:06:44.663 回答