2
Raven Melancholic
Для этого можно воспользоваться формой SysSqlSetup (доступ к ней есть через форму SQL Администрирование, но он включается только для ORACLE, хотя использовать можно и для MS SQL).
Только для работы с SQL2005 надо ее слегка доработать
В метод sqlServerInit() надо добавить
X++:
...
resultSet = statement.executeQuery('select groupname from sysfilegroups');
while(resultSet.next())
{
segmentName = resultSet.getString(1);
sqlSegment.add(segmentName);
}
sqlSegment.setDropSize();
}
Изменение файловых групп надо делать в этой форме. После этого запускать синхронизацию в AOT
И еще.
Кластерные индексы хранятся вместе с данными, по-этому перенести их в другую файловую группу не получится
PS
В этой форме список таблиц выводится в порядке следования их ID. Для настройки неудобно, по-этому сделал сортировку по наименованию
X++:
void fillTables()
{
int tableCounter;
dictTable dictTable;
Set set = new Set(Types::String);
SetEnumerator tableEnum;
tableList.lock();
for(tableCounter = dictionary.tableNext(0); tableCounter > 0; tableCounter = dictionary.tableNext(tableCounter))
{
dictTable = new DictTable(tableCounter);
if((!dictTable.isTmp()) && (!dictTable.isMap()))
set.add(dictTable.name());
// tableList.add(dictTable.name());
}
tableEnum = set.getEnumerator();
while (tableEnum.moveNext())
{
tableList.add(tableEnum.current());
}
tableList.unLock(true);
}