Laden...

NHibernate - Session.Delete() - Problem

Erstellt von Gepro vor 16 Jahren Letzter Beitrag vor 16 Jahren 1.360 Views
G
Gepro Themenstarter:in
419 Beiträge seit 2007
vor 16 Jahren
NHibernate - Session.Delete() - Problem

Datenbanksystem : NHibernate

ich kann meine Tabelle "Clubs" nicht löschen (möchte die ganze Tabelle löschen)


            if (!Session.IsConnected)
            {
                Session.Reconnect();
            }

            // Alle Ligen auflisten
            foreach (CLeague League in CFootball.Leagues.Values)
            {
                // Alle Vereine auflisten
                foreach (CClub Club in League.Clubs.Values)
                {
                    // Alle Vereine löschen
                    Session.Delete(Club);
                }
            }

            Session.FlushMode = FlushMode.Auto;
            Session.Flush();

            Session.Disconnect();

Wenn ich Objekte (Club) angebe dann löscht er mir die ClubEinträge nicht aus der Datenbank (vllt weil ich die Objekte zwischendurch ein wenig veränder), also möchte ich es mit einem SQL-Befehl versuchen..

wenn ich folgendes schreibe:


            if (!Session.IsConnected)
            {
                Session.Reconnect();
            }

            string sqlQuery = "DELETE from Clubs";

            Session.Delete(sqlQuery);

            Session.FlushMode = FlushMode.Auto;
            Session.Flush();

            Session.Disconnect();

bekomme ich folgende QueryException:

query must begin with SELECT or FROM: DELETE [DELETE from Clubs]

wer kann mir weiterhelfen?

M
368 Beiträge seit 2006
vor 16 Jahren

Hallo.

NHibernate ist ein OR-Mapper, kein DB-System 😉
Aber müsste es statt "string sqlQuery = "DELETE from Clubs";" nicht "string sqlQuery = "DROP table Clubs"; heissen ? Alternativ "string sqlQuery = "DELETE <Tabellenname1>, <Tabellenname2>,...from Clubs";

Goalkicker.com // DNC Magazine for .NET Developers // .NET Blogs zum Folgen
Software is like cathedrals: first we build them, then we pray 😉

100 Beiträge seit 2006
vor 16 Jahren

In der HQL-Syntax beginnen Ausdrücke oft gleich mit der FROM-Klausel: Beschreibung