Jeg er i gang med en opgave hvor jeg skal oprette en tråd i min forum.
og jeg har 2 tables i databasen som der skal indsættes i.
nummer 1 er:
Trade: id titel fk_kategorierID
nummer 2 er:
Poster: id dato besked fk_brugerID fk_tradeID
I den første table der skal der indsættes et id som bliver sat automatisk ind, også en titel som hentes fra en textbox og en fk_kategorierID som bliver hentet fra en dropdown liste og dette virker.
Men samtidig skal der oprettes i table 2 "poster" her skal den oprette id som den også gør automatisk, derefter en dato som også er på plads og en besked som hentes fra textbox, og min fk_brugerID henter jeg fra min session der er sat.
men så kommer mit problem, jeg skal også have sat fk_tradeID ind i tablen men det er det id som der kommer fra table1"trade"´s id . og da jeg har lavet det hele i samme sql sætning ved jeg ikke hvordan jeg kan hente dette... Ved ikke om det er muligt så håber jeg kan få nogen svar fra jer, Det er det sidste jeg mangler for at min tråd kan oprettes med den rette post knyttet til.
jeg giver her et eksempel på min kode som den ser ud nu.
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ToString()); SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; cmd.CommandText = "INSERT INTO Trade (titel, fk_kategorierID)VALUES(@titel, @fk_kategorierID)"; cmd.CommandText = "INSERT INTO Poster (dato, besked, fk_brugerID, fk_readeID)VALUES(@dato, @besked, @fk_brugerID, @fk_tradeID)";
Som du kan se i min kode i tråde den første del. det er hvad jeg har i min sql sætning også har jeg bare tilføjet det du skrev i min insert linje nummer 2 . andet har jeg ikke gjort.
Ville det ikke være lettere at foretage et enkelt procedure-kald og lade logikken omkring opretning af tråde ligge der? Så sikrer du også at de to inserts kan ligge i samme transaction.
SCOPE_IDENTITY() gør det samme som @@IDENTITY bare bedre
og der burde ikke være nogen grund til at hive den ud fra DB til app og tilbage igen.
Synes godt om
Ny brugerNybegynder
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.