我在MSSQL SERVER中有一个表,我想使用ASE客户端批量复制到SYBASE 12.5,但我不断收到此错误“找不到存储过程'sp_oledb_columns'”。我该如何解决这个问题?
这是我的代码
using (AseConnection theCons = new AseConnection(connstring))
{
if (theCons.State != ConnectionState.Open)
{
theCons.Open();
}
AseBulkCopy objbulk = new AseBulkCopy(theCons);
objbulk.DestinationTableName = "dbo.itb_payment_upload";
objbulk.ColumnMappings.Add(new AseBulkCopyColumnMapping() { SourceColumn = "from_acct_no", DestinationColumn = "from_acct_no" });
objbulk.ColumnMappings.Add(new AseBulkCopyColumnMapping() { SourceColumn = "to_acct_no", DestinationColumn = "to_acct_no" });
objbulk.ColumnMappings.Add(new AseBulkCopyColumnMapping() { SourceColumn = "Itbid", DestinationColumn = "RecordId" });
try
{
objbulk.WriteToServer(dt); //where dt is my DataTable from my source table
}
catch (Exception exception)
{
}
}
答案 0 :(得分:0)
AseBulkCopy
(通过connection.GetSchema("columns")
)调用此过程以加载目标表列元数据。
不确定12.5是否具有此过程,即使存在,它也与提供程序不兼容,因此,如果要使用批量复制,则需要使用sqlbrowser.com中的代码重新创建。