|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre confirmé
![]() Inscription : mars 2002 Messages : 323 ![]() |
Je souhaite récupérer la structure d'une base de données à partir d'une connexion par JDBC (je travaille en Java). Ou bien par ODBC car il existe une passerelle JDBC/ODBC .
Voici les infos dont j'ai besoin, à partir d'une connexion à une base de données : - les tables (leur nom) - pour chaque table: les colonnes (nom, type, isNotNull, taille si c'est du varchar ou char) - pour chaque table: les clefs étrangères, c-à-d les colonnes qui référencent (la fk) et les colonnes référencées (la pk) - pour chaque table: les contraintes uniques - pour chaque table: les colonnes composant la clef primaire Je souhaite faire ce boulot pour : * PostGreSQL * MS SQL Server * Access * Oracle * Interbase Je sais que les tables systèmes ne sont pas standards. Question : existe-t'il des fonctions génériques au niveau du driver ODBC ou JDBC ? Sinon, quelqu'un a-t'il des éléments d'informations pour un de ces SGBD ? Mon problème est surtout pour récupérer les clefs étrangères. Pourtant c'est possible car plusieurs logiciels de conception de bdd le font. Thomas
__________________
creapage.net |
|
|
00
|
|
|
#2 |
![]() ![]() |
Salut,
Oui tu peux extraire les méta informations de la base de données avec JDBC. Il y a les classes et méthodes dont tu a besoin ici : http://java.sun.com/j2se/1.4/docs/ap...e-summary.html Bien sur l'API JDBC du distributeur du SGBD peut différer. Reportes toi alors a la documentation de l'API constructeur. Je l'ai utilisé pour PostgreSQL et Oracle mais je ne sais pas pour les autres .
__________________
Bye... Petrus Article: le routeur-modem ADSL-WiFi D-Link DSL-G604T (Montavista) et le modem Thomson THG520. Articles Developpez.com (Java, UML, Linux, etc.) Blog Developpez.com Blog Personnel |
|
00
|
|
|
#3 |
|
Membre confirmé
![]() Inscription : mars 2002 Messages : 323 ![]() |
Merci Pierre !
j'ai testé et ça marche nickel pour Interbase par JDBC. Donc ça marchera aussi pour Oracle et PostGreSQL à priori. Donc merci beaucoup. Par contre pour Access et SQL Server je souhaiterai travailler avec les driver ODBC (car pour eux les drivers jdbc sont peu répandus). Est-il possible de récupérer la définitions des clefs-étrangères dans les tables systèmes d'Access et SQL Server? Thomas
__________________
creapage.net |
|
|
00
|
|
|
#4 |
![]() ![]() |
Salut,
La c'est une colle pour moi, et je ne me suis jamais interessé plus que ca a ODBC, je ne sais donc pas si l'on peut avoir acces aux meta infos d'une base avec ODBC, a+
__________________
Bye... Petrus Article: le routeur-modem ADSL-WiFi D-Link DSL-G604T (Montavista) et le modem Thomson THG520. Articles Developpez.com (Java, UML, Linux, etc.) Blog Developpez.com Blog Personnel |
|
00
|
|
|
#5 |
![]() ![]() |
Pour MS-SQL Server, ça ressemble étrangement à du Sybase, donc les infos doivent se trouver principalement dans
select id, name from sysobjects where type in ("U", "S") pour les tables select id, indid from sysindexes pour les indexes, clés, etc select objid, name from syscolumns pour les infos par colonne select * from systypes pour retrouver le type de chaque colonne Pour plus d'info, procure-toi le modèle de donnée des tables système de MS SQL Server et d'Access. |
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() |
salut, je travaille presque sur le même sujet ("analyseur de requêtes d'accès au serveur de base de données), sauf que moi je dois récupérer les requêtes que lance un client sur un serveur de base de données dans le but de les analyser plus tard.
Je veux savoir est t'il possible à travers JDBC ou ODBC de récuperer des informations sur ces requêtes et sur les réponses du serveur, car normalement toutes les requêtes et les répones passent par le JDBC / ODBC... sinon avez vous une idée sur comment récupérer une telle information autrement... Merci de vos réponses |
|
|
00
|
|
|
#7 |
![]() ![]() ![]() Frédéric BROUARDExpert SGBDR & SQL Inscription : mai 2002 Messages : 10 953 ![]() |
Les définitions de la structure d'une BD est normalisée depuis SQL2 (1992) par des vues d'information de schéma présente notamment sous MS SQL Server depuis la version 7.
Lisez l'article que j'ai écrit à ce sujet : http://sqlpro.developpez.com/cours/sqlaz/ddl/?page=partie2#L9 A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/ Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp. Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * * |
|
00
|
Copyright © 2000-2012 - www.developpez.com