TcB Skrevet 27. august 2005 Del Skrevet 27. august 2005 Hei lurte på om det er mulig å oppdatere et dataset i databasen ved hjelp av update() kommandoen når datasettet inneholder info fra flere tabeller i databasen? Håper dere skjønner spørsmålet Lenke til kommentar
TcB Skrevet 30. august 2005 Forfatter Del Skrevet 30. august 2005 Hei, har også funnet ut det, men takk for svar. Nå har jeg kommet meg dit at jeg driver å lager mine egne Update- Delete- og InsertCommands til SqlDataAdapteren. Dette funker fint når jeg har testet med enkelt verdier, men når jeg nå skulle gjøre det på DataTable'en min som inneholder informasjonen funker det ikke. Får feilmeldingen: Prepared statement '(@mengde float,@pulverid int,@stoffid int)update pulverinnhold s' expects parameter @mengde, which was not supplied. sdaPInnhold.UpdateCommand = new SqlCommand("update pulverinnhold set pulverid=@pulverid, stoffid=@stoffid, mengde=@mengde where (stoffid=@stoffid and pulverid=@pulverid)", con); sdaPInnhold.InsertCommand = new SqlCommand("insert into pulverinnhold(pulverid, stoffid, mengde) values(@pulverid, @stoffid, @mengde)",con); sdaPInnhold.DeleteCommand = new SqlCommand("delete from pulverinnhold where (pulverid=@pulverid and stoffid=@stoffid)",con); sdaPInnhold.UpdateCommand.Parameters.Add("@mengde", SqlDbType.Float, 8); sdaPInnhold.InsertCommand.Parameters.Add("@mengde", SqlDbType.Float, 8); sdaPInnhold.InsertCommand.Parameters.Add("@pulverid", SqlDbType.Int, 4); sdaPInnhold.InsertCommand.Parameters.Add("@stoffid", SqlDbType.Int, 4); SqlParameter pulveridUpdate = sdaPInnhold.UpdateCommand.Parameters.Add("@pulverid", SqlDbType.Int); pulveridUpdate.SourceColumn = "pulverid"; pulveridUpdate.SourceVersion = DataRowVersion.Original; SqlParameter pulveridDelete = sdaPInnhold.DeleteCommand.Parameters.Add("@pulverid", SqlDbType.Int); pulveridDelete.SourceColumn = "pulverid"; pulveridDelete.SourceVersion = DataRowVersion.Original; SqlParameter stoffidUpdate = sdaPInnhold.UpdateCommand.Parameters.Add("@stoffid", SqlDbType.Int); stoffidUpdate.SourceColumn = "stoffid"; stoffidUpdate.SourceVersion = DataRowVersion.Original; SqlParameter stoffidDelete = sdaPInnhold.DeleteCommand.Parameters.Add("@stoffid", SqlDbType.Int); stoffidDelete.SourceColumn = "stoffid"; stoffidDelete.SourceVersion = DataRowVersion.Original; Dette er deler av koden, er her jeg oppretter kommandoene.. DataTablen som jeg skal oppdatere inneholder flere kolonner enn de som skal oppdaterers i DB, men det skal vel ikke ha noe å si eller?? Er det noen som har noen tips? Lenke til kommentar
TcB Skrevet 1. september 2005 Forfatter Del Skrevet 1. september 2005 Hei ville bare fortelle at jeg fant ut av det. Måtte sette sourcecolumn på mengde også Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå