Index du Forum » » Le coin des codeurs

Auteur

PMA... c'est quoi :
capcaverne
395      

  Posté : 25-11-2002 10:17

Bon, PMA (PhpMyAdmin) c'est un ensemble de tables permettant de definir une structure relationnelle entre les tables de votre base MySQL.
Ca permet de transformer la base NPDS en veritable SGBDR (Système de Gestion de Bases de Données Relationnelles)
(les spécialistes de bases de données savent de quoi je parle )
Ces tables sont les suivantes :

* pma_bookmark : pour conserver les querys les plus souvent utilisées.
* pma_relations : permet de definir les liens entre certains champs des tables de la base : exemple :
- le champs uid de la table avancement(mod projet) = le uid de la table user
* pma_table_info : permet de stocker, pour chaque table de votre base npds, la reference du champs dans lequel vous souhaitez stocker une info sur la table elle même(du type petit descriptif)
* pma_pdf_pages : pour permettre de créer des pdf de descriptis de la structure
*pma_table_coords : listing des tables qui doivnet figurer dans les pdf
*pma_columns_comments : permet de donner un commentaire sur chaque champs de chaque table

toutes ces tables doivent être crées dans votre base Mysql pour pouvoir fonctionner correctement.
ci-dessous la structure des tables ainsi que les modifs à apporter au fichier config.inc.php de PhpMyAdmin pour que ca marche :

# --------------------------------------------------------

#
# Structure de la table `pma_bookmark`
#

CREATE TABLE pma_bookmark (
id int(11) NOT NULL auto_increment,
dbase varchar(255) NOT NULL default '',
user varchar(255) NOT NULL default '',
label varchar(255) NOT NULL default '',
query text NOT NULL,
PRIMARY KEY (id)
) TYPE=MyISAM COMMENT='Bookmarks';
# --------------------------------------------------------

#
# Structure de la table `pma_column_comments`
#

CREATE TABLE pma_column_comments (
id int(5) unsigned NOT NULL auto_increment,
db_name varchar(64) NOT NULL default '',
table_name varchar(64) NOT NULL default '',
column_name varchar(64) NOT NULL default '',
comment varchar(255) NOT NULL default '',
PRIMARY KEY (id),
UNIQUE KEY db_name (db_name,table_name,column_name)
) TYPE=MyISAM COMMENT='Comments for Columns';
# --------------------------------------------------------

#
# Structure de la table `pma_pdf_pages`
#

CREATE TABLE pma_pdf_pages (
db_name varchar(64) NOT NULL default '',
page_nr int(10) unsigned NOT NULL auto_increment,
page_descr varchar(50) NOT NULL default '',
PRIMARY KEY (page_nr),
KEY db_name (db_name)
) TYPE=MyISAM COMMENT='PDF Relationpages for PMA';
# --------------------------------------------------------

#
# Structure de la table `pma_relation`
#

CREATE TABLE pma_relation (
master_db varchar(64) NOT NULL default '',
master_table varchar(64) NOT NULL default '',
master_field varchar(64) NOT NULL default '',
foreign_db varchar(64) NOT NULL default '',
foreign_table varchar(64) NOT NULL default '',
foreign_field varchar(64) NOT NULL default '',
PRIMARY KEY (master_db,master_table,master_field),
KEY foreign_field (foreign_db,foreign_table)
) TYPE=MyISAM COMMENT='Relation table';
# --------------------------------------------------------

#
# Structure de la table `pma_table_coords`
#

CREATE TABLE pma_table_coords (
db_name varchar(64) NOT NULL default '',
table_name varchar(64) NOT NULL default '',
pdf_page_number int(11) NOT NULL default '0',
x float unsigned NOT NULL default '0',
y float unsigned NOT NULL default '0',
PRIMARY KEY (db_name,table_name,pdf_page_number)
) TYPE=MyISAM COMMENT='Table coordinates for phpMyAdmin PDF output';
# --------------------------------------------------------

#
# Structure de la table `pma_table_info`
#

CREATE TABLE pma_table_info (
db_name varchar(64) NOT NULL default '',
table_name varchar(64) NOT NULL default '',
display_field varchar(64) NOT NULL default '',
PRIMARY KEY (db_name,table_name)
) TYPE=MyISAM COMMENT='Table information for phpMyAdmin';

############ FIN ############
Configuration du fichier config.inc.php:

$cfg['PmaAbsoluteUri'] = 'http://localhost/mysql/';
// url de votre base mysql

$cfg['PmaAbsoluteUri_DisableWarning'] = FALSE;
// pour voir les warnings

$cfg['PmaNoRelation_DisableWarning'] = FALSE;
// pour ne pas afficher d'erreur si pas de relations

$cfg['Servers'][$i]['pmadb'] = 'capcaverne';
//nom de la base où trouver les tables pma

$cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark';
// Table des bookmark

$cfg['Servers'][$i]['relation'] = 'pma_relation';
// table pour stocker les relations

$cfg['Servers'][$i]['table_info'] = 'pma_table_info';
// table pour decrire les champs

$cfg['Servers'][$i]['table_coords'] = 'pma_table_coords';
//table pour stocker la position des autres tables ds les pdf

$cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages';
// table to describe pages of relationpdf

$cfg['Servers'][$i]['column_comments'] = 'pma_column_comments';
// - table pour stocker les descriptifs des colonnes


//########### FIN #############

Voili, voilou

Pour ce qui est de la saisie des données dans ces tables, je ne connais pas encore toutes les méandres mais ca ne saurait tarder (enfin ,si j'ai le temps)

Cap



Cet article provient de NPDS

http://www.npds.org/viewtopic.php?topic=3263&forum=5