Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

[ROZWIĄZANE] Problem z SQLx :TQUERY_QUERY_FAILED


Najlepsza odpowiedź GwynBleidD , 23.04.2013 17:36

Tu chodzi głównie o znajomość samego SQLa, nie AMX. Np żeby zamiast 2ch zapytań: select + jeśli coś zwrócił to update, jeśli nie zwrócił to insert, zrobić INSERT ... ON DUPLICATE KEY UPDATE, aby ograniczyć zapytanie do 1go. Dodatkowo wrzucać dane wszystkich graczy w 1 zapytaniu, a nie dla każdego w osobnym. Do tego nie używać w zbyt dużej ilości pluginów SQL na raz, używać 1 Tuple dla wszystkich pluginów korzystających z tej samej bazy... Optymalizacji można dużo wymyśleć, nawet pamięć ram ogólnie przez serwer zabierana ma na to (chyba największy) wpływ.

Przejdź do postu


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
8 odpowiedzi w tym temacie

#1 GT Team

    Ten lepszy xD

  • Zbanowany

Reputacja: 321
Wszechpomocny

  • Postów:1 435
  • GG:
  • Imię:Tomasz i Grzegorz
  • Lokalizacja:Wojkowice
Offline

Napisano 19.04.2013 16:43

Jak pozbyć się błędu przy ifie TQUERY_QUERY_FAILED ? Linia 596: http://wklej.to/Yt447 I przy okazji nie wiem czy to wpływa na zapis/odczyt danych Ale w ogóle nie zapisuje i nie odczytuje danych ( bo nie zapisuje ) Pomóżcie !

Nowa wersja Tower Defense 0.2 Alpha | Inne Mody -> Nowości

 


#2 GwynBleidD

    Godlike

  • Przyjaciel

Reputacja: 1 869
Godlike

  • Postów:3 066
  • Steam:steam
  • Lokalizacja:Przemyśl
Offline

Napisano 22.04.2013 11:02

TQUERY_QUERY_FAILED oznacza błąd zapytania, dodaj coś takiego:

new queryString[512];
SQL_GetQueryString(Query, queryString, 511);
log_to_file("expmod.log", "Błąd %s (%d) w zapytaniu: %s ", Error, Errcode, queryString);

 
tuż po:

log_to_file("expmod.log", "ZapiszAch2 blad.");

I wtedy w logach będzie troszkę więcej o samym błędzie. Poznamy co się "wkradło" do zapytania. Swoją drogą, w tym pluginie możnaby mocno te zapytania zoptymalizować, żeby wykonywało się ich dużo mniej :P


Użytkownik GwynBleidD edytował ten post 22.04.2013 11:03

  • +
  • -
  • 1

NIE pomagam na PW. Nie trudź się, na zlecenia nie odpiszę... Od pomagania jest forum.
NIE zaglądam w tematy wysłane na PW. Jeśli są na forum to prędzej czy później je przeczytam. Jeśli mam co w nich odpisać, to odpiszę.
 
1988650.png?theme=dark


#3 GT Team

    Ten lepszy xD

  • Autor tematu
  • Zbanowany

Reputacja: 321
Wszechpomocny

  • Postów:1 435
  • GG:
  • Imię:Tomasz i Grzegorz
  • Lokalizacja:Wojkowice
Offline

Napisano 23.04.2013 13:01

