vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
SEPA-Dateien erstellen inkl. IBAN-, BLZ-/Kontonummernprüfung  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

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

VB & Datenbanken
Re: VB + Access: Beziehungen setzen 
Autor: Darth
Datum: 09.11.04 18:51

Danke TommyK,

zusammen aus einer Google-Seite und Deiner Datei konnte ich dann doch endlich noch die Beziehungen erstellen.

Jedoch wenn ich einen Errorhandler einbaue, und meine DB erfolgreich angelegt wird/wurde, bekomme ich einen Fehler 0.

Ich gehe mal davon aus das dies lediglich bedeutet das es keinen Fehler gibt/gab, denn der errorhandler prüft auf eine bestimmte Fehlernummer und ansonsten gibt Er eine Meldung aus die die Fehlernummer beinhaltet... was hier 0 ist.

Aber hier der Code mit dem ich meine Tabellen und die Indexes samt Beziehungen setze.
Private Sub dbcreat_Click()
 
Dim Db As Database
Dim dbFile As String
Dim tdfNew1 As TableDef
Dim tdfNew2 As TableDef
Dim tdfNew3 As TableDef
Dim idxNew As New Index
Dim relNew As Relation
 
On Error GoTo err_Handler
 
'Datenbank öffnen und Tabellen erstellen
dbFile = App.Path + "\db_musikcds.mdb"
Set Db = Workspaces(0).CreateDatabase(dbFile, dbLangGeneral)
 
Set tdfNew1 = Db.CreateTableDef("tbl_bands")
With tdfNew1
    .Fields.Append .CreateField("band_id", dbLong)
    .Fields(0).Attributes = dbAutoIncrField
    .Fields.Append .CreateField("band_name", dbText, 255)
    Set idxNew = .CreateIndex("band_PS")
    idxNew.Fields.Append idxNew.CreateField("band_id")
    idxNew.Primary = True
    .Indexes.Append idxNew
    Set idxNew = Nothing
    Set idxNew = .CreateIndex("band_NAME")
    idxNew.Fields.Append idxNew.CreateField("band_name")
    .Indexes.Append idxNew
    Set idxNew = Nothing
End With
Db.TableDefs.Append tdfNew1
 
Set tdfNew2 = Db.CreateTableDef("tbl_albums")
With tdfNew2
    .Fields.Append .CreateField("cd_id", dbLong)
    .Fields.Append .CreateField("band_id", dbLong)
    .Fields.Append .CreateField("num_tracks", dbByte)
    .Fields.Append .CreateField("album_title", dbText, 255)
    Set idxNew = .CreateIndex("cd_PS")
    idxNew.Fields.Append idxNew.CreateField("cd_id")
    idxNew.Primary = True
    .Indexes.Append idxNew
    Set idxNew = Nothing
    Set idxNew = .CreateIndex("band_FS")
    idxNew.Fields.Append idxNew.CreateField("band_id")
    idxNew.Primary = False
    .Indexes.Append idxNew
    Set idxNew = Nothing
End With
Db.TableDefs.Append tdfNew2
 
Set tdfNew3 = Db.CreateTableDef("tbl_tracks")
With tdfNew3
    .Fields.Append .CreateField("cd_id", dbLong)
    .Fields.Append .CreateField("track_nr", dbByte)
    .Fields.Append .CreateField("track_title", dbText, 255)
    .Fields(2).AllowZeroLength = True
    .Fields.Append .CreateField("lenght", dbLong)
    Set idxNew = .CreateIndex("cd_FS")
    idxNew.Fields.Append idxNew.CreateField("cd_id")
    idxNew.Primary = False
    .Indexes.Append idxNew
    Set idxNew = Nothing
End With
Db.TableDefs.Append tdfNew3
 
'Beziehung Band -> Album erstellen
Set relNew = Db.CreateRelation( _
    "band_ID", tdfNew1.Name, tdfNew2.Name, _
    dbRelationUpdateCascade + dbRelationDeleteCascade)
relNew.Fields.Append relNew.CreateField("band_id")
relNew.Fields!band_id.ForeignName = "band_id"
Db.Relations.Append relNew
Set relNew = Nothing
 
'Beziehung Album -> Tracks erstellen
Set relNew = Db.CreateRelation( _
    "cd_ID", tdfNew2.Name, tdfNew3.Name, _
    dbRelationUpdateCascade + dbRelationDeleteCascade)
relNew.Fields.Append relNew.CreateField("cd_id")
relNew.Fields!cd_id.ForeignName = "cd_id"
Db.Relations.Append relNew
Set relNew = Nothing
 
Db.Close
 
'Fehlermeldungen bei der Datenbankerstellung
 
err_Handler:
  Select Case Err.Number
    Case 3204
      MsgBox "Die Datenbank ist bereits vorhanden!", vbExclamation, "Fehler"
    Case 0
      MsgBox "Datenbank erfolgreich angelegt!", vbExclamation, "Erstellen" & _
        "erfolgreich"
    Case Else
      MsgBox "Es ist der Fehler:" & Str$(Err.Number) & vbCrLf & """" & _
        Err.Description & """ aufgetreten.", vbCritical, "Fehler"
  End Select
 
End Sub
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
VB + Access: Beziehungen setzen5.877Darth06.11.04 14:22
Re: VB + Access: Beziehungen setzen4.005Darth09.11.04 15:16
Re: VB + Access: Beziehungen setzen4.050TommyK09.11.04 16:15
Re: VB + Access: Beziehungen setzen4.499Darth09.11.04 18:51
Re: VB + Access: Beziehungen setzen4.093spike2410.11.04 10:43
Re: VB + Access: Beziehungen setzen3.939Darth11.11.04 21:07
Re: VB + Access: Beziehungen setzen3.399Sophus29.04.14 19:01
Re: VB + Access: Beziehungen setzen3.339Franki29.04.14 23:59
Re: VB + Access: Beziehungen setzen3.308Sophus30.04.14 17:56

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-2024 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