Avatar billede butcher Nybegynder
02. december 2003 - 12:49 Der er 10 kommentarer og
1 løsning

Database ADODB opret.

Er pænt nybegynder til VB og har lidt svært ved at komme igang med VB og databaser :)

Jeg er igang med at lave en funktion der kan tilføje til en database, simpelt?? Åbenbart ikke for mig :)

jeg har nogle erklæringer og nogle subs så jeg kan spare noget tid senere hen, det kommer her:
-----------
Option Explicit
Dim con As ADODB.Connection
Dim rs As ADODB.Recordset
Dim myString As String

Private Sub OpenCon()
Set con = New ADODB.Connection
Set rs = New ADODB.Recordset
myString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Documents and Settings\Administrator\Dokumenter\vb\Access filer\Albums.mdb;Persist Security Info=False"
con.Open (myString)
End Sub

Private Sub CloseCon()
rs.Close
con.Close
Set rs = Nothing
Set con = Nothing
End Sub
--------------

Så har jeg selve min knap der skal tilføje fra et par tekst dokumenter:

--------------
Dim sql As String
sql = "INSERT INTO tbl_albums"
OpenCon
rs.Open sql, con, adOpenDynamic
kunstner.Text = rs("kunstner") & ""
CloseCon
------------

Det var sådan lige hvad jeg mente den skulle se ud, men er nok skadet efter arbejde med php og sql før :)

Anyway det virker ikke, får at vide der er en syntaxfejl i INSERT INTO sætningen og den debugger til følgende linie:
rs.Open sql, con, adOpenDynamic
Avatar billede Morten Nybegynder
02. december 2003 - 13:02 #1
din insert skal også indeholde felter og hvilken være der skal i feltet
(jeg er ingen haj...)

INSERT INTO tbl_albums ([værdi1], [værdi2]) VALUES ("Værdi1", "Værdi2)

-- tror nogenlunde det ser sådan ud...
Avatar billede Morten Nybegynder
02. december 2003 - 13:02 #2
Prøv evt at kigge her - jeg synes det er et okay rimeligt link:

http://www.w3schools.com/sql/default.asp
Avatar billede Morten Nybegynder
02. december 2003 - 13:04 #3
sql="INSERT INTO tbl_albums ([Kunstner], [værdi2]) VALUES ("Bubber", "Værdi2);"
Avatar billede Morten Nybegynder
02. december 2003 - 13:06 #4
og så TROR jeg at istedet for rs.open ..... skal du skrive:

rs..Execute Options:=adCmdText
Avatar billede butcher Nybegynder
02. december 2003 - 13:22 #5
hmm muuligvis

har prøvet med:

Dim sql As String
sql = "INSERT INTO tbl_albums (Kunstner)"
OpenCon
con.Execute ("sql")
kunstner.Text = rs("Kunstner") & ""
CloseCon
End Sub
Avatar billede butcher Nybegynder
02. december 2003 - 13:23 #6
hov ramte udfør, men det vil den ikke være med til.

VALUES skal vel ikke bruges, da den skal trække dataene ud fra kunstner.Text
Avatar billede martin_moth Mester
02. december 2003 - 15:22 #7
Har du kikket her: http://www.w3schools.com/sql/sql_insert.asp

Hvordan ser din kode ud efter du har rettet den, og hvad er fejlen?
Avatar billede butcher Nybegynder
03. december 2003 - 08:34 #8
jeg har fået det til at virke:

OpenCon
strSQL = "INSERT INTO tbl_albums ([Kunstner], [AlbumTitel]) VALUES ('"
strSQL = strSQL & Kunstner.Text & "', '"
strSQL = strSQL & Album.Text & "')"
cmd.CommandText = strSQL
cmd.CommandType = adCmdText
cmd.ActiveConnection = con
cmd.Execute
con.Close

Du var inde på det rigtige, der sq bare lige roddes lidt med nogle forskellige forbindelser :P
Avatar billede martin_moth Mester
03. december 2003 - 13:25 #9
Hmm - du har du åbnet et nyt spørgsmål om (næsten) det samme www.eksperten.dk/spm/435394. Skal du ikke lukke dette her? - cddk skal vel lægge et svar?

:o)
Avatar billede butcher Nybegynder
03. december 2003 - 14:01 #10
Jeg venter på svar fra cddk
Avatar billede Morten Nybegynder
03. december 2003 - 14:31 #11
Okay
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