Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Pravljenje ogromne tabele i unos velike kolicine podataka

[es] :: MySQL :: Pravljenje ogromne tabele i unos velike kolicine podataka

[ Pregleda: 4850 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Psyche
Beograd

Član broj: 43591
Poruke: 112
*.smin.sezampro.yu.



Profil

icon Pravljenje ogromne tabele i unos velike kolicine podataka06.10.2006. u 19:58 - pre 212 meseci
Pozdrav, treba da prebacim neki test od celih 300 stavki u php/mysql okruzenje pa me interesuje sledece: postoji li neki dobar i efikasan nacin da to uradim.

Naime, pri kreiranju tabele imaju 300 polja koja ce biti tipa:

Code:

`st1` tinyint(1) default NULL,
`st2` tinyint(1) default NULL,
...
`st300` tinyint(1) default NULL,


Kako ih srediti a da ne ispisem 300 redova.

A pri upisu podataka kroz formu:

Code:

$query = "INSERT INTO test (st1, st2, ..., st300) VALUES('$st1', '$st2', ..., '$st300')";


Sta uraditi sa njom.

Hvala!
 
Odgovor na temu

NikolaVeber
NikolaVeber
neradnik na porodiljskom bolovanju
Karlsruhe

Član broj: 5115
Poruke: 1254
*.rz.uni-karlsruhe.de.

Jabber: nikolaveber@jabber.org
ICQ: 121532865


Profil

icon Re: Pravljenje ogromne tabele i unos velike kolicine podataka06.10.2006. u 21:35 - pre 212 meseci
Ako sam dobro razumeo problem (samo izbegavanje pisanja 300 redova), onda for petlja:


Code:

$query;

for ($i=1; $i <=300;$i++)
  $query .= "`st$i` tinyint(1) default NULL,";


isto za unos...

Pazi samo na sintaksu, ubaci jedan if da izbegnes zarez na kraju upita.
Pop Servis "Paradise Tours"
Java User Group Karlsruhe
IT Dan - Srbija

Officer, I saw the driver who hit me - his name was Johnny Walker.
 
Odgovor na temu

misk0
.: Lugano :. _.: CH :.

SuperModerator
Član broj: 634
Poruke: 2824
*.adsl.ticino.com.

ICQ: 46802502


+49 Profil

icon Re: Pravljenje ogromne tabele i unos velike kolicine podataka08.10.2006. u 20:21 - pre 212 meseci
Ako mislis popunjavati sva polja mozes izbjeci (imepolja1, imepolja2...) zagradu i ustediti poprilicno.
:: Nemoj se svadjati sa budalom, ljudi cesto nece primjetiti razliku ::
 
Odgovor na temu

Dejan Topalovic
Dejan Topalović
Senior Oracle DBA & Senior PL/SQL
Developer, Erste Sparinvest (Erste
Bank), Vienna, Austria
Vienna

Član broj: 635
Poruke: 1374
*.1.14.vie.surfer.at.

Sajt: www.baze-podataka.net


+2 Profil

icon Re: Pravljenje ogromne tabele i unos velike kolicine podataka09.10.2006. u 01:17 - pre 212 meseci
Da li si siguran da si dobro dizajnirao shemu i tabele, jer mi tabela sa 300 kolona zvuci kao lose rjesenje...

Blog - baze podataka
---------------------
Oracle OCP DBA (9i & 10g)
Oracle Database: SQL Certified Expert
Oracle OCP Developer
Certified MySQL DBA
 
Odgovor na temu

Psyche
Beograd

Član broj: 43591
Poruke: 112
*.smin.sezampro.yu.



Profil

icon Re: Pravljenje ogromne tabele i unos velike kolicine podataka12.11.2006. u 15:16 - pre 211 meseci
OK, hvala, inace generisacu upite ovako preko php, pa ih unositi iz admin panela za MySQL.

Tu se zapravo radi o testovima licnosti koji znaju da imaju i po 300 stavki (srecom vrednosti idu od 1 do 5) i tabela prosto mora biti takva da bi kasnije mogla da se uveze u SPSS. Eventualno bi se mogao praviti obican .txt fajl, ali ako zelim da radim sa bazama, ne znam za drugo resenje.

Inace, jos jedno pitanje. Cesto imamo potrebu da prenosim sadrzaj sa jednog servera na drugi web sajt - localhost na laptopu i to u oba smera. Dakle, tokom sedmice mi se upisiuju vece kolicine podataka od strane korisnika na sajtu, pa to zelim da cuvam na laptopu ili obrnuto, unosim na laptopu povremeno nesto, sto opet treba - da prebacim tamo. U pitanju su inace razlicite tabele, recimo na sajtu popunjavam a, b, c, d pa to prenosim posle na laptop, a na laptopu e, f, g, h pa to prebacujem na sajt.

Da li postoji neki program ili sta vec koji moze da poredi sadrzaje baze i vrsi odgovarajci update? Ili to mora prosto rucno insert komandama ili sta vec.
 
Odgovor na temu

Dejan Topalovic
Dejan Topalović
Senior Oracle DBA & Senior PL/SQL
Developer, Erste Sparinvest (Erste
Bank), Vienna, Austria
Vienna

Član broj: 635
Poruke: 1374
*.it-austria.net.

Sajt: www.baze-podataka.net


+2 Profil

icon Re: Pravljenje ogromne tabele i unos velike kolicine podataka15.11.2006. u 16:45 - pre 211 meseci
Zar ti ne bi bilo bolje da razdvojis to na vise tabela?
Npr. na tabele:
TEST (test_id, test_name)
STAVKE (stavka_id, stavka_name)
TEST_STAVKE (lookup_id, test_id, stavka_id) gdje su test_id i stavka_id reference na tabele TEST i STAVKE
ODGOVORI (odgovor_id, odgovor_value, lookup_id) gdje je lookup_id referenca na TEST_STAVKE

I sada pretpostavimo slijedeci proces...

- Imas test, nazoves ga "Test za porezni ispit" (INSERT INTO test VALUES (1, 'Test za porezni ispit') )
- Za taj test uneses 300 stavki, tj. pitanja ( INSERT INTO stavke VALUES(1, 'Stavka 1'), ... (300, 'Stavka 300') )
- Povezes test sa tim stavkama (INSERT INTO test_stavke VALUES(1, 1), (1, 2), ...(1, 300) )
- Kada neko polaze taj test, odnosno daje odgovore na stavke (npr. postavljas prvo pitanje sa SELECT lookup_id FROM test_stavke WHERE test_id = 1 and stavka_id = 1 i dobijas da je lookup_id = 1), onda imas slijedece: INSERT INTO odgovori VALUES(1, 'Odgovor 1', 1)
- Ides dalje, dajes odgovor na drugo pitanje: SELECT lookup_id FROM test_stavke WHERE test_id = 1 and stavka_id = 2; pri cemu dobijas da je lookup_id = 2, pa potom imas INSERT INTO odgovori VALUES (2, 'Odgovor 2', 2)
- i td.

Nadam se da sam bio jasan. :)

