Я использую следующую библиотеку для доступа к базе данных Sybase IQ.
https://github.com/DataAction/AdoNetCore.AseClient
Однако она получила следующую ошибку. Кажется, что тип char вызывает ошибку.
using var conn1 = new AseConnection(connString);
using var cmd1 = new AseCommand(sql, conn1) { CommandTimeout = 300 };
conn1.Open();
var reader1 = cmd1.ExecuteReader(); // ERROR!
System.NotSupportedException
HResult=0x80131515
Message=Unsupported data type 32 (column: )
Source=AdoNetCore.AseClient
StackTrace:
at AdoNetCore.AseClient.Internal.FormatItem.ReadTypeInfo(FormatItem format, Stream stream, Encoding enc) in C:\gitprojects\AdoNetCore.AseClient_master\src\AdoNetCore.AseClient\Internal\FormatItem.cs:line 252
at AdoNetCore.AseClient.Internal.FormatItem.ReadForParameter(Stream stream, Encoding enc, TokenType srcTokenType) in C:\gitprojects\AdoNetCore.AseClient_master\src\AdoNetCore.AseClient\Internal\FormatItem.cs:line 174
at AdoNetCore.AseClient.Token.ParameterFormatCommonToken.Read(Stream stream, DbEnvironment env, IFormatToken previousFormatToken) in C:\gitprojects\AdoNetCore.AseClient_master\src\AdoNetCore.AseClient\Token\ParameterFormatCommonToken.cs:line 62
at AdoNetCore.AseClient.Token.ParameterFormat2Token.Create(Stream stream, DbEnvironment env, IFormatToken previous) in C:\gitprojects\AdoNetCore.AseClient_master\src\AdoNetCore.AseClient\Token\ParameterFormat2Token.cs:line 16
at AdoNetCore.AseClient.Internal.TokenReader.d__0.MoveNext() in C:\gitprojects\AdoNetCore.AseClient_master\src\AdoNetCore.AseClient\Internal\TokenReader.cs:line 21
at AdoNetCore.AseClient.Internal.InternalConnection.InternalExecuteQueryAsync(AseCommand command, AseTransaction transaction, TaskCompletionSource`1 readerSource, CommandBehavior behavior) in C:\gitprojects\AdoNetCore.AseClient_master\src\AdoNetCore.AseClient\Internal\InternalConnection.cs:line 344
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at AdoNetCore.AseClient.Internal.InternalConnection.ExecuteReader(CommandBehavior behavior, AseCommand command, AseTransaction transaction) in C:\gitprojects\AdoNetCore.AseClient_master\src\AdoNetCore.AseClient\Internal\InternalConnection.cs:line 476
at AdoNetCore.AseClient.AseCommand.ExecuteReader(CommandBehavior behavior) in C:\gitprojects\AdoNetCore.AseClient_master\src\AdoNetCore.AseClient\AseCommand.cs:line 179
at AdoNetCore.AseClient.AseCommand.ExecuteReader() in C:\gitprojects\AdoNetCore.AseClient_master\src\AdoNetCore.AseClient\AseCommand.cs:line 193
at ArchiveHistorical.Program.Download(SybaseConn con, String sql, String filename) in C:\Users\abcd\source\repos\ArchiveHistorical\ArchiveHistorical\Program.cs:line 39
at ArchiveHistorical.Program.Main(String[] args) in C:\Users\abcd\source\repos\ArchiveHistorical\ArchiveHistorical\Program.cs:line 29
This exception was originally thrown at this call stack:
AdoNetCore.AseClient.Internal.FormatItem.ReadTypeInfo(AdoNetCore.AseClient.Internal.FormatItem, System.IO.Stream, System.Text.Encoding) in FormatItem.cs
AdoNetCore.AseClient.Internal.FormatItem.ReadForParameter(System.IO.Stream, System.Text.Encoding, AdoNetCore.AseClient.Enum.TokenType) in FormatItem.cs
AdoNetCore.AseClient.Token.ParameterFormatCommonToken.Read(System.IO.Stream, AdoNetCore.AseClient.Internal.DbEnvironment, AdoNetCore.AseClient.Interface.IFormatToken) in ParameterFormatCommonToken.cs
AdoNetCore.AseClient.Token.ParameterFormat2Token.Create(System.IO.Stream, AdoNetCore.AseClient.Internal.DbEnvironment, AdoNetCore.AseClient.Interface.IFormatToken) in ParameterFormat2Token.cs
AdoNetCore.AseClient.Internal.TokenReader.Read(AdoNetCore.AseClient.Internal.TokenReceiveStream, AdoNetCore.AseClient.Internal.DbEnvironment) in TokenReader.cs
AdoNetCore.AseClient.Internal.InternalConnection.InternalExecuteQueryAsync(AdoNetCore.AseClient.AseCommand, AdoNetCore.AseClient.AseTransaction, System.Threading.Tasks.TaskCompletionSource, System.Data.CommandBehavior) in InternalConnection.cs
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
AdoNetCore.AseClient.Internal.InternalConnection.ExecuteReader(System.Data.CommandBehavior, AdoNetCore.AseClient.AseCommand, AdoNetCore.AseClient.AseTransaction) in InternalConnection.cs
AdoNetCore.AseClient.AseCommand.ExecuteReader(System.Data.CommandBehavior) in AseCommand.cs
AdoNetCore.AseClient.AseCommand.ExecuteReader() in AseCommand.cs
...
[Call Stack Truncated]
Это ошибка? Есть ли варианты доступа к базе данных Sybase из. Net (основной или не основной) без установки какого-либо дополнительного драйвера? (или и бесплатный драйвер)