4

我正在导出一个由其他人创建的数据库,其中包含一些视图,但导出的 SQL 稍后将(在导入时)创建一个表而不是视图。

代码:

DROP VIEW IF EXISTS `listado_sorteos`;
CREATE TABLE IF NOT EXISTS `listado_sorteos` (
`idsorteo` int(10) unsigned
,`fecha_alta` datetime
,`idaplicacion` int(10) unsigned
,`fecha_sorteo` datetime
,`descripcion` varchar(45)
);

在我看来这是不对的,因为它创建了一个表格而不是一个视图......但我是对的吗?如果没有,我必须从 phpMyAdmin 中导出视图有什么解决方案?

4

4 回答 4

3

我有一个类似的问题。当我导出整个数据库时,sql 转储包含用于创建视图的代码,然后是进一步的代码以创建与视图具有相同数据的表。结果意味着我无法毫无错误地导入转储。

我当前的解决方法是从要导出的表列表中取消选择视图的名称。这将导出没有视图的数据库。然后我单击每个视图并单击导出。然后我可以重新导入主转储,然后是每个视图(如果我真的想要,我可以将其粘贴到主转储 sql 中)

希望有人提出更好的答案

于 2012-12-24T03:01:08.583 回答
3

我有同样的问题,并通过以下解决方案解决。要导出视图,首先我们需要将其转换为表格,然后我们可以轻松地导出该表格。将视图转换为表格

CREATE table table-name 
SELECT * FROM view-name
于 2013-08-06T10:17:54.147 回答
1

好的 - 我已经根据我的情况解决了这个问题。阅读 PMA 错误页面,我发现我正在使用的旧版本 PMA 的导出例程中有一个错误。

解决方案:更新 PMA。(很简单,检查您的 MySQL 和 PHP 是否兼容,获取最新版本并将文件复制到您现有的 phpMyAdmin 文件夹。如果您愿意,请重新启动)。

于 2012-12-24T16:43:43.863 回答
0

我还发现 PMA 没有正确导出视图。最近,我决定只使用 PMA 导出表。令我惊讶的是,表格和视图都被完美地导出了。对一次性事故不满意,我一次又一次地做到了,一切都完美出口。我不知道为什么会发生这种情况,但永远不应该质疑礼物功能。

于 2018-10-10T15:46:01.540 回答