Ok po kolei: zdjęcie
http://i36.tinypic.com/2je1wrn.png
Po tym co powiedziałeś to całe sma:
http://wklej.org/id/1020259/
a logi expmod.log:
L 04/23/2013 - 13:22:44: Log file started (file "cstrike\addons\amxmodx\logs\expmod.log") (game "cstrike") (amx "1.8.2")
L 04/23/2013 - 13:22:44: Could not connect to SQL database.
L 04/23/2013 - 13:24:22: Polaczono prawidlowo
L 04/23/2013 - 13:24:24: Polaczono prawidlowo Achievementy
L 04/23/2013 - 13:24:25: Polaczono prawidlowo Misje
L 04/23/2013 - 13:24:26: Blad.
L 04/23/2013 - 13:24:38: Blad.
L 04/23/2013 - 13:25:11: ZapiszMisjeHandle blad.
L 04/23/2013 - 13:25:54: ZapiszMisjeHandle blad.
L 04/23/2013 - 13:25:54: ZapiszMisjeHandle blad.
L 04/23/2013 - 13:26:04: Polaczono prawidlowo
L 04/23/2013 - 13:26:04: Polaczono prawidlowo Achievementy
L 04/23/2013 - 13:26:05: Polaczono prawidlowo Misje
L 04/23/2013 - 13:26:06: Blad.
L 04/23/2013 - 13:26:25: Blad.
L 04/23/2013 - 13:26:31: ZapiszMisjeHandle blad.
L 04/23/2013 - 13:26:31: ZapiszMisjeHandle blad.
L 04/23/2013 - 13:32:19: Polaczono prawidlowo
L 04/23/2013 - 13:32:21: Polaczono prawidlowo Achievementy
L 04/23/2013 - 13:32:23: Polaczono prawidlowo Misje
L 04/23/2013 - 13:32:25: Blad.
L 04/23/2013 - 13:32:25: Błąd You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''STRIKER--McPr0 :D' at line 1 (1064) w zapytaniu: SELECT * FROM `ExpMod_Missions` WHERE `Nick`='STRIKER--McPr0 :D 
L 04/23/2013 - 13:32:38: Blad.
L 04/23/2013 - 13:32:38: Błąd You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''Jennifer Love_Hew' at line 1 (1064) w zapytaniu: SELECT * FROM `ExpMod_Missions` WHERE `Nick`='Jennifer Love_Hew 
L 04/23/2013 - 13:33:55: ZapiszMisjeHandle blad.
L 04/23/2013 - 13:33:55: Błąd You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''Jennifer Love_Hew' at line 1 (1064) w zapytaniu: SELECT * FROM `ExpMod_Missions` WHERE `Nick`='Jennifer Love_Hew 
L 04/23/2013 - 13:33:55: ZapiszMisjeHandle blad.
L 04/23/2013 - 13:33:55: Błąd You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''STRIKER--McPr0 :D' at line 1 (1064) w zapytaniu: SELECT * FROM `ExpMod_Missions` WHERE `Nick`='STRIKER--McPr0 :D 
L 04/23/2013 - 13:34:50: Polaczono prawidlowo
L 04/23/2013 - 13:34:50: Polaczono prawidlowo Achievementy
L 04/23/2013 - 13:34:51: Polaczono prawidlowo Misje
L 04/23/2013 - 13:35:18: ZapiszMisjeHandle2 blad.
L 04/23/2013 - 13:35:18: Błąd Unknown column 'Mission' in 'field list' (1054) w zapytaniu: INSERT INTO `ExpMod` (`Nick`,`Mission`, `Progress`, `Completed`) VALUES ('STRIKER--McPr0 :D','0','0','0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0') 
L 04/23/2013 - 13:48:33: Polaczono prawidlowo
L 04/23/2013 - 13:48:42: Polaczono prawidlowo Achievementy
L 04/23/2013 - 13:48:46: Polaczono prawidlowo Misje
L 04/23/2013 - 13:49:10: ZapiszMisjeHandle2 blad.
L 04/23/2013 - 13:49:10: Błąd Unknown column 'Mission' in 'field list' (1054) w zapytaniu: INSERT INTO `ExpMod` (`Nick`,`Mission`,`Progress`,`Completed`) VALUES ('STRIKER--McPr0 :D','1','0','0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0')
(misjami sie bd pozniej zajmowac) to blędy:
L 04/23/2013 - 13:50:23: Info (map "de_aztec") (file "addons/amxmodx/logs/error_20130423.log")
L 04/23/2013 - 13:50:23: [MySQL] Thread worker was unable to start.
L 04/23/2013 - 13:50:23: [AMXX] Displaying debug trace (plugin "expmod_mission.amxx")
L 04/23/2013 - 13:50:23: [AMXX] Run time error 10: native error (native "SQL_ThreadQuery")
L 04/23/2013 - 13:50:23: [AMXX]    [0] expmod_mission.sma::ZapiszMisjeHandle (line 447)
L 04/23/2013 - 13:50:23: [MySQL] Thread worker was unable to start.
L 04/23/2013 - 13:50:23: [AMXX] Displaying debug trace (plugin "expmod_mission.amxx")
L 04/23/2013 - 13:50:23: [AMXX] Run time error 10: native error (native "SQL_ThreadQuery")
L 04/23/2013 - 13:50:23: [AMXX]    [0] expmod_mission.sma::ZapiszMisjeHandle (line 447)
L 04/23/2013 - 13:50:23: [MySQL] Thread worker was unable to start.
L 04/23/2013 - 13:50:23: [AMXX] Displaying debug trace (plugin "expmod_mission.amxx")
L 04/23/2013 - 13:50:23: [AMXX] Run time error 10: native error (native "SQL_ThreadQuery")
L 04/23/2013 - 13:50:23: [AMXX]    [0] expmod_mission.sma::ZapiszMisjeHandle (line 447)
L 04/23/2013 - 13:50:23: [MySQL] Thread worker was unable to start.
L 04/23/2013 - 13:50:23: [AMXX] Displaying debug trace (plugin "expmod_mission.amxx")
L 04/23/2013 - 13:50:23: [AMXX] Run time error 10: native error (native "SQL_ThreadQuery")
L 04/23/2013 - 13:50:23: [AMXX]    [0] expmod_mission.sma::ZapiszMisjeHandle (line 447)
L 04/23/2013 - 13:50:23: [MySQL] Thread worker was unable to start.
L 04/23/2013 - 13:50:23: [AMXX] Displaying debug trace (plugin "expmod_mission.amxx")
L 04/23/2013 - 13:50:23: [AMXX] Run time error 10: native error (native "SQL_ThreadQuery")
L 04/23/2013 - 13:50:23: [AMXX]    [0] expmod_mission.sma::ZapiszMisjeHandle (line 447)
L 04/23/2013 - 13:50:23: [MySQL] Thread worker was unable to start.
L 04/23/2013 - 13:50:23: [AMXX] Displaying debug trace (plugin "expmod_mission.amxx")
L 04/23/2013 - 13:50:23: [AMXX] Run time error 10: native error (native "SQL_ThreadQuery")
L 04/23/2013 - 13:50:23: [AMXX]    [0] expmod_mission.sma::ZapiszMisjeHandle (line 447)
L 04/23/2013 - 13:50:23: [MySQL] Thread worker was unable to start.
L 04/23/2013 - 13:50:23: [AMXX] Displaying debug trace (plugin "expmod_mission.amxx")
L 04/23/2013 - 13:50:23: [AMXX] Run time error 10: native error (native "SQL_ThreadQuery")
L 04/23/2013 - 13:50:23: [AMXX]    [0] expmod_mission.sma::ZapiszMisjeHandle (line 447)
L 04/23/2013 - 13:50:23: [MySQL] Thread worker was unable to start.
L 04/23/2013 - 13:50:23: [AMXX] Displaying debug trace (plugin "expmod_mission.amxx")
L 04/23/2013 - 13:50:23: [AMXX] Run time error 10: native error (native "SQL_ThreadQuery")
L 04/23/2013 - 13:50:23: [AMXX]    [0] expmod_mission.sma::ZapiszMisjeHandle (line 447)
L 04/23/2013 - 13:50:23: [MySQL] Thread worker was unable to start.
L 04/23/2013 - 13:50:23: [AMXX] Displaying debug trace (plugin "expmod_achievements.amxx")
L 04/23/2013 - 13:50:23: [AMXX] Run time error 10: native error (native "SQL_ThreadQuery")
L 04/23/2013 - 13:50:23: [AMXX]    [0] expmod_achievements.sma::ZapiszAch (line 586)
L 04/23/2013 - 13:50:23: [MySQL] Thread worker was unable to start.
L 04/23/2013 - 13:50:23: [AMXX] Displaying debug trace (plugin "expmod_achievements.amxx")
L 04/23/2013 - 13:50:23: [AMXX] Run time error 10: native error (native "SQL_ThreadQuery")
L 04/23/2013 - 13:50:23: [AMXX]    [0] expmod_achievements.sma::ZapiszAch (line 586)
L 04/23/2013 - 13:50:23: [MySQL] Thread worker was unable to start.
L 04/23/2013 - 13:50:23: [AMXX] Displaying debug trace (plugin "expmod_achievements.amxx")
L 04/23/2013 - 13:50:23: [AMXX] Run time error 10: native error (native "SQL_ThreadQuery")
L 04/23/2013 - 13:50:23: [AMXX]    [0] expmod_achievements.sma::ZapiszAch (line 586)

