Programmer avec le langage Linotte
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.

Programmer avec le langage LinotteConnexion

Besoin d'un conseil sur la programmation en Linotte ?

Le deal à ne pas rater :
SITRAM Set 3 poêles tous feux dont induction + poigner amovible
20.99 €
Voir le deal

descriptionConnecteur SQL 0.2 EmptyConnecteur SQL 0.2

more_horiz
Le greffon SQL permet de lire ou modifier une base de données à travers le langage SQL.

Ce greffon est téléchargeable depuis le manageur de greffons ou depuis cette adresse : http://abaque.googlecode.com/files/SQL.zgl

Découvrir le SQL avec MySQL :
http://www.siteduzero.com/tutoriel-3-46 ... mysql.html

Pour fonctionner, il faut indiquer à Linotte le pilote JDBC permettant de se connecter à votre base données.
Pour MySQL, il faut le télécharger ici : http://dev.mysql.com/downloads/connector/j/

[s]
Voici sous Windows la commande à effectuer pour lancer l'Atelier :
C:\Java\jdk1.6.0_23\bin\java -cp C:\tmp\mysql-connector-java-XXXX-ga-bin.jar;
.\Linotte.jar org.linotte.frame.Atelier
[/s]

Déposer le fichier mysql-connector-java-XXX-ga-bin.jar dans le même répertoire que votre livre.

Et voici un exemple Linotte que vous devez adapter à vos besoins :

[php]
Démonstration SQL :
connecteur :: sql
retour :: casier de texte
paramètres :: casier de texte
max <
- 0
début
efface tableau
évoque connecteur.pilote("mysql-connector-java-XXX-ga-bin.jar")
évoque connecteur.open("oracle.jdbc.driver.OracleDriver","jdbc:oracle:thin:@localhost:1521:DEMO","DEMO","DEMO")

//Effectuer une requête SELECT :
évoque connecteur.select("select id , data from TEST")
tant que connecteur.hasnext(), lis
i <
- 0
affiche "----------------"
retour vaut connecteur.next()
convertis retour{0} en i
si i >
max, max vaut i
affiche retour
ferme
affiche "Max : " + max

//Effectuer une requête INSERT :
ajoute "" + (max + 1) dans paramètres
ajoute "${jour} ${minute} ${seconde}" dans paramètres
évoque connecteur.execute( "insert into TEST (id, data) values (? , ?)", paramètres )

//Effectuer un update :
vide paramètres
ajoute "coucou ${jour} ${minute} ${seconde}" dans paramètres
ajoute ""+35 dans paramètres
évoque connecteur.execute( "update TEST set data = ? where id = ?", paramètres )

//Effectuer un delete :
vide paramètres
ajoute ""+28 dans paramètres
évoque connecteur.execute( "delete from TEST where id = ?", paramètres )
évoque connecteur.close()
[/php]


*******************************************
Exemple de connexion avec une base de données HSQLDB
*******************************************

[php]
/*
Exemple pour se connecter sur une base de données HSQLDB
1 - Télécharger le pilote java HSQLDB sur http://hsqldb.org/
2 - Extraire le fichier hsqldb.jar dans le répertoire c:\temp
3 - Créer une base de données avec l'outil intégré : C:\Temp>
java -jar hsqldb.jar
Type : HSQL Database Engine Standalone
Driver : org.hsqldb.jdbcDriver
URL : jdbc:hsqldb:file:c:/temp/demo2
User : sa
Password :
4 - Depuis OpenOffice ou LibreOffice, configurer pour ajouter le pilote hsqldb.jar
5 - Avec l'outil Base, créer une table avec ses colonnes
6 - Déposer le fichier hsqldb.jar dans le même répertoire que votre livre
7 - Adapter l'exemple suivant et s'amuser !
*/
principale :
connecteur :: sql
retour :: casier de texte
paramètres :: casier de texte
g <
- chr(34)
sql <
- "select ${g}nom${g}, ${g}prenom${g} from PUBLIC.${g}famille${g}"
pilote <
- "org.hsqldb.jdbcDriver"
url <
- "jdbc:hsqldb:file:c:/temp/demo2;
ifexists=true;
"
utilisateur <
- "sa"
motdepasse <
- ""
début
Essaie lis
efface tableau
affiche sql
évoque connecteur.pilote("hsqldb.jar")
évoque connecteur.open(pilote,url,utilisateur,motdepasse)
évoque connecteur.select(sql)
tant que connecteur.hasnext(), lis
retour vaut connecteur.next()
affiche "Prénom : " + retour{1}+ ", nom : " + retour{0}
ferme
ferme
sinon lis
// Gestion des erreurs
"Numéro de l'erreur : " + numéro_erreur !
"Message de l'erreur : " + message_erreur !
ferme
évoque connecteur.execute("SHUTDOWN", paramètres)
évoque connecteur.close()
[/php]

descriptionConnecteur SQL 0.2 EmptyRE: Connecteur SQL 0.1

more_horiz
Cool, la gestion de base de données arrive x)
Par contre, ça a l'air compliqué...

descriptionConnecteur SQL 0.2 EmptyRE: Connecteur SQL 0.1

more_horiz
C'est pour cela que j'ai ajouté un lien vers le tutoriel SiteDuZero.

D'ailleurs, si une personne est motivée pour écrire un petit tutoriel pour s'amuser avec les bases de données en Linotte....

descriptionConnecteur SQL 0.2 EmptyRE: Connecteur SQL 0.1

more_horiz
Je viens de mettre à jour le greffon SQL.

Plus besoin de modifier le lanceur Linotte pour charger le pilote JDBC:

[s]
Voici sous Windows la commande à effectuer pour lancer l'Atelier :
C:\Java\jdk1.6.0_23\bin\java -cp C:\tmp\mysql-connector-java-XXXX-ga-bin.jar;
.\Linotte.jar org.linotte.frame.Atelie
[/s]

On peut, dans le livre, indiquer le chemin d'accès au fichier JDBC :

[php]
évoque connecteur.pilote("mysql-connector-java-XXX-ga-bin.jar")
[/php]
ou
[php]
évoque connecteur.pilote("c:\temp\mysql-connector-java-XXX-ga-bin.jar")
[/php]

descriptionConnecteur SQL 0.2 EmptyRe: Connecteur SQL 0.2

more_horiz
privacy_tip Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum