Первый скрипт-это транзакция, которая копирует эти данные в промежуточную базу данных.
Второй скрипт-всего 4 Простые запросы выбора для сравнения двух таблиц из производственной базы данных с промежуточной базой данных. /> Запуск сценариев в Studio SQL Management работает нормально. Мы используем его уже много лет. Нажмите на кнопку. Отправляется с executescalar. < /p>
Второй скрипт также возвращает таблицы, проверка выполняется в коде. < /p>
Третий скрипт - большой сценарий, Это может занять до 30 минут.
Код: Выделить всё
cnnUse = OpenSQLClient()
With queryCommandSQLClient
.CommandTimeout = commandTimeOut
.CommandType = CommandType.Text
.CommandText = source
.Connection = CType(cnnUse, SqlConnection)
.ExecuteNonQueryAsync()
End With
Я проверяю базу данных с помощью:
SELECT * FROM sys.sysprocesses WHERE dbid = 30
select * from sys.dm_tran_active_transactions where name like 't_TAPBeheer_Copy_To_AP'
< /code>
Если я использую executeNoNquery (), то скрипт работает до тех пор, пока не появится тайм -аут (30SEC). /> Я также пытался BetinexeCutenOnquery (), но затем я увидел процесс в SysProcesses, но он что -то ждет. Браузер, хотя пользователь должен сделать это? < /li>
[*] Событие jQuery запечатлевает это щелчок и выполняет запрос Ajax для webmethod в кодовом обозначении страницы. Когда он возвращает, обновляет Div с текущим временем. li> Наконец, последний сценарий запускается асинхронным вызовом Ajax к CodeBehind. Когда этот вызов будет выполнен, javaScript IntervalTimer будет запущен, спрашивая SQL Server, если транзакция выполнена или нет в каждую секунду. Он также обновляет время на экране, чтобы пользователь знал, что он все еще работает.
Подробнее здесь: https://stackoverflow.com/questions/793 ... the-result
Мобильная версия