Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何为SQL创建sybase外部表_Sql_Sql Server_Sybase - Fatal编程技术网

如何为SQL创建sybase外部表

如何为SQL创建sybase外部表,sql,sql-server,sybase,Sql,Sql Server,Sybase,我正在尝试使用SQL server 2019到sybase创建一个外部表。 我已经能够使用相同的驱动程序和登录信息创建到sybase的链接服务器 我能够毫无错误地执行此代码: 但是当我尝试使用数据源创建表时 CREATE EXTERNAL TABLE v_data( event_id int ) WITH ( LOCATION='report.dbo.v_data', DATA_SOURCE=external_data_source_name ); 我得到这个错误: 105082;通用ODB

我正在尝试使用SQL server 2019到sybase创建一个外部表。 我已经能够使用相同的驱动程序和登录信息创建到sybase的链接服务器

我能够毫无错误地执行此代码:

但是当我尝试使用数据源创建表时

CREATE EXTERNAL TABLE v_data(
event_id int 
) WITH (
LOCATION='report.dbo.v_data',
DATA_SOURCE=external_data_source_name
);
我得到这个错误:

105082;通用ODBC错误:[SAP][ODBC驱动程序][SQL Anywhere]数据库 找不到服务器


您需要在connection_选项中的任意位置为SQL指定Host&ServerName&DatabaseName属性

CREATE EXTERNAL DATA SOURCE external_data_source_name
WITH ( 
LOCATION = 'odbc://jjjjj.nnnn.iiii.com:xxxxx',
CONNECTION_OPTIONS = 'DRIVER={SQL Anywhere 17};
Host=jjjjj.nnnn.iiii.com:xxxxx; 
ServerName=xyzsqlanywhereservername;
DatabaseName=report;',
CREDENTIAL = [PolyFriend] );
Host==machinename:port,SQLAnywhere所在的machinename和端口很可能是SQLAnywhere服务侦听连接的默认2638


ServerName==承载数据库的SQLAnywhere服务器/服务的名称连接到SQLAnywhere数据库并执行select@@ServerName。

Sybase Adaptive server Anywhere或Sybase Adaptive server Enterprise?我缺少的是@ServerName。非常感谢。我一直在绞尽脑汁。您知道为什么会出现一般ODBC错误:[SAP][ODBC驱动程序]无效使用空指针。创建外部表时:使用LOCATION='xxx.jjj.v_event',DATA_SOURCE=external_DATA_SOURCE_name2创建外部表v_event event_id int NULL;我只是想创建一个表,其中有一列用于测试,只需使用LOCATION='dbo.v_event',不需要3个部件名,因为DatabaseName或Database已在connection_options中指定。还要确保在sql外部表和anywhere dbo.v_事件的两侧使用完全相同的数据类型和nullability。我更新了我的进度,并包括了在编辑中仅放置schema.table时发生的情况,位置设置为location='sqlserver:…,是否应为location='odbc://...? 另外,DBN连接属性已经过时,只需使用DatabaseName或与之一起使用的数据库即可。这可能是一个问题。
CREATE EXTERNAL DATA SOURCE external_data_source_name
WITH ( 
LOCATION = 'odbc://jjjjj.nnnn.iiii.com:xxxxx',
CONNECTION_OPTIONS = 'DRIVER={SQL Anywhere 17};
Host=jjjjj.nnnn.iiii.com:xxxxx; 
ServerName=xyzsqlanywhereservername;
DatabaseName=report;',
CREDENTIAL = [PolyFriend] );