Outils pour utilisateurs

Outils du site


linux:dia2sql

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

linux:dia2sql [06/04/2012 19:54] (Version actuelle)
daniel créée
Ligne 1: Ligne 1:
 +====== dia2sql ======
 +La doc sur l'​utilisation de dia pour générer du sql est rare...
  
 +[[http://​tedia2sql.tigris.org/​usingtedia2sql.html|doc officielle de tedia2sql]] (en), mais tedia2sql ne sait plus faire d'​export sql depuis dia 0.97 (qui est la version de squeeze). Il faut utiliser [[http://​search.cpan.org/​dist/​Parse-Dia-SQL/​bin/​parsediasql|parsediasql]] (aka Parse::​Dia::​SQL),​ dispo en v 0.16 dans squeeze (paquet libparse-dia-sql-perl).
 +
 +http://​left.subtree.org/​2007/​12/​05/​database-design-with-dia/​ est un petit tutoriel pour débuter.
 +
 +===== Résumé =====
 +
 +Un truc qui peut être énervant, pas moyen de modifier une "​boite"​... il faut choisir l'​outil "​curseur"​ (qui revient ensuite à "​flèche de sélection",​ qui permet d'​afficher les propriétés au double clic mais pas d'​éditer le contenu).
 +
 +Choisir tedia2sql dans le menu déroulant de la palette d'​outils de dia restreint aux boutons qui vont bien, mais UML marche aussi.
 +  * primary key : mettre l'​attribut en "​protected"​
 +  * index : onglet opérations,​ type : "​index"​ ou "​unique index",​ ajouter en paramètres les champs concernés
 +  * auto_increment : c'est spécifique à mysql, il faut utiliser l'​outil "Small Package"​ de "​UML"​ (il s'​appelle "​Séquences"​ dans "​tedia2sql"​),​ et mettre "​mysql:​ typemap"​ en Stereotype, avec comme valeur par ex "​id_auto : int unsigned auto_increment;",​ qui va crée le type de colonne interne à dia "​id_auto"​.
 +  * foreign key : faut utiliser les relations, pas bien clair...
 +  * jeu de données : c'est l'​outil composant, mettre dans propriétés/​stéréotype "​ma_table(champs1,​ champs2)"​ et dans la boite les valeurs, une par ligne (comme elles seront écrites dans les parenthèses de VALUES() de la requête)
 +  * vues : il faut cocher "​abstraite"​ pour la classe, préciser la table concernée en opération de type "​from"​ (et la notation table.champ s'il y a plusieurs tables), et mettre les where en opération (de type "​where",​ idem pour order, avec des parenthèse autour de la condition => name : "​(champ1 > 1)"; type : "​where"​)
linux/dia2sql.txt · Dernière modification: 06/04/2012 19:54 par daniel