Подключение к базе данных Sybase для доступа к хранимой процедуре c# - PullRequest
0 голосов
/ 03 апреля 2020

Я пытаюсь подключиться к хранимой процедуре, используя 2 метода 1.Sybase.AdoNet4.AseClient dll https://www.nuget.org/stats/packages/Sybase.AdoNet4.AseClient?groupby=Version

2.AdoNetCore.AseClient dll

https://github.com/DataAction/AdoNetCore.AseClient

Код, который я использую

        AseConnection conn = new AseConnection();
        conn.ConnectionString = "server=TestServer;Database=TestDB;charset=iso_1;PWD=*****;port=1223;UID=testuser";
        conn.Open();                     
        AseCommand cmd = new AseCommand("testSp", conn);
        cmd.CommandType = CommandType.StoredProcedure;
        AseParameter param = cmd.CreateParameter();
        param.ParameterName = "@Name";
        param.AseDbType = AseDbType.VarChar;
        param.Direction = ParameterDirection.InputOutput;
        param.Value = "John";
        cmd.Parameters.Add(param);

        AseParameter param1 = cmd.CreateParameter();
        param1.ParameterName = "@ID";
        param1.AseDbType = AseDbType.Integer;
        param1.Direction = ParameterDirection.InputOutput;
        param1.Value = 1;
        cmd.Parameters.Add(param1);
        //return value
        AseParameter retValue = new AseParameter("@name", AseDbType.VarChar);
        retValue.Direction = ParameterDirection.Output;
        cmd.Parameters.Add(retValue);

        AseParameter retValue1 = new AseParameter("@year", AseDbType.Integer);
        retValue1.Direction = ParameterDirection.Output;
        cmd.Parameters.Add(retValue1);
     var reader = cmd.ExecuteReader();
        while (reader.Read())
        {
            //do something

        }
        reader.Close();
        conn.Close();

1-й dll выдает «Плохой поток ответов TDS, полученный от сервера. Получен неожиданный тип токена: 0.»

2-й dll выдает «Неожиданный столбец DataType 114». Также для этого dll требуется слишком много времени для выполнения и возврата элемента управления обратно

Я передаю все необходимые параметры и проверил тип данных из sybase side.It выглядит хорошо

Есть ли проблемы с этими dll?

Может кто-нибудь помочь, пожалуйста? Спасибо

...