(MySQL)以某种方式命名了数据库默认值并且根本无法使用它,因为 MySQL 工作台认为我使用默认数据类型
Posted
技术标签:
【中文标题】(MySQL)以某种方式命名了数据库默认值并且根本无法使用它,因为 MySQL 工作台认为我使用默认数据类型【英文标题】:(MySQL) named a database default somehow and cant work with it at all because MySQL workbench thinks im using the default data tyoe 【发布时间】:2020-06-20 03:55:49 【问题描述】:基本上听起来像 the database is named default
当我建立连接时它已经存在并且其中的表无法访问。
我已经尝试将表移动到另一个数据库,但是 mysql 不承认当我输入默认值时,我指的是数据库而不是 mysql 中的数据类型。
有什么帮助吗?我不知何故搞砸了,不知道如何解决它,也没有在网上找到类似这个问题的其他任何东西。
【问题讨论】:
【参考方案1】:您可以使用任何SQL reserved keyword 作为标识符,但必须将它们括在反引号中:
SELECT ... FROM `default`.admin ...
如果您将表移动到另一个名称与保留关键字不冲突的模式,则会更简单。
很遗憾,MySQL 中没有 RENAME SCHEMA 语句。您必须创建一个新架构,然后重命名 TABLE 才能将它们一一移动。
CREATE SCHEMA my_awesome_schema;
RENAME TABLE `default`.admin TO my_awesome_schema.admin;
...same for other tables...
【讨论】:
以上是关于(MySQL)以某种方式命名了数据库默认值并且根本无法使用它,因为 MySQL 工作台认为我使用默认数据类型的主要内容,如果未能解决你的问题,请参考以下文章