IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MS SQL Server Discussion :

Exporter le script de création d'une base de donnée en ligne de commande


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné
    Avatar de karami
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    343
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Juin 2005
    Messages : 343
    Par défaut Exporter le script de création d'une base de donnée en ligne de commande
    Bonjour

    Tout est dans le titre, je veux exporter les vues, tables et procedures stockée de ma DB séparément (sur 3 fichiers) en ligne de commande.

    Et comment ajuster egalement le paramettre "gérer les dépendances" en ligne de commade.

    Merci d'avance.

  2. #2
    Membre chevronné
    Avatar de karami
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    343
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Juin 2005
    Messages : 343
    Par défaut
    Bonjour à tous

    je viens de rassembler un script vbscript qui me permet d'extraire le script de création des tables avec les déclarations des dépendances et contraintes d'integrité à l'aide de SQLDMO:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
        For each item in object 'mon objet est de type table dans ce cas'
                item.Script SQLDMOScript_AppendToFile or SQLDMOScript_PrimaryObject or SQLDMOScript_PrimaryObject Or  SQLDMOScript_DRI_All Or SQLDMOScript_ObjectPermissions or SQLDMOScript_Drops or  SQLDMOScript_IncludeIfNotExists or SQLDMOScript_OwnerQualify, sFileName
        Next
    J'utilise les constantes suivantes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
    'SQLDMO Constants
    Const SQLDMOScript_Aliases = 16384 'Obsolete. 
    Const SQLDMOScript_AppendToFile = 256 'Object Script method only. Append to indicated output file. By default, Script method overwrites existing file. 
    Const SQLDMOScript_Bindings = 128 'Generate sp_bindefault and sp_bindrule statements. Applies only when scripting references a SQL Server table. 
    Const SQLDMOScript_ClusteredIndexes = 8 'Generate Transact-SQL defining clustered indexes. Applies only when scripting references a SQL Server table. 
    Const SQLDMOScript_DatabasePermissions = 32 'Generate Transact-SQL database privilege defining script. Database permissions grant or deny statement execution rights. 
    Const SQLDMOScript_Default = 4 'Const SQLDMOScript_PrimaryObject. 
    Const SQLDMOScript_DRI_All = 532676608 'All values defined as Const SQLDMOScript_DRI_... combined using an OR logical operator. 
    Const SQLDMOScript_DRI_AllConstraints = 520093696 'Const SQLDMOScript_DRI_Checks, Const SQLDMOScript_DRI_Defaults, Const SQLDMOScript_DRI_ForeignKeys, Const SQLDMOScript_DRI_PrimaryKey, and Const SQLDMOScript_DRI_UniqueKeys combined using an OR logical operator. 
    Const SQLDMOScript_DRI_AllKeys = 469762048 'Const SQLDMOScript_DRI_ForeignKeys, Const SQLDMOScript_DRI_PrimaryKey, Const SQLDMOScript_DRI_UniqueKeys combined using an OR logical operator. 
    Const SQLDMOScript_DRI_Checks=  16777216 'Generated script creates column-specified CHECK constraints. Directs scripting when declarative referential integrity establishes dependency relationships. Applies only when scripting references a SQL Server table. 
    Const SQLDMOScript_DRI_Clustered=  8388608 'Generated script creates clustered indexes. Directs scripting when declarative referential integrity establishes dependency relationships. Applies only when scripting references a SQL Server table. 
    Const SQLDMOScript_DRI_Defaults = 33554432 'Generated script includes column-specified defaults. Directs scripting when declarative referential integrity establishes dependency relationships. Applies only when scripting references a SQL Server table. 
    Const SQLDMOScript_DRI_ForeignKeys=  134217728 'Generated script creates FOREIGN KEY constraints. Directs scripting when declarative referential integrity establishes dependency relationships. Applies only when scripting references a SQL Server table. 
    Const SQLDMOScript_DRI_NonClustered=  4194304 'Generated script creates nonclustered indexes. Directs scripting when declarative referential integrity establishes dependency relationships. Applies only when scripting references a SQL Server table. 
    Const SQLDMOScript_DRI_PrimaryKey=  268435456 'Generated script creates PRIMARY KEY constraints. Directs scripting when declarative referential integrity establishes dependency relationships. Applies only when scripting references a SQL Server table. 
    Const SQLDMOScript_DRI_UniqueKeys = 67108864 'Generated script creates candidate keys defined using a unique index. Directs scripting when declarative referential integrity establishes dependency relationships. Applies only when scripting references a SQL Server table. 
    Const SQLDMOScript_DRIIndexes=  65536 'When Const SQLDMOScript_NoDRI is specified, script PRIMARY KEY constraints using a unique index to implement the declarative referential integrity. Applies only when scripting references a SQL Server table. 
    Const SQLDMOScript_DRIWithNoCheck = 536870912 'When using Const SQLDMOScript_DRI_Checks, or Const SQLDMOScript_DRI_ForeignKeys, generated script includes the WITH NOCHECK clause optimizing constraint creation. Applies only when scripting references a SQL Server table. 
    Const SQLDMOScript_Drops=  1 'Generate Transact-SQL to remove referenced component. Script tests for existence prior attempt to remove component. 
    Const SQLDMOScript_IncludeHeaders = 131072 'Generated script is prefixed with a header containing date and time of generation and other descriptive information. 
    Const SQLDMOScript_IncludeIfNotExists=  4096 'Transact-SQL creating a component is prefixed by a check for existence. When script is executed, component is created only when a copy of the named component does not exist. 
    Const SQLDMOScript_Indexes=  73736 'Const SQLDMOScript_ClusteredIndexes, Const SQLDMOScript_NonClusteredIndexes, and Const SQLDMOScript_DRIIndexes combined using an OR logical operator. 
    Const SQLDMOScript_NoCommandTerm = 32768 'Individual Transact-SQL statements in the script are not delimited using the connection-specific command terminator. By default, individual Transact-SQL statements are delimited. 
    Const SQLDMOScript_NoDRI=  512 'Generated Transact-SQL statements do not include any clauses defining declarative referential integrity constraints. Applies only when scripting references a SQL Server table. Only use when script will execute on a version 4.21a SQL Server installation. 
    Const SQLDMOScript_NoIdentity = 1073741824 'Generated Transact-SQL statements do not include definition of identity property, seed, and increment. Applies only when scripting references a SQL Server table. 
    Const SQLDMOScript_NonClusteredIndexes=  8192 'Generate Transact-SQL defining nonclustered indexes. Applies only when scripting references a SQL Server table. 
    Const SQLDMOScript_ObjectPermissions=  2 'Include Transact-SQL privilege defining statements when scripting database objects. 
    Const SQLDMOScript_OwnerQualify = 262144 'Object names in Transact-SQL generated to remove an object are qualified by the owner of the referenced object. Transact-SQL generated to create the referenced object qualify the object name using the current object owner. 
    Const SQLDMOScript_Permissions=  34 'Const SQLDMOScript_ObjectPermissions and Const SQLDMOScript_DatabasePermissions combined using an OR logical operator. 
    Const SQLDMOScript_PrimaryObject=  4 'Generate Transact-SQL creating the referenced component. 
    Const SQLDMOScript_SortedData = 1048576 'Obsolete. 
    Const SQLDMOScript_SortedDataReorg = 2097152 'Obsolete. 
    Const SQLDMOScript_TimestampToBinary=  524288 'When scripting object creation for a table or user-defined data type, convert specification of timestamp data type to binary(8). 
    Const SQLDMOScript_ToFileOnly = 64 'Most SQL-DMO object scripting methods specify both a return value and an optional output file. When used, and an output file is specified, the method does not return the script to the caller, but only writes the script to the output file. 
    Const SQLDMOScript_TransferDefault=  422143 'Default. Const SQLDMOScript_PrimaryObject, Const SQLDMOScript_Drops, Const SQLDMOScript_Bindings, Const SQLDMOScript_ClusteredIndexes, Const SQLDMOScript_NonClusteredIndexes, Const SQLDMOScript_Triggers, Const SQLDMOScript_ToFileOnly, Const SQLDMOScript_Permissions, Const SQLDMOScript_IncludeHeaders, Const SQLDMOScript_Aliases, Const SQLDMOScript_IncludeIfNotExists, and Const SQLDMOScript_OwnerQualify combined using an OR logical operator. 
    Const SQLDMOScript_Triggers=  16 'Generate Transact-SQL defining triggers. Applies only when scripting references a SQL Server table. 
    Const SQLDMOScript_UDDTsToBaseType=  1024 'Convert specification of user-defined data types to the appropriate SQL Server base data type. Applies only when scripting references a SQL Server table. 
    Const SQLDMOScript_UseQuotedIdentifiers=  -1 'Use quote characters to delimit identifier parts when scripting object names. 
    Const SQLDMOScript2_AnsiFile=  2 'Create output file as a multibyte character text file. Code page 1252 is used to determine character meaning. 
    Const SQLDMOScript2_AnsiPadding = 1 'Command batch includes the SET ANSI_PADDING ON and SET ANSI_PADDDING OFF Transact-SQL statements before and after CREATE TABLE statements in the generated script. Use when the article publishes a table. 
    Const SQLDMOScript2_Default = 0 'Default. No scripting options specified. 
    Const SQLDMOScript2_ExtendedProperty = 4194304 'Include extended property scripting as part of object scripting. 
    Const SQLDMOScript2_FullTextIndex = 524288 'Command batch includes statements that define Microsoft Search full-text indexing. Use when the article publishes a table. 
    Const SQLDMOScript2_NoCollation= 8388608 'Do not script the collation clause if source is later tha SQL Server version 7.0. The default is to generate collation. 
    Const SQLDMOScript2_NoFG = 16 'Command batch does not include 'ON <filegroup>' clause that directs filegroup use. Use when the article publishes a table. 
    Const SQLDMOScript2_NoWhatIfIndexes=  512 'Command batch does not include CREATE STATISTICS statements. Use when the article publishes a table. 
    Const SQLDMOScript2_UnicodeFile=  4 'Create output file as a Unicode character text file.
    "SQLDMOScript_PrimaryObject" permet de déclarer les contraintes et les dépendences d'une table, mais il me faut la constante ou la commande qui me permet trier les tables générées selon leurs dépendances, c'est l'equivalent de "Générer les scripts pour tous les objets dépendants" dans SQLServer.

  3. #3
    Membre chevronné
    Avatar de karami
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    343
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Juin 2005
    Messages : 343
    Par défaut
    Personne ?

  4. #4
    Membre Expert
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573
    Par défaut
    Bonjour,

    exemple de code d'export en Ruby, ou Python
    http://www.babaluga.org/doku.php/pro...on_python-ruby

  5. #5
    Membre Expert
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573

  6. #6
    Membre chevronné
    Avatar de karami
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    343
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Juin 2005
    Messages : 343
    Par défaut
    Citation Envoyé par rudib
    Bonjour,

    exemple de code d'export en Ruby, ou Python
    http://www.babaluga.org/doku.php/pro...on_python-ruby
    Merci pour la réponse, je voix qu'ils utilisent les meme constantes d'exportation, mais mon probleme c'est qu'il me faut ordonner les vues extraites selon leurs dépendances.

    Pour l'outil que tu m'as proposer, je ne sais pas s'il dispose d'un utilitaire en ligne de commande, car j'ai besoin d'automatiser tout le process de création du script et le lier avec d'autres process.

  7. #7
    Membre Expert
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573
    Par défaut
    Si tu as quelaues centaines d'euros à dépenser, il y a des outils qui devraient le faire, comme SQL Examiner, SQL Compare, SQL Delta ...

Discussions similaires

  1. création d'une base de données en ligne
    Par safa11 dans le forum Langage
    Réponses: 5
    Dernier message: 02/05/2014, 00h28
  2. generer le script de création d'une base
    Par gold15 dans le forum Débuter
    Réponses: 0
    Dernier message: 19/04/2011, 18h01
  3. c# - script de création d'une base de donnée
    Par SupaDan dans le forum C#
    Réponses: 3
    Dernier message: 01/04/2008, 12h57
  4. Réponses: 4
    Dernier message: 22/09/2004, 09h17
  5. Création d'une base de données contenant des images
    Par gandalf_le_blanc dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 16/06/2004, 15h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo