Français Solved Comment créer un script avec une liaison DB ?

  • Auteur de la discussion Auteur de la discussion ScorpIx
  • Date de début Date de début

ScorpIx

User
29/12/19
8
0
100
Bonjour,
Depuis des mois je fait beaucoup de scripts coté client.
Hors j'aimerais maintenant level up pour créer des script avec une liaison DB afin d'enregistré certaine donnée.

Quelqu'un aurais un exemple a me donner afin de comprendre le fonctionnement ?

Je ne demande pas un exemple avec tout les variable existante, mais si possible avec un Get et un Set que je puisse voir comment est appeler et envoyer une donnée a la DB.

Merci beaucoup pour votre aide.
 
Solution
Hello! Tout se passe côté life_server :

Pour faire un SELECT dans une base de données avec 1 seul résultat attendu :
Code:
_query = format["SELECT colonne_1, colonne_2 FROM ma_table WHERE test='%1'","oui"];
_queryResult = [_query,2] call DB_fnc_asyncCall;

Ici colonne_1 vaut (_queryResult select 0)

Pour faire un SELECT dans une base de données avec plusieurs résultats attendus :
Code:
_query = format["SELECT colonne_1, colonne_2 FROM ma_table WHERE test='%1'","oui"];
_queryResult = [_query,2,true] call DB_fnc_asyncCall;

Ici il faudra faire un forEach pour chaque élement de _queryResult pour avoir la colonne_1 et/ou la colonne_2

Pour faire un INSERT...
Hello! Tout se passe côté life_server :

Pour faire un SELECT dans une base de données avec 1 seul résultat attendu :
Code:
_query = format["SELECT colonne_1, colonne_2 FROM ma_table WHERE test='%1'","oui"];
_queryResult = [_query,2] call DB_fnc_asyncCall;

Ici colonne_1 vaut (_queryResult select 0)

Pour faire un SELECT dans une base de données avec plusieurs résultats attendus :
Code:
_query = format["SELECT colonne_1, colonne_2 FROM ma_table WHERE test='%1'","oui"];
_queryResult = [_query,2,true] call DB_fnc_asyncCall;

Ici il faudra faire un forEach pour chaque élement de _queryResult pour avoir la colonne_1 et/ou la colonne_2

Pour faire un INSERT :
Code:
_query = format ["INSERT INTO ma_table (colonne_1, colonne_2) VALUES ('%1','%2')","un truc","un autre truc"];
[_query,1] call DB_fnc_asyncCall;
Il n'y a aucun résultat et pour faire un UPDATE c'est la même chose il faut juste changer la _query selon la syntaxe du SQL
 
Solution
Merci pour la réponse,

Donc, colonne_1 / colonne_2 c'est mes colonne choisi dans ma table
ma_table = la table choisi

SELECT permet de selectionné dans quel colonne récupéré la donnée
INSERT permet d'ajouter une Valeur de base ?
UPDATE permet de mettre a jour la valeur dans une colonne ?

Maintenant, comment puis-je appeler le résultat directement depuis la mission ? avec un remoteExec ?

Merci
 
Maintenant, comment puis-je appeler le résultat directement depuis la mission ? avec un remoteExec ?
Il faut utiliser des remoteExec puisque la requête SQL se fait dans le life_server et les scripts du joueur sont dans la mission.

Donc la mission remoteExec le fichier du life_server, et le life_server remoteExec un autre fichier de la mission qui affiche le résultat au joueur