|  05.04.2004, 19:44 | #1 | 
| Участник | Проверка на наличие открытой транзакции 
			
			Добрый день! Есть ли возможность проверить в каком то месте открыта ли транзакция в момент выполнения кода или нет. Задача такая: Есть процедура импорта каталога товаров (примерно 150 000 позиций). При импорте одной записи производится заполнение приблизительно 10-15 таблиц. Уже тестировалось, что если в ttsbegin/ttscommit заключать каждый инсерт то процедура импорта делается в десятки раз медленнее. Т.о. возникает необходимость в одном обрамлении всего цикла заполнения всех таблиц (ничего страшного, если в случае ошибки пропадут все данные - во первых данные не сырые, подгтовленные, а во-вторых - выгода в скорости ощутимее временных потерь в случае такой неожиданной ошибки). Но - некоторые методы, которые вызываются при импорте могут вызываться для других процедур. Т.о. в этих методах желательно проверить - есть ли открытая транзакция на данный момент и если нет - то ее открыть (и потом таким же образом закрыть). Пишите мнения о подходее вообще и о поставленной проблеме в частности. Чтонибудь типа isTransactionOpen()   | 
|  | 
|  06.04.2004, 11:14 | #2 | 
| Moderator | PHP код: 
			
				__________________ Андрей. | 
|  | 
|  06.04.2004, 13:14 | #3 | 
| Участник | 
			
			Dron AKA andy, спасибо за ответ. Можно в FAQ вставить? | 
|  | 
|  06.04.2004, 13:17 | #4 | 
| Moderator | 
			
			Можно, не вопрос    
				__________________ Андрей. | 
|  |