---
title: "Uppdatera Insert eller Delete"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/74535-uppdatera-insert-eller-delete"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "saw"
published: "2003-04-20T08:25:05.000Z"
updated: "2003-04-22T08:56:53.000Z"
replies: 3
views: 200
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/74535-uppdatera-insert-eller-delete"
---

# Uppdatera Insert eller Delete

## #1 — saw, 2003-04-20T08:25Z

Jag försöker att vara smart i min applikation. Här finns bl a tre knappar för uppdatera ny och delite.
Jag har gjort tre variabler (bool) som när man klicka på resp knapp får sitt värde satt till true.
Sedan har jag en gemensam class för att uppdatera databasen:

```
if(ny==true)
{
}
if(uppdatera==true)
{
}
if(tabort==true)
{
}
```

Innuti klammrarna så har jag olika SQL-strängar för resp och 

```
OleDbCommand dc = new OleDbCommand(SQL,con);
```

(jag fick fel om jag inte har det i varje if-sats).
Därefter kör jag själva uppdateringen:

```
try
{
con.Open();				
da.Update(ds,"frånKund");				
con.Close();
}
catch(Exception fel)
{
MessageBox.Show(fel.Message,"Databasfel");
}
```

Vad jag kan läsa fram i min bok så borde ju detta fungera, men jag får ett fel, där den säger:

```
Uppdates requires a Valid UppdateCommand when passed DataRow Collection with modifieds Rows
```

Jag är inte säker på att jag förstår felmedellandet.
Om det är till hjälp, så är koden bakom knappen uppdatera så här:

```
int kund = listBoxTotal.SelectedIndex;
int a = 0;
foreach(string värde in AllaVärden)
{

ds.Tables["frånKund"].Rows[0][a] = värde;
a++;
}
UppdateraDatabasen();
FyllPåTotalt();
			
listBoxTotal.SelectedIndex = kund;
```

Något förslag?

Permalänk: https://www.webforum.nu/p/74535

## #2 — niko, 2003-04-20T13:39Z

Svårt att svara när man bara ser delar av koden, men en DataAdapter har properties som styr hur *inserts*, *updatess* och *deletes* ser ut och dessa måste tilldelas i förväg:

```
da.UpdateCommand=new OleDbCommand(SQLUpdate,con); 
da.DeleteCommand=new OleDbCommand(SQLDelete,con);  
da.InsertCommand=new OleDbCommand(SQLInsert,con);
```

Har du gort dessa tilldelningar?

Annars finns [här](http://www.microsoft.com/mspress/books/sampchap/5354.asp) en ganska bra och detaljerad artikel i ämnet.

Permalänk: https://www.webforum.nu/p/1017783

## #3 — P, 2003-04-21T13:56Z

Illa jag läser!

red/ Måste man inte in och leka med "CommandBuilder" då man avänder sig av Command objektet? Dett ifall du tex dumpar allt till en datatable via ett select command och sen ändrar det så kan du få det att sparas via automatik. Kolla manualen i så fall.

Permalänk: https://www.webforum.nu/p/1018456

## #4 — saw, 2003-04-22T08:56Z

Nja, CommandBuilder fungerar bara om man enbart har en tabell i databasen....

Permalänk: https://www.webforum.nu/p/1019043

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/74535-uppdatera-insert-eller-delete