Nowa wersja Tower Defense 0.2 Alpha | Inne Mody -> Nowości

 


#4 GwynBleidD

    Godlike

  • Przyjaciel

Reputacja: 1 869
Godlike

  • Postów:3 066
  • Steam:steam
  • Lokalizacja:Przemyśl
Offline

Napisano 23.04.2013 15:34

W tabeli ExpMod nie ma kolumny mission. ThreadWorker niestety tak ma, musisz "zwolnić" trochę zasobów serwera, aby mógł wystartować.


  • +
  • -
  • 1

NIE pomagam na PW. Nie trudź się, na zlecenia nie odpiszę... Od pomagania jest forum.
NIE zaglądam w tematy wysłane na PW. Jeśli są na forum to prędzej czy później je przeczytam. Jeśli mam co w nich odpisać, to odpiszę.
 
1988650.png?theme=dark


#5 GT Team

    Ten lepszy xD

  • Autor tematu
  • Zbanowany

Reputacja: 321
Wszechpomocny

  • Postów:1 435
  • GG:
  • Imię:Tomasz i Grzegorz
  • Lokalizacja:Wojkowice
Offline

Napisano 23.04.2013 15:42

Jak zwolnić jak to jest na Lanie ? ( New game ) Aaaa już kumam zamiast ExpMod_Mission dałem tabele ExpMod spróbuję robić jak bd na kompie. Nie zamykać

