Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2015-06-05, 10:15


kazami

Pawner/PTG






Wiek: 27
Na forum: 4596 dni
Posty: 405
Nick w MP: adi888

Piwa: 43

Respekt: 76,3

Ostrzeżeń: 80%
Witam ostatnio postanowi?em pobawi? si? w bazie MySql i mam p?tl? kt?ra leci od 0 do 5000

a w niej zapytanie takie

new query[700];
format(query,700,"SELECT `UID`='%i FROM `priv_cars`",cv);
mysql_query(query);
mysql_store_result();

i niestety co? mi nie dzia?a. ?le zapytanie zrobi?em ?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-06-05, 10:41


ToxiC.







Wiek: 28
Na forum: 5246 dni
Posty: 3792

Piwa: 8590

Respekt: 1143,8
Respekt: 1143,8

Kod:


format(query,700,"SELECT `UID` = '%i' FROM `priv_cars`", cv);


Nie wiem po co taki du?y string :p

Jak dalej nie pyka, to sobie wyprintuj query i zobacz co tam si? wy?wietla

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-06-05, 11:19


kazami

Pawner/PTG






Wiek: 27
Na forum: 4596 dni
Posty: 405
Nick w MP: adi888

Piwa: 43

Respekt: 76,3

Ostrzeżeń: 80%
ToxiC`, string du?y bo potem u?ywam go do wczytania du?ych danych ;)

[ Dodano: 2015-06-05, 11:20 ]
ps. co mam printowa? jak tam jest parametr cv z p?tli ? xd

[ Dodano: 2015-06-05, 11:35 ]
Kod:


format(query,700,"SELECT `ID`, `Owner`, `X`, `Y`, `Z` FROM priv_cars WHERE `UID`='%i",cv);
mysql_query(query);
mysql_store_result();


I wywala mi b??dy ?e mam b??d w zapytaniu SQL

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-06-05, 14:35


ToxiC.







Wiek: 28
Na forum: 5246 dni
Posty: 3792

Piwa: 8590

Respekt: 1143,8
Respekt: 1143,8

Bo masz b??d w tym pierwszym i w tym up.
Pierwsze:
Kod:


format(query,700,"SELECT `UID` = '%i' FROM `priv_cars`", cv);


Drugie:
Kod:


format(query,700,"SELECT `ID`, `Owner`, `X`, `Y`, `Z` FROM priv_cars WHERE `UID`='%i'",cv);
mysql_query(query);
mysql_store_result();


Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-06-05, 18:50


kazami

Pawner/PTG






Wiek: 27
Na forum: 4596 dni
Posty: 405
Nick w MP: adi888

Piwa: 43

Respekt: 76,3

Ostrzeżeń: 80%
No okey teraz si? wczytuj? ale pytanie teraz, pliki p?tl? 5000 przelec? w ci?gu 200 milisekund a mysql to z 20 min potrwa. Jak to zrobi? ?eby wczyta? wszystkie dane a szybciej ? Chodzi mi o MySql

[ Dodano: 2015-06-06, 08:57 ]
Hmm pomo?e kto? ?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-06-07, 12:27


Combacior







Wiek: 29
Na forum: 5795 dni
Posty: 1516

Piwa: 2161

Respekt: 1060
Respekt: 1060

Ostrzeżeń: 20%
Kod:

mysql_query("SELECT ID, Owner, X, Y, Z FROM priv_cars");
mysql_store_result();

while(mysql_fetch_row(query))
{
//sscanf(...);
}
mysql_free_result();


Powinno by? szybciej, bo to tylko jedno zapytanie z p?tla na te 5000, a z tego co widz?, to zapytanie da?e? w p?tli, przez co 5000 trzeba przetwarza? to samo. Swoj? drog? nie wiem po co kolumna ID oraz UID i co one w og?le oznaczaj?.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-06-07, 21:30


kazami

Pawner/PTG






Wiek: 27
Na forum: 4596 dni
Posty: 405
Nick w MP: adi888

Piwa: 43

Respekt: 76,3

Ostrzeżeń: 80%
ID - pojazdu kt?ry ma zosta? zespawnowany ;]
UID - slot

[ Dodano: 2015-06-08, 14:09 ]
Combacior, hmm ale dajmy na to ?e b?dzie 100 danych (nw jak to powiedzie? jak robi?em w dof2 to pliki .ini) dajmy na to ?e nazw? to plikami w bazie danych, to jak mam te 100 plik?w a max 5000 , zrobi?em p?tl? do tego maxaa czyli 5000 i chc? aby te 100 plik?w zostalo przypisane enumowi

Kod:


sscanf(query,"p<|>is[24]fff",
pCars[cv][cID],
pCars[cv][cOwner],
pCars[cv][cX],
pCars[cv][cY],
pCars[cv][cZ]);
mysql_free_result();


To teraz pytanie jak to zrobi? aby to by?o szybko i optymalnie w miar?.

[ Dodano: 2015-06-08, 14:42 ]
Mam taki stock

Kod:


stock WczytajPrivCarsALL(cv)
{
new query[200];
format(query,200,"SELECT `UID`='%i' FROM priv_cars LIMIT 1",cv);
mysql_query(query);
mysql_store_result();
if(mysql_num_rows())
{
format(query,200,"SELECT ID, Owner, X, Y, Z FROM priv_cars WHERE UID=%i LIMIT 1",cv);
mysql_query(query);
mysql_store_result();
mysql_fetch_row(query,"|");
sscanf(query,"p<|>is[24]fff",
pCars[cv][cID],
pCars[cv][cOwner],
pCars[cv][cX],
pCars[cv][cY],
pCars[cv][cZ]);
printf("%s",pCars[cv][cOwner]);
printf("%i ID", pCars[cv][cID]);
mysql_free_result();
return 1;
}
mysql_free_result();
return 1;
}


i ten stock jest w p?tli kt?ra idzie od 1 do 5000.

Po chwili dzia?ania w konsoli wurzca takie co?

Kod:


[14] ***********************************
[14] Truck - Zaladowano Pomyslnie !
[14] Mapa stworzona przez adi888
[14] ***********************************
[14]
************************************************************
[14]
[14] [White-Lista]: White-Lista Wczytana !
[14] [White-Lista]: Wczytano 4 graczy
[14] [White-Lista]: Status: Wylaczona
[14]
[14] adi888
[14] 551 ID
[14]
[14] 0 ID
[14]
[14] 0 ID
[14]
[14] 0 ID
[14]
[14] 0 ID
[14]
[14] 0 ID
[14]
[14] 0 ID
[14]
[14] 0 ID
[14]
[14] 0 ID
[14]
[14] 0 ID
[14]
[14] 0 ID
[14]
[14] 0 ID
[14]
[14] 0 ID
[14]
[14] 0 ID
[14]
[14] 0 ID
[14]
[14] 0 ID


Ale ja przecie? chc? tylko istniej?ce dane pobiera? :(

Postaw piwo autorowi tego posta
 

 
Tagi: mysql :: wczytywanie
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » PAWN Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku