如果我修改了一个列类型,是否需要替换相应的视图?
If I modify a column type, do I need to replace the corresponding view?
假设我有 table :
CREATE TABLE `table` (
`IDTable` INTEGER PRIMARY KEY AUTO_INCREMENT,
`date` LONG
);
观点:
CREATE OR REPLACE VIEW `ViewTable` AS SELECT
`table`.`IDTable` ,
`table`.`date`
FROM
`table`;
如果我最终将日期列从 long 修改为 datetime,我是否需要重新运行创建或替换视图?
没有。你可以不理会你的观点。这些类型有效地传递给视图。 MySQL View Documentation 中的 MySQL 文档提供了有关您的查询的更多详细信息。但是,我会注意到来自 MySQL 的文档指出视图在创建时被视为 "frozen"(第 3 段)。因此,您只需要注意,如果您向视图中引用的任何 table 添加新列,并且您打算在视图中使用该列,则需要替换它。
假设我有 table :
CREATE TABLE `table` (
`IDTable` INTEGER PRIMARY KEY AUTO_INCREMENT,
`date` LONG
);
观点:
CREATE OR REPLACE VIEW `ViewTable` AS SELECT
`table`.`IDTable` ,
`table`.`date`
FROM
`table`;
如果我最终将日期列从 long 修改为 datetime,我是否需要重新运行创建或替换视图?
没有。你可以不理会你的观点。这些类型有效地传递给视图。 MySQL View Documentation 中的 MySQL 文档提供了有关您的查询的更多详细信息。但是,我会注意到来自 MySQL 的文档指出视图在创建时被视为 "frozen"(第 3 段)。因此,您只需要注意,如果您向视图中引用的任何 table 添加新列,并且您打算在视图中使用该列,则需要替换它。