vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevDataGrid - Gönnen Sie Ihrem SQL-Kommando diesen krönenden Abschluß!  
 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

Fortgeschrittene Programmierung
Datenbankfeld einen Wert zuweisen 
Autor: Ne kölsche Jung
Datum: 18.01.04 19:51

Hallo

Ich kann bei der Datenbank die ich zum Testen eingerichtet habe den Feldern keinen Wert zuweisen. Könnt Ihr mir sagen ob der unten stehende Code zum einrichten der Datenbank richtig ist. Vielleicht mach ich auch beim einrichten des Recordsets ja was falsch. Währe für jede Hilfe dankbar.

Jürgen

Private Sub Form_Load()
 
    dbFile = App.Path & "\Test.mdb"
    If Dir(dbFile) = "" Then
        DatenbankEinrichten
        IndexErstellen
        RelationErstellen
    End If
 
    Set Db = Workspaces(0).OpenDatabase(dbFile, False, False)
    sql = "SELECT * FROM Tabelle1 " & _
          "INNER JOIN Tabelle2 " & _
          "ON Tabelle1.IndexNr = Tabelle2.IndexNr"
 
    Set rs = Db.OpenRecordset(sql)
 
End Sub
 
 
Private Sub DatenbankEinrichten()
    Set Db = Workspaces(0).CreateDatabase(dbFile, dbLangGeneral, _
                                          dbEncrypt + dbVersion30)
 
 
    '--Tabelle 1
    Tabelle.Name = "Tabelle1"
 
    Feld.Name = "IndexNr"
    Feld.Type = dbLong
    Tabelle.Fields.Append Feld
    Set Feld = Nothing
 
    Feld.Name = "Tab1Feld1"
    Feld.Type = dbText
    Feld.Size = 20
    Feld.AllowZeroLength = True
    Tabelle.Fields.Append Feld
    Set Feld = Nothing
 
    Db.TableDefs.Append Tabelle
    Set Tabelle = Nothing
 
    '--Tabelle 2
    Tabelle.Name = "Tabelle2"
 
    Feld.Name = "IndexNr"
    Feld.Type = dbLong
    Tabelle.Fields.Append Feld
    Set Feld = Nothing
 
    Feld.Name = "Tab2Feld1"
    Feld.Type = dbText
    Feld.Size = 20
    Feld.AllowZeroLength = True
    Tabelle.Fields.Append Feld
    Set Feld = Nothing
 
    Db.TableDefs.Append Tabelle
    Db.Close
 
    Set Tabelle = Nothing
    Set Db = Nothing
End Sub
 
Private Sub IndexErstellen()
 
    Set Db = Workspaces(0).OpenDatabase(dbFile, False, False)
 
    '--Tabelle 1
    Index.Name = "IndexTab1"
    Index.Primary = True
    Index.Unique = True
    Index.Fields = "IndexNr"
    Db.TableDefs("Tabelle1").Indexes.Append Index
    Set Index = Nothing
 
    '--Tabelle 2
    Index.Name = "IndexTab2"
    Index.Primary = False
    Index.Unique = False
    Index.Fields = "IndexNr"
    Db.TableDefs("Tabelle2").Indexes.Append Index
    Set Index = Nothing
 
    Db.Close
    Set Db = Nothing
End Sub
 
Private Sub RelationErstellen()
 
    Set Db = Workspaces(0).OpenDatabase(dbFile, True, False)
 
    '--1: N - referentielle Integrität
    Set mRel = Db.CreateRelation("RelA")
 
    With mRel
        '--Primarytable einstellen
        .Table = "Tabelle1"
 
        '--Referenzierte Tabelle einstellen
        .ForeignTable = "Tabelle2"
 
        '--Verknüpfung als 1:N Beziehung deklarieren
        .Attributes = dbRelationUpdateCascade + dbRelationDeleteCascade
 
        '--Gemeinsames Datenfeld erzeugen
        Set Feld = .CreateField("IndexNr")
        Feld.ForeignName = "IndexNr"
        .Fields.Append Feld
    End With
 
    Db.Relations.Append mRel
    Set mRel = Nothing
 
    Db.Close
    Set Db = Nothing
End Sub
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Datenbankfeld einen Wert zuweisen783Ne kölsche Jung18.01.04 19:51
Re: Datenbankfeld einen Wert zuweisen362ModeratorDieter19.01.04 08:50
Re: Datenbankfeld einen Wert zuweisen454Ne kölsche Jung19.01.04 16:06

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