Gestion de bases de données avec SyScript
en cas de problème d'affichage des fichiers de type ".spg" vous devez installer le plugin
tester un exemple simple ici : à partir d'une page web documentation
|
|
Comment gérer une base de données avec SyScript ? Il peut être utile de stocker des données dans une base de données. SyScript permet d'accéder directement à une base de données MySQL avec la commande MYSQLQUERY (pour accéder à d'autres bases de données, utilisez la commande ODBC). |
|
|
Pour utiliser MYSQL, préfixez juste les syntaxes SQL avec la commande MYSQLQUERY. Pour SELECT, CONNECT regardez l'exemple suivant : MYSQLCONNECT SERVERNAME,BASEACCOUNT,BASEPASSWORD,SERVERPORT MYSQLSELECTDB BASENAME (à utiliser seulement si le nom de la base de données n'est pas indiquée dans la requête) MYSQLQUERY MYSQL_COMMAND ex : MYSQLQUERY SHOW DATABASES ex : MYSQLQUERY SHOW TABLES ex : MYSQLQUERY SELECT * FROM `BASENAME`.`TABLENAME`.`FIELD` WHERE `BASENAME`.`TABLENAME`=12 ex : MYSQLQUERY SELECT * FROM TABLENAME WHERE FIELD=12 ex : MYSQLQUERY SELECT * FROM `DATABASE`.`TABLE` ex : MYSQLQUERY SELECT FIELD FROM `DATABASE`.`TABLE` Précision : vous devez mentionner la base de données si la commande MYSQLSELECTDB n'a pas été utilisée |
|
|
Toutes les requêtes MYSQLQUERY sont stockées dans un tableau appelé MYSQLQUERY documentation |
|
|
Certains caractères ont besoin d'être protégés afin que la commande fonctionne correctement Cela peut-être réalisé avec la commande MYSQLESCAPE, qui transforme correctement les chaînes de caractères par exemple, ici, le caractère spécial à protéger est QUOTE (') MYSQLESCAPE l'esprit et le vin SET MAVARIABLE=%MYSQLESCAPE% MYSQLQUERY SELECT * FROM MaTable WHERE FIELD='%MAVARIABLE%' Il est aussi possible de modifier des caractères spéciaux facilement, avec le mot spécial ".MY$" Regardez ici un exemple : MYSQLQUERY SELECT * FROM MaTable WHERE FIELD='%MAVARIABLE.MY$%' |
|
|
Il est possible de stocker des données en mode binaire dans la base de données, par exemple, nous pouvons y stocker des plugins SyScript comme les fichiers ".spg". La commande BINGET permet de lire un fichier binaire Certains caractères spéciaux ont besoins d'être protégés pour que la requête fonctionne correctement La commande VARPROTECT est utilisée pour protéger les caractères contre n'importe quelles conversions non désirées La commande MYSQL UPDATE permet de mettre à jour des données existantes exemple : BINGET PATH\file.spg VARPROTECT # MYSQLQUERY INSERT INTO `BASENAME`.`TABLENAME`(`id`,`pathname`,`filename`,`file`,`size`) VALUES ('%ID%','%PATHNAME.MY$%','%FILENAME.MY$%','#BINGET.MY$#','%NBINGET%') |
|
|
Les requêtes de base de données peuvent être réalisées à travers un server web (voir serveur http). Pour demander à SyScript d'exécuter une requête à travers un serveur http, vous avez juste besoin d'initialiser la commande suivante : MYSQLBYHTTP ON,SERVERNAME:PORT_NUMBER ex : MYSQLBYHTTP ON,MYSERVER:80 Toutes les commandes MYSQLQUERY ne seront plus exécutées directement par le script, mais demandées au serveur d'être exécutées à travers internet Le serveur aura la charge d'envoyer la requête à la base de données internet à travers le réseau Les résultats de la requête seront automatiquement envoyés au client dans le tableau MYSQLQUERY L'avantage principal de cette méthode est de traverser les PROXY et les FIREWALLS voir SyScript http server |
