Avatar billede jgni Nybegynder
15. oktober 2002 - 12:37 Der er 14 kommentarer og
1 løsning

Oprette en tabel vha. SQL fra VB

Hvis jeg i en Access-DB skal oprette nogen tabellemer med SQL, hvordan ville koden så se ud ?

Jeg brugte følgende til at søge i en DB og ligge det ind i en list. Ville det komme til at se nogenlunde sådan ud også ?

Private Sub mnuIDE00_Click()
    ClearAll
    Data_Frame.Visible = True
    IDE00_Frame.Visible = True
    ComputerID_Frame.Visible = True
   
    Set ws = Workspaces(0)
    Set db = ws.OpenDatabase(App.Path & "\dataopsamling.mdb")
    Set rs = db.OpenRecordset("SELECT * FROM Hardware")
    If Not rs.EOF Then
        rs.MoveFirst
        Do While Not rs.EOF
            ComputerID_List.AddItem rs!ComputerID
            rs.MoveNext
        Loop
    End If
Avatar billede fxfever Nybegynder
15. oktober 2002 - 12:45 #1
Jeg spørger lige: Hvad betyder/bruges workspace til?
Avatar billede jgni Nybegynder
15. oktober 2002 - 13:00 #2
A Workspace object defines a named session for a user. It contains open databases and provides mechanisms for simultaneous transactions and, in Microsoft Jet workspaces, secure workgroup support. It also controls whether you are going through the Microsoft Jet database engine or ODBCDirect to access external data.
Avatar billede tubber Juniormester
15. oktober 2002 - 13:41 #3
ja koden for at ligge ind i en list ser sådan ud, men hvad er det du egenligt spørger om ?
Avatar billede jgni Nybegynder
15. oktober 2002 - 13:56 #4
Oprette en tabel i Access, med f.eks 4 felter fra VB af.

Hvordan ?
Avatar billede tubber Juniormester
15. oktober 2002 - 13:59 #5
2 sec
Avatar billede tubber Juniormester
15. oktober 2002 - 14:19 #6
http://www.geocities.com/SiliconValley/Peaks/2852/VB6.html <- der står hvad sql kan bruges til.

Dim ws As Workspace
Dim db As Database
Dim rs As Recordset
Dim myStr As String

Private Sub Command1_Click()
    myStr = "CREATE TABLE Tablename (Feltnavn1 Text, Feltnavn2 Number);"
    Set ws = Workspaces(0)
    Set db = ws.OpenDatabase(App.Path & "\test.mdb")
    db.Execute (myStr)
End Sub
Avatar billede jgni Nybegynder
15. oktober 2002 - 14:20 #7
Tubber, min redningsplanke, som altid :)
Avatar billede jgni Nybegynder
15. oktober 2002 - 14:34 #8
Hvor skal variabel erklæringerne stå ?

Jeg får kompilerfejl på dem ?
Avatar billede tubber Juniormester
15. oktober 2002 - 15:16 #9
Det jeg lavede var med faste feltnavne....

hvis de skal være variable så skal det være......:
Text1 er hvad tabellen skal hedde.
Combo1 og Combo2 er de typer der kan vælges db felterne er.
Text2 og Text3 er navnet på hvad felterne skal hedde.

Du kan jo så selv lave så mange du vil :O)

Dim ws As Workspace
Dim db As Database
Dim rs As Recordset
Dim myStr As String

Private Sub Command1_Click()
    myStr = "CREATE TABLE " & Text1.Text & "(" & Text2.Text & " " & Combo1.Text & ", " & Text3.Text & " " & Combo2.Text & ");"
    Set ws = Workspaces(0)
    Set db = ws.OpenDatabase(App.Path & "\test.mdb")
    db.Execute (myStr)
End Sub
Avatar billede jgni Nybegynder
15. oktober 2002 - 23:59 #10
Dim ws As Workspace
Dim db As Database
Dim rs As Recordset
Dim myStr As String

Det er dem her jeg får kompilerfejl på ?
Avatar billede jgni Nybegynder
16. oktober 2002 - 00:03 #11
User-defined type not defined
Avatar billede jgni Nybegynder
16. oktober 2002 - 00:20 #12
Det her virkede !!

Private Sub Form_Load()
Dim rs As Recordset
Dim myStr As String
End Sub

Private Sub Command1_Click()
    myStr = "CREATE TABLE Tablename (Feltnavn1 Text, Feltnavn2 Number);"
    Set ws = DBEngine.Workspaces(0)
    Set db = ws.OpenDatabase(App.Path & "\dataopsamling.mdb")
    Set db = ws.OpenDatabase(App.Path & "\dataopsamling.mdb")
    db.Execute (myStr)
End Sub
Avatar billede jgni Nybegynder
16. oktober 2002 - 00:21 #13
Hov.......
Avatar billede jgni Nybegynder
16. oktober 2002 - 00:21 #14
Private Sub Form_Load()
Dim rs As Recordset
Dim myStr As String
End Sub

Private Sub Command1_Click()
    myStr = "CREATE TABLE Tablename (Feltnavn1 Text, Feltnavn2 Number);"
    Set ws = DBEngine.Workspaces(0)
    Set db = ws.OpenDatabase(App.Path & "\dataopsamling.mdb")
    db.Execute (myStr)
End Sub

SÅDAN !
Avatar billede jgni Nybegynder
16. oktober 2002 - 00:22 #15
Jeg har aldrig brugt DBEngine.Workspaces(0) før ?

Altid kun Workspaces(0)

Mystisk !
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester