22.04.2010, 16:01 | #1 |
Участник
|
Массовое удаление записей через CCADOConnection
Всем доброго времени суток!
Задача: удалить большое количество записей из таблицы. Т.к. while select и delete_from сильно тормозили, решил использовать CCADOConnection: X++: CCADOConnection connection; CCADOCommand command; str sql; ; command = new CCADOCommand(); connection = new CCADOConnection(); connection.connectionString(new SqlSystem().loginConnectString()); connection.open(); command.activeConnection(connection); command.commandType(1); sql = strfmt("delete from SALESTABLE_TONTRA40478 where SALESTABLE_TONTRA40478.month = '%1'", date2str(01\03\2010, 321, 2, 3, 2, 3, 4)); command.commandText(sql); command.execute(); connection.close(); Метод "execute" в COM-объекте класса "ADODB.Command" возвратил код ошибки 0x80040E31 (<неизвестно>), который означает: [Microsoft][SQL Native Client]Query timeout expired. Можно ли это как-то победить? p.s. База - SQL Server 2005, и в 4.0 и в 2009 результат один и тот же Последний раз редактировалось Shirmin Oleg; 22.04.2010 в 16:05. |
|
Теги |
ax2009, ccadoconnection, delete_from, оптимизация, удаление |
|
|