Хранимая процедура Объема SQL называет C#

Как я называю хранимые процедуры оптом? Я хотел бы сделать что-то как массовое копирование.

Все, что делает хранимая процедура, равняется 8, выбирает для ограничения на уникальность данных, и 8 вставляет. Без возврата значения.

9
задан Will 29 January 2010 в 23:00
поделиться

3 ответа

Вы не можете этого сделать.

Массовая копия - это Firehose Dump из данных в таблицу, вы не можете вызывать SPROCS или что-нибудь еще, а не просто сбрасывать его в существующую таблицу.

То, что вы можете сделать, однако вы можете сделать, бросают данные, используя объемные копии во временную таблицу с правильной структурой, а затем позвоните в SPROC, который перемещает это данные в реальные таблицы, возможно, изменяя существующие данные вместо того, чтобы вставлять его или othotnot.

7
ответ дан 4 December 2019 в 19:33
поделиться

Если вы хотите набросать данные нагрузки в таблицу (вставки), класс SQLBULKCOPY - это путь.

В качестве альтернативы вы можете использовать sqldataAdapter . Установите insertCommand в хранимую процедуру, которая выполнит вставку, и отображает вставку полей данных на параметры SPROC. Если вы обновляли записи в DataTable, вы также можете указать UpdateCommand , который будет уволен для каждой обновленной строки. Затем позвоните в «Обновление Метод на SQLDADADAPTER, передающем его DataTable. Вы можете установить свойство SomentlyBatchsize свойство , чтобы определить, сколько записей для отправки в БД в каждом тулдере.

1
ответ дан 4 December 2019 в 19:33
поделиться

Когда вы самоустраняетесь, вы в основном говорите: "Мне это больше не нужно, но кто-либо другой может забрать его (до того, как пул автоотпуска будет осушен)". Когда вы явно освобождаете объект, который вы говорите: "Мне это больше не нужно, и если кто-то другой уже не сказал об обратном (приобретен), он должен быть немедленно освобожден".

Следовательно, автореклама, как правило, не является неправильным для. Требуется , если требуется передать объекты обратно отправителю сообщения без необходимости освобождения объекта отправителем.

-121--2741475-
  1. Попробуйте использовать коллекции из пакета java.util.concurrent или еще лучше неизменяемые коллекции из Google Collections.
  2. Сведения об использовании синхронизированных блоков
-121--2347143-

Хранимые процедуры SqlServer могут принимать xml, чтобы можно было подготовить массовые данные в виде xml-файла и передать их специальной хранимой процедуре, которая затем вызовет исходную хранимую процедуру для каждой строки. Вам потребуется функция OPENXML .

Я не желаю рекомендовать xml-функции SqlServer, но это может быть случай, когда они подходят.

0
ответ дан 4 December 2019 в 19:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: