|
djvujke
|
 |
« poslato: 18 Новембар 2005, 14:44:05 » |
|
Imam jedno mysql pitanje...treba da iz baze, tabele koja ima id naziv varchar kategorija enum() i kojesta da izvucem te kategorije i stavim u lisBox za qt..
citao sam da mysql moze da nadje broj razlicitih 'kategorija' ali nemogu da nadjem da mi ispise koje su to razlicite 'kategorije'
hvala unapred
|
nemoj nista na silu....uzmi veci cekic
|
|
|
|
japan
|
 |
« Odgovor #1 poslato: 18 Новембар 2005, 16:16:52 » |
|
select distinct ?
|
|
|
|
|
|
djvujke
|
 |
« Odgovor #2 poslato: 19 Новембар 2005, 00:56:32 » |
|
cini mi se da to vraca broj koliko razlicitih ima, a ne koji su
pazi kategorija za recept(to sto pravim) je enum ('sladoledi','torte','kolaci slani','kolaci slatki','SVE') default 'SVE'
e sad ja bi to u qt-u moga rucno da ispisem ali hocu da kad neko ubacuje novu kategoriju moj program procita sve postojece iz baze i odradi update tj. snimi novu
kako da izvucem to u combobox?
|
nemoj nista na silu....uzmi veci cekic
|
|
|
|
burga
|
 |
« Odgovor #3 poslato: 19 Новембар 2005, 11:24:13 » |
|
idi na desc <tabela> i dobices opis svih polja, pa onda odatle vadi sta ti treba. Na taj nacin ne moras u kod direktno da ubacujes ono sto se kasnije moze promeniti.
|
Нема Бога, и Дирак је његов пророк http://www.burgic.com[img=http://www.boincstats.com/signature/user_1428421.gif]
|
|
|
bicca
Newbie
Van mreže
Poruke: 33
|
 |
« Odgovor #4 poslato: 22 Новембар 2005, 08:10:20 » |
|
kao sto ti je japan rekao select distinct kategorija from tvoja_tabela vraca razlicite kategorije koje imas (po vrednostima)
a select count(distinct kategorija) from tvoja_tabela vraca broj razlicitih kategorija
inache po meni ti je jako losha zamisao, to znaci da korisnik kad god ti unese novu kategoriju ti ces morati da menjas strukturu tabele.......bolje da si lepo napravio da umesto enum bude integer koji ce predstavljati strani kljuc tabele koja ce sadrzati kategorije. Na taj nacin kad hoce korisnik da doda kategoriju radish insert umesto alter table.......
poz
|
|
|
|
|
|
djvujke
|
 |
« Odgovor #5 poslato: 12 Децембар 2005, 00:57:45 » |
|
.... kako da napravim bazu iz qt-a ... da pristupim kao user i napravim bazu.. nisam to nigde video. mislim mogao bi da napravim skriptu koja ce da pokrene mysql tak da ucita neki textualni fajl sa komandama da napravi neku bazu ali kako se to radi iz qta
ima smila ono sto bicca prica , ali meni se baza iskomplikovala... a ja sam samo pocetnik i pitanje je hocu li ista odraditi
|
nemoj nista na silu....uzmi veci cekic
|
|
|
bicca
Newbie
Van mreže
Poruke: 33
|
 |
« Odgovor #6 poslato: 12 Децембар 2005, 09:51:10 » |
|
ne znam qt, ali mislim da ides pogresnim putem.......zasto bi bazu pravio iz qt-a? a verovatno nema u qt-u pristup (nagadjam samo) bazama, vec koristis C++ biblioteke koje idu uz mysql ili koju vec bazu koristis za pristup..... za detalje treba da vidish uputstvo za pristup bazi iz C++ kao i dalji rad (upiti, kursori i sl)
|
|
|
|
|
amirilo
Newbie
Van mreže
Poruke: 29
|
 |
« Odgovor #7 poslato: 12 Децембар 2005, 14:29:58 » |
|
A zasto kad vec imas potrebu da menjas vrednosti kategorija to ne stavis u posebnu tabelu, pa je povezes preko spoljnjeg kljuca sa sadasnjom tabelom?
Pojednostavice ti se odrzavanje mnogo mnogo, a i mislim da je u tvom slucaju ovo najkulturnije resenje!
|
|
|
|
|
|
burga
|
 |
