J'ai le code suivant pour effectuer une opération au niveau de la base de données via notre couche ORM active d'enregistrement.Comment faire un 'ExecuteNonQuery' dans Castle Active Record
public static void Vacuum() {
Execute(
delegate(ISession session, object instance) {
ISQLQuery query =
session.CreateSQLQuery(@"
VACUUM billableaddresses;
")
query.List();
return null;
}, null);
}
Normalement quand je dois faire une requête non comme celui-ci (il est très rare que je l'avoue), je mets simplement une sélection « 1 »; après la requête qui apaise suffisamment l'enregistrement actif pour exécuter la requête sous forme de non-requête. Cependant, la commande vacuum de postgres doit être exécutée seule et ne peut pas faire partie d'une requête multi-instruction.
En regardant interface ISQLQuery, il ne semble pas être une méthode pour exécuter une non-requête, alors je me demandais comment cela peut être fait?
Impressionnant. C'est exactement ce que je recherchais, merci. – Ash
FAQ ActiveRecord: http://using.castleproject.org/display/AR/FAQ –