Avatar billede bodil_bruun Nybegynder
29. juli 2002 - 14:05 Der er 9 kommentarer og
1 løsning

insætte data i database

Jeg prøver at forstå asp.net ud fra bogen beginning asp.net. Selvom at jeg mener, at jeg følger bogens anvisninger kan jeg ikke gemme data i min database.

Er der nogen som kan se hvad jeg gør forkert ?

<%@ Import Namespace = "System.Data" %>
<%@ Import Namespace = "System.Data.OleDb" %>

<LINK rel="stylesheet" type="text/css" href="Styles.css">
    <script language="vb" runat="server">
   
Sub Page_load (sender as System.object, e as System.EventArgs )
  Dim objConnection As OledbConnection
  Dim objadapter As oleDbDataAdapter
  Dim strConnection as String   
  Dim strSQL as string
  Dim objDataSet as new dataset()

  strConnection = "provider=Microsoft.Jet.OLEDB.4.0;"
  strConnection += "Data Source = C:\inetpub\wwwroot\musiksamling\musiksamling.mdb"

  strSql = "select * from Udgivelse"
 

  objConnection = new oleDbConnection(strConnection)
  objAdapter = new OleDbDataAdapter(strSql, objConnection)
 
  objAdapter.Fill(objdataset, "Udgivelse")
 
  liste.dataSource=objDataSet.Tables("Udgivelse").defaultView
  liste.databind()
 
  ' tilføjer ny række
  dim objTable as DataTable
  dim objNewRow as DataRow
 
  objTable = objDataSet.Tables("Udgivelse")
  objNewRow = objTable.NewRow()
  objNewRow.Item("titel")="fasdkhkgjjg"
  objNewRow.Item("kunster")="fasdkhkgjjg"
  objNewRow.Item("udgivelsesår")="1234"
  objNewRow.Item("kommentarer")="fasdkhkgjjg"
  objNewRow.Item("genrer")="fasdkhkgjjg"
  objTable.Rows.Add(objNewRow)

  liste2.dataSource=objTable.defaultView
  liste2.databind()
 
  ' Her skal posten gemmes i databasen
  dim objBuilder as oleDbCommandBuilder
  objBuilder = new OleDbCommandBuilder(objAdapter)
  objAdapter.insertCommand = objBuilder.getInsertCommand()

' Fejlmeddelse til næste linie: Handlingen skal bruge en opdaterbar forespørgsel.
  objAdapter.Update(objDataSet,"udgivelse")


end sub

    </script>
    <html>
        <head>
            <title>data</title>
        </head>
        <body>
            <asp:DataGrid ID="liste" Runat="server" AlternatingItemStyle-BackColor="#33cc33" BorderColor="#cc0000" BackColor="#cccc33" AllowPaging="false" />
            <asp:DataGrid ID="liste2" Runat="server" AlternatingItemStyle-BackColor="#33cc33" BorderColor="#cc0000" BackColor="#cccc33" AllowPaging="false" />
        </body>
    </html>
Avatar billede jakobandersen Nybegynder
29. juli 2002 - 14:18 #1
Har du prøvet at åbne database forbindelsen før du kalder Update Methoden Altså:

objConnection.Open()
objAdapter.Update( objDataSet, "udgivelse" )
objConnection.Close()
Avatar billede jakobandersen Nybegynder
29. juli 2002 - 14:20 #2
Undskyld, min fejl.

Problemet er selvfølgelig at ASP.NET kontoen ikke har skriveadgang til din databasefil.
Avatar billede jakobandersen Nybegynder
29. juli 2002 - 14:21 #3
Find databasen og højreklik på den, vælg herefter fanen sikkerhed/security og tilføj herefter brugere ASPNET og giv denne skriverettigheder til filen.

Gør det samme med mappen hvori databasen ligger.
Avatar billede odegaard Nybegynder
29. juli 2002 - 14:41 #4
Hehe... den fejl kan jeg sidde og bande over i timevis, indtil jeg kommer i tanke om den her lille finte :-)
Nu har jeg en lille gul seddel på min skærm hvor der står: "Inden du slår tastaturet i stykket: Har du husket at sørge for skriverettighed?"
Avatar billede jakobandersen Nybegynder
29. juli 2002 - 14:45 #5
odegaard>> Prøv så at forestille dig at man er vant til at arbejde med MS SQL og så efter 1½ år uden access begynder at bruge den igen, og får smidt ovenstående i hovedet. Der gik lige 3 timers debbugging på den :-)
Avatar billede bodil_bruun Nybegynder
29. juli 2002 - 14:51 #6
TAK - nu virker det

/bodil
Avatar billede jakobandersen Nybegynder
29. juli 2002 - 14:59 #7
Det var så lidt ..
Avatar billede jakobandersen Nybegynder
29. juli 2002 - 15:00 #8
Odegaard>> Jeg kom lige til at se noget, er det ikke lidt mystisk at "morten2" ligger nr. 1 i ".NET" kategorien jvf. http://www.eksperten.dk/kat/115/ Jeg har ALDRIG set ham herinde og det ser ikke ud til at han nogensinde har besvaret et spørgsmål herinde?
Avatar billede odegaard Nybegynder
29. juli 2002 - 15:59 #9
ARGH !!! Hvem fanden har taget min førsteplads ??? Det er sku da unfair! :-)
Specielt når der står at morten2 i alt har tjent 647 point, hvilket jo ikke passer med at han skulle have fået 700 for at have svaret på et spørgsmål. Ifølge hans pointregnskab har han aldrig deltaget i .NET-gruppen.
Avatar billede jakobandersen Nybegynder
29. juli 2002 - 16:02 #10
Det ser lidt skummelt ud... Snakker du med admin :-)
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