Sto se tice updatea baze na laptopu, mozes to uraditi sa mysqldumpom i mysqlimportom, te eventualno sa replikacijom, ako si iskusan...
Blog - baze podataka
---------------------
Oracle OCP DBA (9i & 10g)
Oracle Database: SQL Certified Expert
Oracle OCP Developer
Certified MySQL DBA
 
Odgovor na temu

Psyche
Beograd

Član broj: 43591
Poruke: 112
*.smin.sezampro.yu.



Profil

icon Re: Pravljenje ogromne tabele i unos velike kolicine podataka18.11.2006. u 14:33 - pre 211 meseci
Hvala, jesi, ali u principu ja ne cuvam nazive stavki u bazi, samo odgovore koje daju ispitanici, a ti odgovori su obicno sa Likertove skale 1-5 i izgledaju nekako ovako:

1424534535214253423121435454231325362524
5452151415242314354534231425342514253421

To je samo brzi nacin sakupljanja podatka i kasnijeg unosa u SPSS, umesto papir-olovka sistema dobiju na web stranici spisak stavki, kliknu u svoje radio batoncice i to je to :)

Elem, koristim mysql export-import naredbu u okviru phpMyAdmina. Jedna baza je 4.1.21, druga 5.0.21, obe koriste utf8, bla bla, izvezem to lepo kao zip ili gzip format, ali ne mogu da uvucem nikako u bazu jer mi stalno javi gresku tipa za gz

Fatal error: Maximum execution time of 300 seconds exceeded in C:\moodle\admin\mysql\libraries\read_dump.lib.php on line 91

a zip nece uopste da procita.





 
Odgovor na temu

[es] :: MySQL :: Pravljenje ogromne tabele i unos velike kolicine podataka

[ Pregleda: 4850 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.