Hej eksperter, Jeg ønsker at trække all tupler ud af en tabel i en database ved at bruge Hibernate, men har svært ved at se hvorledes det kan lade sig gøre at specifice "select * from tabelX"
det kan godt være det virker lidt mystisk det her, men som jeg har forstået et siger du select alle "katte" fra tabelX .. createSQLQuery("select {cat.*} from tabelX {cat}", "cat", Cat.class); "cat" er et alias til Cat.class så når du siger tableX{cat} mapper du til klasse Cat.class ( tror jeg nok ;)
grunden til at du skal give et alias er som jeg kan se det at du kan have flere aliases og mappe til flere klasser.. f.eks
Det er muligt at du kan lave en helt normal sql sætning igennem createSQLQuery da jeg kan se nogen eksempler i forum, men ikke i dokumentationen hvor de har gjordt det. Altså Query q = session.createQuery("SELECT * FROM tabelX");
Normalt vil man i Hibernate benytte HQL sproget fremfor alm. SQL queries, da HQL forstår de java klasser man har genereret som abstraktion til databasen.
Så typisk vil det nok se mere sådan ud:
List result = session.find("from mypackage.MyObject as myobject where myobject.name=?", "hansen", Hibernate.STRING);
Definitionen af MyObject (MyObject.hbm.xml typisk), fortæller så hvad tabellen fysisk hedder i databasen (kan dække over flere tabeller ved nedarvning).
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.