Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

Tabellenübersicht erstellen





Frage

Hallo Leute möchte folgendes machen und weiß nicht wie´s geht. Zuerst die Situation: es existieren insgesamt 5 MS Access-Datenbanken, die größtenteils auf einen SQL-Server zugreifen; d.h. ein Großteil der Tabellenobjekte im Access sind verknüpft (ODBC). Nun weiß inzwischen kein Mensch mehr, welche SQL-Tabelle von welchen Datenbnaken benutzt wird; dies wäre aber wiederum wichtig, um die Berechtigungsstruktur nachvollziehen zu können. Nun möchte ich so etwas wie eine Datenbank über die Datenbanken erstellen. Dazu benötige ich zuerst eine Tabelle, in welcher von jeder Datenbnak die Tabellen und der Typ (als Tabelle oder verknüpfte Tabelle(ODBC) ) gesammelt sind. Diese Daten kann ich dann für spätere Dokumentationen weiterverwenden. Hat jemand eine Idee wie ich das umsetzen kann - das müßte sich doch sicher mit VBA erledigen lassen. Nochmal die Kurzform: das Ergebnis soll eine Tabelle sein, die alle Tabellen der jeweiligen DB enthält sowie den Tabellentyp. Thx ♪♫♪

Antwort 1 von Renegade

Lass mich raten Access 97? Falls es in Access 97 gemacht korrekt gemacht wurde, müsste es auf jeden Fall ne Mapping - Table geben, in der die Tabellen des SQL - Servers hinterlegt sind.

Antwort 2 von naextenliebe

ist tatsächlich Access 97 - vergaß ich zu erwähnen ...
Mapping-Tabelle? Falls die unter Tabellen zu finden sein sollte, gibt es dann wohl nicht ...
Kriegt die dann irgenwie einen bestimmten Titel oder kann man die nochmals manuell / automatisch erstellen?

♪♫♪

Antwort 3 von Renegade

Wie wurde die ODBC - Verbindung umgesetzt, mit VBA? Dann müsste es diese Tabelle geben, denn Sie bindet die Tabellen und Sichten des SQL - Servers mit denen von Access und bestimmt den Primary Key bei Sichten. So könnte eine SQL-Tabelle wie dbo.tbCustomer als Access-Verlinkung t_Customer heissen.

Aber deine Informationen sind nicht gerade reichhaltig, wenn beschreibe bitte die Anbindung und prüfe an Hand einer Stichprobe wie die gelinkte Accesstabelle auf dem SQL - Server heisst und ob die Namensvergabe schematisch ist, ach ja die SQL - Server Version wäre auch interesant zu wissen.

Antwort 4 von naextenliebe

Hallo Renegade,

erstmal danke für deine Bemühungen bisher. Hier weitere Infos:

SQL-Server 6.5
Anbindung wurde zuletzt immer im Access gemacht (Externe Daten / Verknüpfen / ODBC ...), also manuelle erstellt. Die Datenbnaken wurden als Projektarbeit von einem externen Unternehmen erstellt, wie die das im Detail gemacht haben ist mir nicht bekannt. Die haben nämlich ihrerseits wieder Programmierer beschäftigt und jeder hat da etwas unterschiedliche Auffassungen gehabt wie mir scheint.

Die Tabellen haben auch alle den Original SQL-Namen im Access; also z.B. DBO_Tabelle1 usw.

Gut, wenn sich das nicht einfach erledigen lassen sollte, muß ich halt die ganzen TAbellen manuell in eine Mastertabelle eintragen, sind immer zwischen 50 - 100 pro Datenbank, aber es wäre nur einmal die Arbeit ...

♪♫♪

Antwort 5 von Renegade

(Beitrag ist in Tabellenexistenz reingeraten, also noch mal hier)

im Beitrag
https://supportnet.de/discussion/listmessages.asp?content=&recno=96845&adminrecno=23

ist beschrieben wie man die Tabellen einer Access - Datenbank ausliest. Diese könntest du nutzen um eine Tabelle zu füllen, zusätlich könntest du den Datenbankname mit Applikation.name ermitteln und übergeben.

Bsp. Info-Tabelle
Auto_ID (Autowert)
tbTableName (Text/50)
tbAccessDB (Text/50) oder Link mit einer Tabelle in der du die Access Namen hälst

Das Modul könnte folgender Massen aussehen:

Dim db As Database
Dim tdf As TableDef
Dim fldLoop As Field

Set db = OpenDatabase("info.mdb")
Set tdf = db.TableDefs!Info-Tabelle
'Beispiel für Verbindung zur Info-Datenbank

' Code aus anderen Beitrag + Application.Name


So könntest du deine Info - Tabelle schnell aufbauen, das VBA-Modul müsste in jeder Datenbank plaziert werden. Nutze noch die Access-VBA Hilfe.

Hast du Ahnung von VBA?
Evtl. kann ich dir helfen

Antwort 6 von naextenliebe

VBA kann ich nur ein wenig (hab das mal mit Excel gelernt aber nur wenig benutzt).
Nehme mir das als Fleißaufgabe für die kommende Woche vor. Muß jetzt noch in ein Meeting (gähn ...) und dann geh ich heim. Melde mich am Die wieder! Danke derweil.
♪♫♪

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: