hlmod.hu https://hlmod.hu/ |
|
SQL Tutorial https://hlmod.hu/viewtopic.php?f=14&t=22815 |
Oldal: 1 / 6 |
Szerző: | mforce [ 2015.11.30. 13:35 ] |
Hozzászólás témája: | SQL Tutorial |
[kozep]SQL Tutorial by mforce[/kozep] Leírás: Ez egy egy szálon futó folyamat, ha a leírás szerint alkalmazzátok, akkor kevés teljesítmény használat mellett van egy hibátlan SQL mentésetek. Gyors ismertető: Kód: CREATE TABLE IF NOT EXISTS = Tábla létrehozása, ha nem létezik Alap: SQL csatlakozás adatait és egy kezelő tömböt adjunk a pluginnak. (függvényen kívül felülre)
Tábla létrehozás: Formázások a meghatározók a fentebb felsorolt gyors ismertető szerint. Jelenleg a tábla létrehozás az első. Illesszük be a `tabla_neve` helyére a tábla nevét, amit majd minden parancshoz is beillesztünk, ahol ezt látunk. Ezután adjuk meg a sorok nevét és az értékeket, esetleg a kiegészítő parancsokat, például jelen esetben NOT NULL, majd vesszővel válasszuk el a következő sortól. Az `id` részt javaslom úgy hagyni. A phpmyadminok, csak úgy engedik szerkeszteni a táblákat, ha van egy egyedi elsődleges tábla. Egy automatikusan növekvő számsor sorok létrehozása szerint tökéletes a célra. Ezután a createTableThread rész az SQL kérést teszi meg és figyeli, hogy nem-e lett benne hiba.
Játékos betöltése: Mivel username sort készítettem, így most névre mutatom meg. Persze változtatható egyszerűen, get_user_name részt átírjuk get_user_authid -re, akkor steamid-ről töltődik, viszont akkor arra is kell menteni. A load részből a QuerySelectData részbe visszük tovább az adatokat.
Most egy szám változót töltöttünk be, de mi van ha szöveg kellene? Az SQL_ReadResult mindenhol másképp van. API infó: https://www.amxmodx.org/api/sqlx/SQL_ReadResult Könnyed leírás: Szám betöltés, amit most láthattunk:
Szöveg:
Float:
Játékos sorainak létrehozása: Itt a betöltés résznél, már lekértük a save(id) függvényt, ha nem találtuk az adatbázisban az embert. Az értéknek alapból 0-át adunk meg, nem is kérjük le inkább feleslegesen, még ha 0 is. Lássuk:
Megjegyzés: A QuerySetData részt még felhasználjuk a játékos pontjainak mentéséhez is. Játékos pontjainak mentése: Az int = szám az %i, a string = szöveg az %s, ne felejtsük el. Most a valtozo[id], az szám, tehát nézzük a példát:
Ezzel frissültek a névre a pontok. Több érték adása a formázásban így néz ki:
Tehát igazából csak simán vesszővel elválasszuk. Az update(id) részt, oda rakjuk, ahol mentést szeretnénk, nem terheli le a szervert, mintha fájlba történne. Mutatok azért egy lecsatlakozáskori mentést az egyszerűség kedvéért:
Megjegyzés: Mindig csekkoljuk le, hogy nem-e bot, mivel már csatlakozáskor nem töltöttük be, ha bot, így a tábla se jött létre. Tehát hibát dob, ha botról van szó és frissülne neki valami, de nincs táblája. Befejezés:
Teljes forráskód: Kommentek nélkül.
Végszó: Ennyi lenne, az egyszerűség kedvéért írtam csak változókat, persze ezzel mindent meg lehet oldani, de így tudtok minden parancsot. További problémák kibeszélése ezzel kapcsolatban itt! |
Szerző: | mforce [ 2015.11.30. 13:52 ] |
Hozzászólás témája: | Re: SQL Tutorial |
Azonnal eszembe is jutott, hogy mit hagytam ki. Index sor törlése az így néz ki, akinek szüksége van rá:
|
Szerző: | jokypapa [ 2015.11.30. 14:14 ] |
Hozzászólás témája: | Re: SQL Tutorial |
Köszönjük! |
Szerző: | cmd [ 2015.11.30. 14:37 ] |
Hozzászólás témája: | Re: SQL Tutorial |
Telyes forraskodot nem birsz adni a vegere ? |
Szerző: | PistaCFG [ 2015.11.30. 14:40 ] |
Hozzászólás témája: | Re: SQL Tutorial |
Az a baj vele hogy egy Global modot nem lehet el menteni vele |
Szerző: | mforce [ 2015.11.30. 15:04 ] |
Hozzászólás témája: | Re: SQL Tutorial |
PistaCFG írta: Az a baj vele hogy egy Global modot nem lehet el menteni vele De el lehet mindent, ne beszélj hülyeségeket feleslegesen pls... Tanuld meg a len+ -t, told nagyobbra a karakterszámot, próbáld meg valamibe tárolni a táblák nevét és úgy megadni, azt kész.
|
Szerző: | slre141 [ 2015.11.30. 16:00 ] |
Hozzászólás témája: | Re: SQL Tutorial |
nagyon köszönöm mforce régota keressem |
Szerző: | Anonymous1337 [ 2015.12.02. 21:58 ] |
Hozzászólás témája: | Re: SQL Tutorial |
cmd írta: Telyes forraskodot nem birsz adni a vegere ? http://www.magyarhelyesiras.hu/ |
Szerző: | slre141 [ 2015.12.03. 15:23 ] |
Hozzászólás témája: | Re: SQL Tutorial |
valami gondot dob erre a sorra valaki javitaná?
|
Szerző: | mforce [ 2015.12.03. 15:30 ] |
Hozzászólás témája: | Re: SQL Tutorial |
nem ublic, hanem public. Meg ,`id` INT(11) NOT NULL tehát id tábla 2x van. Az utolsó maradjon, mert az PRIMARY KEY meg AUTO_INCREMENT, nem véletlen lett odaírva, hogy kell. |
Oldal: 1 / 6 | Minden időpont UTC+02:00 időzóna szerinti |
Powered by phpBB® Forum Software © phpBB Limited https://www.phpbb.com/ |