Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Was ist das Dictionary von Datenbanken ?

Empfohlene Antworten

Hallo,

kann mir jemand sagen was das Dictionary von Datenbanken ist ?

Ich habe derzeit folgende Beschreibung:

"....Get informationen about a specific field - what table it belongs to, what is it´s internal id, what type of field, how long is it ans so on."

Zusätzlich habe ich auch ein Code Beispiel, hier ein Auschnitt:

---------------------------------------------------------------------------------------------

if IsObject(objDB) Then

objDB.Login "petra", "" ' Log in to the database

msg = msg & "Contact.name fieldId= " & objDB.Dictionary.GetFieldId("contact.name") & vbCrLf

msg = msg & "Contact.name field length= " & objDB.Dictionary.GetFieldLength(1281) & vbCrLf

msg = msg & "FieldName of fieldid 1281= " & objDB.Dictionary.GetFieldName(1281) & vbCrLf

msg = msg & "FieldType of fieldid 1281= " & objDB.Dictionary.GetFieldType(1281) & vbCrLf

msg = msg & "FullName of fieldid 1281= " & objDB.Dictionary.GetFullName(1281) & vbCrLf

msg = msg & "TableID of fieldid 1281= " & objDB.Dictionary.GetTableIdFromFieldId(1281) & vbCrLf

msg = msg & "Tablename of fieldid 1281= " & objDB.Dictionary.GetTableName(1281) & vbCrLf

msg = msg & "Dictionary revision= " & objDB.Dictionary.Revision & vbCrLf

msg = msg & "Dictionary version= " & objDB.Dictionary.Version & vbCrLf

msgbox msg, vbInformation + vbOkOnly, "SODictionary"

else

MsgBox "Unable to connect to database"

end if

--------------------------------------------------------------------------------------------------

Dieses Script funktioniert auch und gibt Informationen (z.b. eine Feldlänge) für eine Tabelle "Contact" aus.

Allerdings verstehe ich nicht woher diese Informationen kommen und welchen Nutzen sie mir bringen. Deswegen suche ich derzeit Informationen über das Dictionary von Datenbanken.

Danke im voraus !

Gruß

Feivel

Welche DBMS?

Im Dictionary stehen die Informationen über die Tabellen. Oracle hat z.B. über 100 Tabellen die informationen über die Datenbank selber haben. Die können auch ohne Probleme (wenn man die entsprechenden Rechte hat) abgefragt werden.

z.B. select * from dba_objects; enthält alle Infos über alle Objekte in der Datenbank.....

  • Autor

Hallo !

Danke erstmal !

Das Datenbanksystem ist o.g. Beispiel ein MS SQL Server 2000.

Also sind die Datenbanken Master & Model schon das Dictionary und wenn ich die entsprechende ID der Tabelle kenne kann ich nun mit Hilfe des Scripts abfragen welche Attribute die Felder innerhalb der Tabelle haben ?

Hm, hört sich praktisch an, aber welchen Nutzen hab ich momentan davon ?

Ich wundere mich deswegen weil mir das als neues bzw. zusätzliches Features dargestellt wurde.

Gruß

Feivel

Ob das ein neues Feature im sql-Server ist weiß ich nicht, aber das ganze ist z.B. sehr praktisch um Datenbanken zu vergleichen. Wir haben z.B. eine Entwicklungsdb und eine Produktivumgebung. Ca. alle 1/2 Jahr kommt eine neue Version unserer Applikation heraus. Evt. nötige DB-änderungen sind im Entwicklungssystem während des Entwickelns angelegt worden. Nun ist es mein job beim Relaisewechsel alle die Änderungen auch im Produktivsystem nachzufahren und da ich mir nicht sicher sein kann, das alle Entwickler mir immer alle kleinen Änderungen mitgeteilt haben prüfe ich mit dem Datadictionary die Unterschiede der Datenbanken......

Grüße

mme

@Feivel,

jein

Master & Model sind nicht das Dictionary unter MS-SQL

Model ist einfach eine MODEL-DB zum anlegen neuer DaBas mithilfe des Assistenten. Änderungen die Du dort vornimmst. Z.B. Nutzerrechte verteilen oder Tabellen anlegen, wirken sich darauf aus, wie eine danach angelegte Datenbank aussieht.

Master ist ein Teil des Dictinarys. Hier stehen alle infos drin, die MS-SQL braucht um die einzelnen Instanzen zukennen.

Innerhalb einer jeden Instanz gibt es trotzdem einige Tabellen sys_ die dort dem sys gehören. Die sind dann der zweite Teil des Dictionarys.

sys_user z.B. enthält die Infos welche User welche Rechte auf diese Instanz haben.

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.