更改 table 错误 ERROR 1347 (HY000):'table-name' 不是 mysql 中的 BASE TABLE
alter table error ERROR 1347 (HY000): 'table-name' is not BASE TABLE in mysql
最近我试图向我的数据库的 table 之一添加一列,其中有 316 table 但在以下命令之后:
mysql> ALTER TABLE view_Server ADD rsh_protocol VARCHAR(60);
我收到以下错误:
ERROR 1347 (HY000): 'itop.view_Server' is not BASE TABLE
我所有的搜索都没有成功,就像使用 '``'
一样。所以问题是这个错误的原因是什么?我怎样才能 git 乘坐它?
根据您的 "table" 姓名,您是否正在尝试向视图添加列?
运行 通过每一个:
CREATE TABLE x (id INT, name VARCHAR(255));
INSERT INTO x VALUES (1, 'One');
INSERT INTO x VALUES (2, 'Two');
-- A view with no change of column names
CREATE VIEW y AS SELECT id FROM x;
SELECT * FROM y;
-- Change the view, again using the base table column names
ALTER VIEW y AS SELECT name FROM x;
SELECT * FROM y;
-- Change the view, switching column name from `name` to `theName`
ALTER VIEW y (theName) AS SELECT name FROM x;
SELECT * FROM y;
-- Change the view, switching column name to `anotherName` by aliasing in the SELECT
ALTER VIEW y AS SELECT name anotherName FROM x;
SELECT * FROM y;
最近我试图向我的数据库的 table 之一添加一列,其中有 316 table 但在以下命令之后:
mysql> ALTER TABLE view_Server ADD rsh_protocol VARCHAR(60);
我收到以下错误:
ERROR 1347 (HY000): 'itop.view_Server' is not BASE TABLE
我所有的搜索都没有成功,就像使用 '``'
一样。所以问题是这个错误的原因是什么?我怎样才能 git 乘坐它?
根据您的 "table" 姓名,您是否正在尝试向视图添加列?
运行 通过每一个:
CREATE TABLE x (id INT, name VARCHAR(255));
INSERT INTO x VALUES (1, 'One');
INSERT INTO x VALUES (2, 'Two');
-- A view with no change of column names
CREATE VIEW y AS SELECT id FROM x;
SELECT * FROM y;
-- Change the view, again using the base table column names
ALTER VIEW y AS SELECT name FROM x;
SELECT * FROM y;
-- Change the view, switching column name from `name` to `theName`
ALTER VIEW y (theName) AS SELECT name FROM x;
SELECT * FROM y;
-- Change the view, switching column name to `anotherName` by aliasing in the SELECT
ALTER VIEW y AS SELECT name anotherName FROM x;
SELECT * FROM y;