« Odgovor #8 poslato: 13 Децембар 2005, 23:03:29 » |
|
QT ima podrsku za sql en generalle, samo je potrebno instalirati odredjene drajvere (a ja mislim da ih vec imas instalirane). Ne znam kako radis qt, ali ako nista drugo pokreni qt assistant i idi na opciju da ti pokaze sve qt klase (npr. QSql i ostale izvede iz nje kao QSqlQuery) pa prouci malko dokumentaciju.
Naravno, to ti nista ne vredi ako bar malo ne razumes sql.
|
Нема Бога, и Дирак је његов пророк http://www.burgic.com[img=http://www.boincstats.com/signature/user_1428421.gif]
|
|
|
|
djvujke
|
 |
« Odgovor #9 poslato: 17 Децембар 2005, 23:45:57 » |
|
ovo je kod koji cita moju bazu , ali nemogu u qt-u da nadjem nesto sto ce otvoriti konekciju i napraviti bazu i tabele koje mi trebaju....
QSqlDatabase *db = QSqlDatabase::addDatabase("QMYSQL3"); db->setHostName("localhost"); db->setDatabaseName("recopisi"); db->setUserName("root"); db->setPassword("thrall"); if (!db->open()) { db->lastError().showMessage(); exit(1); }
QSqlQuery query; query.exec("SELECT Naziv_Recepta FROM Recepti"); while (query.next()) { QString Naziv_Recepta = query.value(0).toString(); new QListViewItem( listView1,Naziv_Recepta); }
. . . . . . . . . . .
nemogu da pronadjem... a C kod ..nebih znao gde da trazim...man -k sql ili sta
|
nemoj nista na silu....uzmi veci cekic
|
|
|
|
pedjaman
|
 |
« Odgovor #10 poslato: 18 Децембар 2005, 03:02:48 » |
|
Baza se nikada ne pravi iz aplikacije. Kreiraj create.sql script i pokreni ga sa mysql -u root < create.sql Ako BAAAAŠ moraš iz apliakceije, izvrši gore navedeno kroz QProcess klasu ili u najgorem slučaju probaj neku varijaciju na temu: QSqlDatabase * db = QSqlDatabase::addDatabase( DRIVER ); db->setDatabaseName( DATABASE ); db->setUserName( USER ); db->setPassword( PASSWORD ); db->setHostName( HOST ); if ( !db->open() ) { db->setDatabaseName(""); db->open( USER, PASSWORD ); QSqlQuery query = db->driver()->createQuery(); if ( query.exec("CREATE DATABASE wpdev2") ) printf("Database Created!"); }
Mogao si malo da "proguglaš" i pronađeš ideje i savete jako lako 
|
|
|
|
|
|
japan
|
 |
« Odgovor #11 poslato: 18 Децембар 2005, 06:32:18 » |
|
i bilo bi dobro da pri kreiranju baze na prvi nacin koji je pedjaman naveo, tu bazu ne koristis iz aplikacije kao root. daj grant nekom useru...
|
|
|
|
|
|
djvujke
|
 |
« Odgovor #12 poslato: 18 Децембар 2005, 19:12:34 » |
|
za skriptu znam i tako sam odradio ...ali hocu da ga uradim iz aplikacije.. kod koji si napisao sam probao, ali on se konektuje na vec postojecu bazu a nepravi novu...mislim da to nema u qt-u....googlanje je jedino resenje aii ja trenutno preko 041 idem na neta veza mi je ocajna ..ipak googlao sam malo ali nisam nasao sta sam hteo zato sam se i ovde obratio
znaci ostavljam ga u obliku skripte
|
nemoj nista na silu....uzmi veci cekic
|
|
|
|
pedjaman
|
 |
« Odgovor #13 poslato: 19 Децембар 2005, 01:51:34 » |
|
kod koji si napisao sam probao, ali on se konektuje na vec postojecu bazu a nepravi novu...mislim da to nema u qt-u....
I nema u Qt-u jer se smatra retko potrebnim. Pogledaj deo pod "if". Tu ti je trik kako da se ne konektuješ na konkretnu bazu(neprovereno). Ponavljam... nije rešenje...
|
|
|
|
|
|
djvujke
|
 |
« Odgovor #14 poslato: 19 Децембар 2005, 23:16:15 » |
|
mislim da sam probao i da nece, no nema veze odradicemo preko skripte ali mi je krivo kako to da nema... za sad ste slobodni dok nepronadjem jos koju pametnu glupost da vas pitam
|
nemoj nista na silu....uzmi veci cekic
|
|
|
|