gpt4 book ai didi

mysql - Openquery 插入不工作

转载 作者:行者123 更新时间:2023-11-29 06:36:41 24 4
gpt4 key购买 nike

我有一个链接到 MSSQL 服务器的 MySQL 服务器,我正在尝试将数据插入 MySQL 服务器上的表 admin_user,但最终出现错误:

Cannot process the object "dbo.admin_user". The OLE DB provider "MSDASQL" for linked server "MYDB" indicates that either the object has no columns or the current user does not have permissions on that object.

这很好用:

SELECT * FROM openquery([MYDB], 'SELECT * FROM admin_user')

这得到错误:

INSERT into openquery([MYDB], 'dbo.admin_user') values ('Testi','Testaaja','me@google.com','koe','','','','','','1','N;','','')

这是我用来创建 ODBC 连接的用户的权限

| xx.xxx.xxx.xx | me | *qweqweqwdq2edqdadasd| Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | N | Y | Y | Y | Y | Y
| Y | Y | Y | Y
| Y | Y | Y | Y
| Y | Y | Y | Y | Y | | | |
| 0 | 0 | 0 | 0 | | NULL |

>     | %             | me | *asdasadasdsadasdasdsad| Y           | Y           | Y           | Y           | Y           |
> Y | Y | Y | Y | Y | Y
> | Y | Y | Y | Y | Y
> | Y | Y | Y | Y
> | Y | Y | Y | Y
> | Y | Y | Y | Y |
> Y | | | |
> | 0 | 0 | 0 | 0
> | | NULL |

我的目录是 bitnami_magento,我配置了提供者字符串

DRIVER=(MySQL ODBC 5.3 ANSI Driver); SERVER= XX.XXX.XXX.XXX;PORT=3306;DATABASE=bitnami_magento; USER=me;PASSWORD=mypass;OPTION=3;

此外,我还取消了 Provider Options (MSDASQL) 中的“Level zero only”框,并确保允许临时查询。我做错了什么?

有我遵循的说明 http://dbperf.wordpress.com/2010/07/22/link-mysql-to-ms-sql-server2008/

最佳答案

您的查询有误:

在 OPENQUERY() 中,你必须使用 MySQL 表名而不是 MSSQL 表名(如果你想插入到 MySQL 表中)。

下面的语法应该可以工作

INSERT INTO OPENQUERY([MYDB], 'SELECT * FROM mysqlDbName.mysqlTableName') VALUES
('Testi','Testaaja','me@google.com','koe','','','','','','1','N;','','')

请相应地将 mysqlDbName.mysqlTableName 更改为您的 MySQL 数据库和表名。

关于mysql - Openquery 插入不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24180390/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com