![]() |
Модераторы: gambit |
![]() ![]() ![]() |
|
Ch0bits |
|
|||
![]() Python Dev. ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2124 Регистрация: 21.2.2005 Где: Казань Репутация: нет Всего: 62 |
Как выполнить над базой данных запрос содержищийся в массиве строк?
Тип базы не имеет значения. ![]() |
|||
|
||||
Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 1 Всего: 172 |
В чем проблема-то? Ну для каждой строки делаешь что-нибудь типа
-------------------- |
|||
|
||||
Ch0bits |
|
|||
![]() Python Dev. ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2124 Регистрация: 21.2.2005 Где: Казань Репутация: нет Всего: 62 |
Не... это я наверное не точно вопрос сформулировал.
Мне ведь не нужно выполнять последовательно каждую строку, мне нужно выполнить все их вместе. В массиве содержится многострочная программа на SQL. |
|||
|
||||
mr.DUDA |
|
|||
![]() 3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 8 Всего: 232 |
Обычно такая штука, как многострочный запрос, оформляется в виде хранимой процедуры и вызывается по имени.
-------------------- ![]() |
|||
|
||||
Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 1 Всего: 172 |
Вроде batch вводится в ADO.NET 2.0 или я ошибаюсь? -------------------- |
|||
|
||||
arilou |
|
|||
![]() Великий МунаБудвин ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2646 Регистрация: 15.7.2004 Где: город-герой Минск Репутация: 4 Всего: 61 |
Если в запросе у тебя только CRUD операции, то можешь спокойно выполнять его, разделив ";" разные запросы (работает в SQL Server, в Access'e - нет). Если там у тебя DDL, то придется разбивать его на пачки, и после каждой пачки вставлять вызов "GO", иначе если ты в новые таблицы начнешь добавлять, будут ошибки о том, что твоих изменений еще нет. Для SQL Server можно пользоваться биб-кой SQL-DMO. Тут я клал простой класс, инкапуслирующий работу с SQL-DMO. |
|||
|
||||
Дрон |
|
|||
![]() Java-ненавистник :) ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3179 Регистрация: 29.12.2002 Где: Санкт-Петербург Репутация: 5 Всего: 93 |
Не понял проблемы? Приведи пример такого запроса. -------------------- Да. Именно так. |
|||
|
||||
Ch0bits |
|
|||
![]() Python Dev. ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2124 Регистрация: 21.2.2005 Где: Казань Репутация: нет Всего: 62 |
Тут такая злая тема:
![]() Этот массив строк есть загруженный внешний текстовый файл с запросом. Он генерируется программой стороннего разработчика и часто изменяется. Поэтому пример привести не могу, да и не имеет он тут значения. Если бы я заранее знал текст SQL, то просто засунул бы его в базу и вызывал из проги как процедуру. Вот такие прироги с котятами... ![]() ![]() ![]() |
|||
|
||||
Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 1 Всего: 172 |
Ну я думаю так: разделяешь запросы точкой с запятой, выполняешь executeReader, и для каждого запроса, возвращаещуего че-нибудь перебираешь результаты. К примеру
-------------------- |
|||
|
||||
Ch0bits |
|
|||
![]() Python Dev. ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2124 Регистрация: 21.2.2005 Где: Казань Репутация: нет Всего: 62 |
Навёл меня на правильный путь.
После кое-каких добавок-поправок работает отлично! RESPECT! |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Базы данных под .NET | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |