Avatar billede finntoft Nybegynder
08. september 2004 - 09:00 Der er 12 kommentarer og
1 løsning

asp.NET Indsæt data i Database (Access)

Davs...

En der vil vise mig en simpel måde at indsætte data i en Access Database, i ASP.net

Lad os bare sige jeg har to textboxe, En der hedder Fornavn og en der hedder Efternavn.

De data der står i de to felter skal indsættes i en tabel der hedder "Personer" Som har 3 colonner, en ID, der er autonummeret, Fornavn & Efternavn.

Har programeret meget Classic ASP. Men nu har jeg bestemt mig for at komme vidre i udviklen! ;)

Har Visual Studio .NET 2003 Pro, hvis det skulle ha noget betydning.
Har fundet ud af hvordan man indsætter data i en Datagrid.
Men det med at update og indsætte i en database vil jeg gerne lige have lidt hjælp til.

På forhånd tak.
Avatar billede finntoft Nybegynder
08. september 2004 - 09:01 #1
Skal lige siges jeg programere vb.NET
Avatar billede arne_v Ekspert
08. september 2004 - 09:28 #2
Vil du bare have udført en INSERT ?
Avatar billede finntoft Nybegynder
08. september 2004 - 09:30 #3
Ja
Avatar billede arne_v Ekspert
08. september 2004 - 09:30 #4
For det er vel bare:


Dim cmd As OleDbCommand = New OleDbCommand ("INSERT INTO Personer (Fornavn, Efternavn) VALUES ('" & fornavn & "','" & efternavn & "')", con)
cmd.ExecuteNonQuery
Avatar billede arne_v Ekspert
08. september 2004 - 09:31 #5
Det kan gøres lidt mere avanceret ved at bruge Parameters så du er beskyttet mod
SQL injection.
Avatar billede arne_v Ekspert
08. september 2004 - 09:32 #6
fornavn og efternavn formoder jeg kommer fra nogle felter og koden skal
så udføres ved submit.
Avatar billede finntoft Nybegynder
08. september 2004 - 09:34 #7
Du vil ik lige vise mig hvordanman bruger Prarmeters så man ikke får nogen SQL fejl?
Avatar billede arne_v Ekspert
08. september 2004 - 09:59 #8
Det må være noget a la:

Dim cmd As OleDbCommand = New OleDbCommand ("INSERT INTO Personer (Fornavn, Efternavn) VALUES (@fornavn,@efternavn)", con)
cmd.Parameters.Add("@fornavn", OleDbType.VarChar)
cmd.Parameters.Add("@efternavn", OleDbType.VarChar)
ins.Parameters["@fornavn"].Value = fornavn
ins.Parameters["@efternavn"].Value = efternavn
cmd.ExecuteNonQuery
           
[bare indtastet her så check for stave fejl o.lign.]
Avatar billede finntoft Nybegynder
08. september 2004 - 11:04 #9
Den skriver Name 'ins' is not declared. ?
Avatar billede finntoft Nybegynder
08. september 2004 - 12:39 #10
Dim cmd As OleDb.OleDbCommand = New OleDb.OleDbCommand("INSERT INTO Kodeeks (overskrift, kode) VALUES (@overskrift,@kode)", OleDbConnection1)
cmd.Parameters.Add("@fornavn", TextBox1.Text)
cmd.Parameters.Add("@efternavn", TextBox2.Text)

OleDbConnection1.Open()
cmd.ExecuteNonQuery()
OleDbConnection1.Close()

har fået det til at virke! Vil du have nogen points arne_v? og tak for hjælpen
Avatar billede arne_v Ekspert
08. september 2004 - 12:41 #11
der hvor der står ins skulle der bare stå cmd
Avatar billede arne_v Ekspert
08. september 2004 - 12:42 #12
point jo tak
Avatar billede arne_v Ekspert
08. september 2004 - 12:43 #13
Pointen er at:

følgende kan man nøjes med at udføre en gang:

Dim cmd As OleDbCommand = New OleDbCommand ("INSERT INTO Personer (Fornavn, Efternavn) VALUES (@fornavn,@efternavn)", con)
cmd.Parameters.Add("@fornavn", OleDbType.VarChar)
cmd.Parameters.Add("@efternavn", OleDbType.VarChar)

mens det her kan udføres mange gange med forskellige værdier:

cmd.Parameters["@fornavn"].Value = fornavn
cmd.Parameters["@efternavn"].Value = efternavn
cmd.ExecuteNonQuery
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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