Salut !
Je réaliserai donc des tutoriels quand je m'ennuie, que ceux-ci n'existent pas et que vous en avez besoin ! :)
Un sujet que pas mal de skripter aimerait connaître mais qui n'est pas beaucoup utilisé, les bases de données.
Oui il existe 3-4 tutos sur cela mais ce n'est pas les mêmes BDD dont je vais vous parler, eux vous parlent de l'utilisation de prefixes dans vos variables pour qu'elles soient communes pour vos différents serveurs, cette techniques étant déjà dans différents tutoriels je vais vous parler d'une technique ancestrale permettant de vraiment toucher aux BDD, de réaliser de requêtes et de stocker ce que l'on veut, il est par exemple possible d'échanger un site web, stocker les logs de vos plugins de grief etc.
Pour réaliser cela il vous suffira de posséder une base de donnée, de Skript et de l'addon SkQuery.
Je vous conseille d'apprendre à utiliser les bases de la syntaxe MySQL et de connaître les différents termes tale, colonne et ligne -> C'est pas mal ici <- sachant que le SQL c'est l'anglais assez simple :)
Si vous ne possédez pas de base de donnée regardez ici c'est gratuit ;) -> http://freemysqlhosting.net/
Je vais d'abord vous présenter les différentes lignes de code qui servent à réaliser cette liaison serveur - BDD.
Le début, la partie options, ici vous insérez au début de votre script les informations permettant la liaison au serveur MySQL, sous cette forme:
script options:
$ init com.mysql.jdbc.Driver
$ db url jdbc:mysql://localhost:3306/NomDeMaBDD
$ db username IdentifiantDeMaBDD
$ db password MotDePasseDeMaBDD
Deuxième ligne de code, elle permet de récupérer dans une variable unique le premier résultat d'une requête:
set {_variable} to the first element out of objects in column "colonne" from result of query "SELECT colonne FROM table WHERE colonne1 = '%player%'" and close
La suivante permettant de stocker dans une variable liste toutes les données correspondantes à la requête:
add objects in column "colonne" from result of query "SELECT colonne FROM table LIMIT 1,45" and close to {_variable::*}
Et enfin une dernière ligne qui permet de ne faire que réaliser une requête, elle ne permet pas de récupérer des données:
update "INSERT INTO table (colonne1,colonne2, colonne3) VALUES ('%player%', '%uuid of player%', '%{rank::%player%}%')"
Deux trois syntaxes pratiques pour le bases:
"SELECT colonne FROM table WHERE colonne1 = '%player%' LIMIT 34,45" -> sélectionner toutes les données de la colonne 'colonne' où la valeur de la colonne 'colonne1' est '%player%' entre la 34e et la 79e ligne dans la table 'table'
"INSERT INTO table (colonne1,colonne2, colonne3) VALUES ('%player%', '%uuid of player%', '%{rank::%player%}%')" -> insérer dans la table 'table' avec les valeurs '%player%', '%uuid of player%', '%{rank::%player%}%' dans les colonnes 'colonne1', 'colonne2' et 'colonne3'
"CREATE TABLE IF NOT EXISTS table (id int(11) NOT NULL AUTO_INCREMENT, pseudo_vendeur varchar(32) NOT NULL) ;" -> créer la table 'table' avec une colonne 'id' qui sera un nombre non nulle et pseudo_vendeur non nul une suite de caractères limités à 32
N'hésitez pas à me remercier, me critiquer et me conseiller ! ;)