Nowa wersja Tower Defense 0.2 Alpha | Inne Mody -> Nowości

 


#6 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

  • Postów:5 411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 23.04.2013 15:46

Jak zwolnić jak to jest na Lanie ? ( New game )

Jak wykonujesz zbyt dużo zapytań, to wtedy po prostu coś takiego nie wyrabia, dlatego musisz to ograniczyć lub zmienić sposób wykonywania zapytania na inny, bo są dwa, ten drugi przydaje się gdy chcemy wysłać więcej zapytań w danym momencie, ale i tak najlepiej łączyć też takie zapytania.
  • +
  • -
  • 1

Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo


#7 GT Team

    Ten lepszy xD

  • Autor tematu
  • Zbanowany

Reputacja: 321
Wszechpomocny

  • Postów:1 435
  • GG:
  • Imię:Tomasz i Grzegorz
  • Lokalizacja:Wojkowice
Offline

Napisano 23.04.2013 15:52

To proszę o pomoc. Bo nei znam tych 2, tylko 1. Czytałem temat o mysql

Nowa wersja Tower Defense 0.2 Alpha | Inne Mody -> Nowości

 


#8 GwynBleidD

    Godlike

  • Przyjaciel

Reputacja: 1 869
Godlike

  • Postów:3 066
  • Steam:steam
  • Lokalizacja:Przemyśl
Offline

Napisano 23.04.2013 17:36   Najlepsza odpowiedź

Tu chodzi głównie o znajomość samego SQLa, nie AMX. Np żeby zamiast 2ch zapytań: select + jeśli coś zwrócił to update, jeśli nie zwrócił to insert, zrobić INSERT ... ON DUPLICATE KEY UPDATE, aby ograniczyć zapytanie do 1go. Dodatkowo wrzucać dane wszystkich graczy w 1 zapytaniu, a nie dla każdego w osobnym. Do tego nie używać w zbyt dużej ilości pluginów SQL na raz, używać 1 Tuple dla wszystkich pluginów korzystających z tej samej bazy... Optymalizacji można dużo wymyśleć, nawet pamięć ram ogólnie przez serwer zabierana ma na to (chyba największy) wpływ.


  • +
  • -
  • 1

NIE pomagam na PW. Nie trudź się, na zlecenia nie odpiszę... Od pomagania jest forum.
NIE zaglądam w tematy wysłane na PW. Jeśli są na forum to prędzej czy później je przeczytam. Jeśli mam co w nich odpisać, to odpiszę.
 
1988650.png?theme=dark


#9 GT Team

    Ten lepszy xD

  • Autor tematu
  • Zbanowany

Reputacja: 321
Wszechpomocny

  • Postów:1 435
  • GG:
  • Imię:Tomasz i Grzegorz
  • Lokalizacja:Wojkowice
Offline

Napisano 23.04.2013 17:41

Trudno, nie będę się bawić w te klocki. Wersję z expmda mysql odkładam na później. Każdemu po pluisiku :)

 


Nowa wersja Tower Defense 0.2 Alpha | Inne Mody -> Nowości

 





Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych