powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / ADO.NET Ошибка при заполнении DataSet двумя таблицами
7 сообщений из 7, страница 1 из 1
ADO.NET Ошибка при заполнении DataSet двумя таблицами
    #38636524
_andrews_.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При попытке заполнить DataSet, используя два запроса, разделенных " ; " - выдает ошибку.
Если оставить только один запрос - все работает нормально.
В IBExpert оба запроса по отдельности тоже выполняются нормально.

Код: c#
1.
2.
3.
4.
5.
6.
using (var connection_ = new FbConnection(connectionString))
{
  var ds = new DataSet();                    
  var adapter = new FbDataAdapter("SELECT * FROM REF_LONG WHERE SIMPLE_NR < 100; SELECT * FROM SIMPLE_LONG WHERE NR < 100", connection_);
  adapter.Fill(ds);
}



ErrorDynamic SQL Error
SQL error code = -104
Token unknown - line 1, column 47
SELECT


Почему не нравится второй запрос?
...
Рейтинг: 0 / 0
ADO.NET Ошибка при заполнении DataSet двумя таблицами
    #38636528
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_andrews_.выдает ошибку.1) текст ошибки нам угадать?
2) убрать точку с запятой пробовал?
...
Рейтинг: 0 / 0
ADO.NET Ошибка при заполнении DataSet двумя таблицами
    #38636567
_andrews_.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,

1._andrews_.
ErrorDynamic SQL Error
SQL error code = -104
Token unknown - line 1, column 47
SELECT




2. Пробовал. Ошибка таже. Но без точки с запятой это и теоретически не правильно. Запросы должны разделяться.
...
Рейтинг: 0 / 0
ADO.NET Ошибка при заполнении DataSet двумя таблицами
    #38636572
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) сорри, я протупил
2)_andrews_.это и теоретически не правильно в TSQL, например, запросы разделяются пробелом, потому я уточнил
...
Рейтинг: 0 / 0
ADO.NET Ошибка при заполнении DataSet двумя таблицами
    #38636777
_andrews_.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Похоже проблема в том, что точка с запятой актуальна только для MSSql.
Я же использую Firebird.
Как это выполнить для Firebird (2.5)?
...
Рейтинг: 0 / 0
ADO.NET Ошибка при заполнении DataSet двумя таблицами
    #38636790
_andrews_.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это работает для ExecuteNonQuery() .
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
            using (FbConnection connection = new FbConnection(ConnectionString))
            {
                FbCommand command = connection.CreateCommand();
                command.CommandText = "EXECUTE BLOCK (PNr INTEGER = @PNr)"+
                                      "  as"+
                                      "  begin"+
                                      "  DELETE FROM ORDER_GOODS WHERE ORDER_NR = :PNr;"+
                                      "  DELETE FROM ORDERS WHERE NR = :PNr;"+
                                      "  end ";
                command.Parameters.AddWithValue("@PNr", aOrderNr);

                connection.Open();
                command.ExecuteNonQuery();
            }



Но если засунуть два SELECT (через точку с запятой) и вызвать ExecuteReader() то уже не работает:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
            using (FbConnection connection = new FbConnection(ConnectionString))
            {
                FbCommand command = connection.CreateCommand();
                command.CommandText = "EXECUTE BLOCK as begin \r\n"+
                                                      "SELECT * FROM REF_LONG WHERE SIMPLE_NR < 100; \r\n"+
                                                      "SELECT * FROM SIMPLE_LONG WHERE NR < 100; \r\n"+
                                                     "end";
                connection.Open();
                command.ExecuteReader();
            }



ErrorDynamic SQL Error
SQL error code = -104
Token unknown - line 2, column 45
;
...
Рейтинг: 0 / 0
ADO.NET Ошибка при заполнении DataSet двумя таблицами
    #38636987
_andrews_.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Похоже это более общий вопрос. Вынес в отдельную тему
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / ADO.NET Ошибка при заполнении DataSet двумя таблицами
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]