DQL отбросить имя группы в DFC
У меня есть список имен групп, которые приложение читает из внешнего.txt. Я хочу перейти к методу в качестве списка групповых имен и выполнить запрос DQL что-то вроде
for (String s : groupnames) {
dql = "DROP GROUP " + s;
System.out.println("dropped group: " + s;
}
Как написать / выполнить DQL?
2 ответа
Я сделал это сам:
private static void deleteGroups(List<String> groupsToDelete) {
try {
DfClientX clientX = new DfClientX();
IDfQuery query = clientX.getQuery();
for (String s : groupsToDelete){
query.setDQL("DROP GROUP '" + s + "'");
printInfo("Executing DQL: " + query.getDQL());
query.execute(_session, 0);
}
} catch (DfException e) {
printError(e.getMessage());
DfLogger.error("app", "DQL DROP GROUP execution", null,e);
}
}
Не совсем уверен, что CS разрешает удалять группы через DFC, но это должно выглядеть так:
IDfQuery query = new DfQuery();
query.setDQL("DROP GROUP <group_name>");
query.execute(getSession(), IDfQuery.DF_EXEC_QUERY);
Существует надежный способ создания объекта группы в памяти и вызова метода.delete(). Я постараюсь проверить это.