vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

ADO.NET / Datenbanken
Re: DB-Eingenschaften lesen 
Autor: Tynstar
Datum: 26.01.08 02:14

Hallo Micke,

danke für die Antwort (auch wenn sie mich nicht zum Ziel gebracht hat

Aber die Hauptgöttinnen der Programmierer - Geduld und Hartnäckigkeit - waren mir dann letzen Endes doch noch hold:

Über die ADOX-Bibliothek bekommt man so ziemlich alle Informationen über eine DB, die man haben möchten (Tabellen und deren Spalten, Views, Procedures, Groups, Users).

Dazu ist zunächst der Verweis auf die COM-Bibliothek "Microsoft ADO Ext. 2.8 for DLL and Security" - MSADOX.DLL hinzuzufügen.

Mit folgendem Code kann man dann alle Spalten aller Tabellen mit deren Eigenschaften ermitteln und ausgeben.
Warum die Spalteneigenschaften "RELATEDCOLUMN" und "SORTORDER" zu Fehlern führen, konnte ich allerdings noch nicht herausfinden.

Dim iCounter, iCounter_F As Integer
      Dim objCon As ADODB.Connection
      Dim objTable As ADOX.Table
      Dim objColumn As ADOX.Column
 
      objCon = New ADODB.Connection
      objCon.Open(sConnectionString)
 
      Dim cat As New ADOX.Catalog
      cat.ActiveConnection = objCon
 
      For iCounter = 0 To (cat.Tables.Count - 1)
         objTable = cat.Tables(iCounter)
 
         If (Left((UCase(objTable.Name)), 4) <> "MSYS") Then
            Console.WriteLine("TABLENAME = " & objTable.Name)
 
            For iCounter_F = 0 To (objTable.Columns.Count - 1)
               objColumn = objTable.Columns(iCounter_F)
               Console.WriteLine("   FIELDNAME = " & objColumn.Name)
 
               Console.WriteLine("      DEFINEDSIZE = " & objColumn.DefinedSize)
               Console.WriteLine("      NUMERICSCALE = " & _
                 objColumn.NumericScale)
               Console.WriteLine("      PRECISION = " & objColumn.Precision)
               'Console.WriteLine("      RELATEDCOLUMN = " & 
               ' objColumn.RelatedColumn)
               'Console.WriteLine("      SORTORDER = " & objColumn.SortOrder)
               Console.WriteLine("      TYPE = " & objColumn.Type)
            Next
         End If
      Next
 
      objCon.Close()
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
DB-Eingenschaften lesen794Tynstar25.01.08 13:16
Re: DB-Eingenschaften lesen680Micke25.01.08 17:09
Anhang515Micke25.01.08 17:31
Re: DB-Eingenschaften lesen592Tynstar26.01.08 02:14
Re: DB-Eingenschaften lesen536ModeratorFZelle26.01.08 15:12
Re: DB-Eingenschaften lesen533Tynstar28.01.08 23:41

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel