从SQL Server到postgresql的DBLink:get sequence nextval
我有一个需要连接到POSTGRESQL 9.0服务器的SQL Server 2008。从SQL Server到postgresql的DBLink:get sequence nextval
一个我需要的任务是在PostgreSQL的
例1获得一个序列的下一个值:
execute ('select nextval(''cadastro.pessoa_seq'')') at POSTGRESQL ;
错误:
Msg 7215, Level 17, State 1, Line 1 Could not execute statement on remote server 'POSTGRESQL'.*
例2:
select * from openquery(POSTGRESQL ,'select nextval(''cadastro.pessoa_seq'')')
错误:
Msg 7399, Level 16, State 1, Line 1 The OLE DB provider "MSDASQL" for linked server "POSTGRESQL" reported an error. The provider reported an unexpected catastrophic failure. Msg 7350, Level 16, State 2, Line 1 Cannot get the column information from OLE DB provider "MSDASQL" for linked server "POSTGRESQL".*
任何选项都没有工作!
有没有什么好的选择?
预先感谢您
处理ODBC数据源和Postgres我必须这样做:
nextval(''cadastro.pessoa_seq''::regclass) for it to work
我试过了,但没有成功! – galacha
也许你的PostgreSQL连接是只读的,你试图执行更新/插入请求?
NEXTVAL更新序列,尝试:
currval(''cadastro.pessoa_seq''::regclass)
究竟做 “无工程” 呢?你有错误吗?如果是,从哪个DBMS? –
我对帖子进行了更新。我在SQLSERVER中出现错误。 TIA – galacha
您是否可以使用该连接进行其他查询?这只是你遇到问题的序列吗? – Gary