得到一个mysql语法错误,不知道为什么

20jt8wwn  于 2021-06-21  发布在  Mysql
关注(0)|答案(2)|浏览(320)

我正在尝试使用此命令将数据库中“我的文章”表中“标题”和“内容”列中的数据复制到另一个数据库中“wp\u posts”列中的“wp\u标题”和“wp\u内容”列中。

INSERT INTO wp_seetheuniverse.dbo.wp_posts ('wp_title', 'wp_content')
SELECT 'title', 'content' FROM seetheuniverse.dbo.articles;

这就是我得到的错误,不知道为什么。

ERROR 1064 (42000): You have an error in your SQL syntax; check the
manual that corresponds to your MySQL server version for the right
syntax to use near '.wp_posts ('wp_title', 'wp_content') SELECT
'title', 'content' FROM seetheuniver' at line 1
lkaoscv7

lkaoscv71#

使用以下查询:
插入dbo.wp\u posts(wp\u title,wp\u content)从dbo.articles中选择title,content;
其中dbo是数据库名,wp\u posts和articles是表。

p8h8hvxi

p8h8hvxi2#

INSERT INTO wp_seetheuniverse.dbo.wp_posts ...

您使用的是由三部分组成的限定表名,如microsoftsqlserver。
在microsoftsqlserver中,有一个 [database].[schema].[table] .
mysql的层次结构少了一层。在mysql中,数据库和模式是一样的。这些术语在mysql中是同义词。
我猜您的数据库(aka schema)是 wp_seetheuniverse . 这看起来像一个wordpress数据库(schema)。这个 dbo schema是microsoftsqlserver中的惯用模式名,而不是mysql中的。
要确认,请在mysql客户端中尝试以下语句:

SHOW DATABASES;

我希望你能让你的代码工作,如果你

INSERT INTO wp_seetheuniverse.wp_posts ...

类似地更改其他表引用,使其 [database].[table] .

相关问题