Précédent   Forum des professionnels en informatique > Bases de données > MS SQL-Server
MS SQL-Server Forum Microsoft SQL-Server. Avant de poster -> FAQ SQL-Server, Tutoriels SQL-Server
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/11/2010, 10h06   #1
Membre Expert
 
Inscription : octobre 2007
Messages : 3 936
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 3 936
Points : 1 904
Points : 1 904
Par défaut retrouver la syntaxe de design d'une vue existante

Bonjour

Je fais un petit outil pour transferer des éléments d'une base MS Sql vers une base MySql vide

Je dois donc creer les nouvelles tables MySQL a partir du Schema MS Sql et transferer les données

Pour les tables c'est fait

Mais pour les vues je cherche encore comment retrouver la syntaxe de creation des vues existantes

Merci pour votre aide
__________________
« Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)
olibara est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/11/2010, 10h38   #2
Rédacteur/Modérateur

 
Avatar de SQLpro
 
Homme Frédéric BROUARD
Expert SGBDR & SQL
Inscription : mai 2002
Messages : 10 931
Détails du profil
Informations personnelles :
Nom : Homme Frédéric BROUARD
Localisation : France

Informations professionnelles :
Activité : Expert SGBDR & SQL
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 10 931
Points : 17 734
Points : 17 734
Tout se trouve dans les vues normalisées INFORMATION_SCHEMA.

Donc :INFORMATION_SCHEMA.VIEW colonne VIEW_DEFINITION.

Extrait de mon livre sur SQL :

Selon la norme SQL, un serveur de bases de données est composé de catalogues (CATALOG), chacun hébergeant différents schémas (SCHEMA). Tout schéma appartient à un seul propriétaire (utilisateur SQL, en fait identifiant d'autorisé – voir chapitre 8). Un utilisateur peut posséder plusieurs schémas.
Chaque catalogue doit inclure un schéma particulier de nom INFORMATION_SCHEMA, dont la particularité est de décrire le contenu de tous les schémas du catalogue, y compris lui-même.
En dépit du fait que ce schéma particulier, créé par un utilisateur, porte le même nom que le schéma, il est accessible à tous les utilisateurs par un GRANT implicite de tous les objets à PUBLIC.
Les objets constituant le schéma INFORMATION_SCHEMA sont essentiellement des vues (SQL en recense plus d’une centaine), mais on y trouve aussi quelques tables et domaines. Leur lecture permet de rendre compte de la structure complète de tous les schémas de la base. Y sont décrits le catalogue courant, les schémas, les domaines, les types utilisateurs, les tables et vues, et tous les éléments qui les composent : privilèges, assertions, jeux de caractères, collations, translations, langages externes utilisables, routines (fonctions, méthodes, procédures, triggers) et d’autres éléments dont vous pourriez avoir besoin.
Pour construire l’ensemble des objets composant ce schéma d’information, SQL propose un autre schéma de nom DEFINITION_SCHEMA, qui contient tous les objets pour créer les informations contenues dans INFORMATION_SCHEMA. Mais, contrairement au schéma d’information, DEFINITION_SCHEMA n’est pas décrit par ses propres objets, il sert simplement de brique de construction à INFORMATION_SCHEMA.


2 Un aperçu de DEFINITION_SCHEMA
Le schéma DEFINITION_SCHEMA contient des tables et quelques assertions. Nous donnons à titre d’exemple quelques-unes des tables les plus utiles :
Table Contenu
USERS Identifiants d’autorisés (utilisateurs SQL et rôles)
SCHEMATA Nom des schémas du catalogue
DOMAINS Domaines SQL
DOMAIN_CONSTRAINTS Contraintes de domaine
TABLES Tables et vues
VIEWS Vues
COLUMNS Colonnes
VIEW_TABLE_USAGE Tables utilisées par des vues
VIEW_COLUMN_USAGE Colonnes utilisées par des vues
TABLE_CONSTRAINTS Contraintes de table
Table Contenu
KEY_COLUMN_USAGE Colonnes utilisées dans la définition de contraintes PRIMARY KEY, FOREIGN KEY et UNIQUE
REFERENTIAL_CONSTRAINTS Contraintes d’intégrité référentielle
CHECK_CONSTRAINTS Contraintes de validation : assertions, et contrainte de type CHECK de domaine et de table
CHECK_TABLE_USAGE Tables utilisées par une contrainte CHECK
CHECK_COLUMN_USAGE Colonnes utilisées par une contrainte CHECK
ASSERTIONS Assertions
COLLATIONS Collations
TRANSLATIONS Translations
CHARACTER_SETS Jeux de caractères

On y trouve aussi des vues pour décrire les privilèges et les rôles (TABLE_PRIVILEGES, COLUMN_PRIVILEGES, USAGE_PRIVILEGES, ROUTINE_PRIVILEGES, ROLES, ROLE_AUTHORIZATION_DESCRIPTOR), les déclencheurs (TRIGGERS, TRIGGER_TABLE_USAGE, TRIGGER_COLUMN_USAGE, TRIGGERED_UP-DATE_COLUMNS), les routines (ROUTINES, ROUTINE_TABLE_USAGE, ROUTINE_COLUMN_USAGE, PARAMETERS), les types structurés (FIELDS, ELEMENT_TYPES) et enfin les éléments propres à SQL (SQL_FEATURES, SQL_IMPLEMENTATION_INFO, SQL_SIZING, SQL_LANGUAGES).
Trois assertions revêtent un intérêt particulier :
• UNIQUE_CONSTRAINT_NAME : oblige l’unicité des noms des contraintes (assertions, contraintes de domaine, contraintes de table) dans tout le schéma.
• KEY_DEGREE_GREATER_THAN_OR_EQUAL_TO_1 : impose à une contrainte de clé primaire ou d’unicité d’être composée d’au moins une colonne.
• EQUAL_KEY_DEGREES : oblige les clés étrangères à avoir le même nombre de colonnes que les clés (primaires ou uniques) qu’elles référencent.

...

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 * * * * *
SQLpro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/11/2010, 11h08   #3
Membre Expert
 
Inscription : octobre 2007
Messages : 3 936
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 3 936
Points : 1 904
Points : 1 904
Merci SQL_Pro pour ces explications détaillées


Effectivement je regardais trop a l'ouest dans INFORMATION_SCHEMA.TABLES

Je vais essayer de bien me coller en tete l'exploitation générale INFORMATION_SCHEMA
__________________
« Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)
olibara est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/11/2010, 21h48   #4
Membre expérimenté
 
Inscription : octobre 2002
Messages : 654
Détails du profil
Informations forums :
Inscription : octobre 2002
Messages : 654
Points : 552
Points : 552
Bonjour,
Si ta vue ne contient pas trop d'informations par ligne,
Code :
exec sp_helptext MA_VUE
a+
Soazig
soazig est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/11/2010, 22h51   #5
Membre Expert
 
Inscription : octobre 2007
Messages : 3 936
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 3 936
Points : 1 904
Points : 1 904
Merci Soazig

Mais sincérement je prefere maitriser l"ensemble dans Information_Schema
__________________
« Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)
olibara est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h11.


 
 
 
 
Partenaires

Hébergement Web