Avatar billede the_party_dog Nybegynder
10. februar 2004 - 12:16 Der er 8 kommentarer og
1 løsning

C# og SQL, insert into

Jeg er igang med at lave en webapplikation, som skal håndtere en lagerstyring, med mulighed for at brugerne kan tilføje ting til lageret, nemt og bekvemt...

Når de tilføjer en ny enhed, kommer der jo bare en ny record i min SQL database, som der altid plejer. Jeg vil så gerne have at vide hvad ID nr. den nye enhed fik ved tilføjelsen, da jeg skal lave en udskrift som indeholder vigtige informationer til lageret, der iblandt ID nummeret.

Kan man med en SQL sætning få at vide hvad den sidste record hedder i ens database?
Avatar billede arne_v Ekspert
10. februar 2004 - 12:18 #1
Hvilken database bruger du ?

Sidste auto genererede ID kan hentes som @@IDENTITY i MS SQLServer.
Avatar billede arne_v Ekspert
10. februar 2004 - 12:20 #2
I MySQL hedder det LAST_INSERT_ID()
Avatar billede the_party_dog Nybegynder
10. februar 2004 - 12:29 #3
Bruger MS SQLServer....

Hvordan skal jeg lave sætnigen så? Er ikke lige den vilde haj til SQL endnu, bær over med mig :)

SELECT * FROM Data.... Det er ca det jeg kan.. :p Ej.... Men er ikke lige så stærk i det...
Avatar billede arne_v Ekspert
10. februar 2004 - 12:32 #4
Hvis du først laver din INSERT så kan du bagefter lave en:

SELECT @@IDENTITY

og få den sidste auto genererede id for din connection.
Avatar billede the_party_dog Nybegynder
10. februar 2004 - 12:45 #5
Noget i den stil?

Sqlcommand InsertRecord = new SqlCommand("INSERT INTO Data(Description, Comment, Owner, Dato, Duration, Place) VALUES ( '" + DescriptionText + "', '" + CommentText +"', '" + OwnerText + "', CONVERT(nvarchar, GETDATE(), 110), '" + DurationText + "', '" + PlaceText +"')", Connection);

Sqlcommand GetLastID = new SqlCommand("SELECT @@IDENTITY", Connection);

Connection.Open();
InsertRecord.ExecuteNonQuery();
LastID = Convert.ToString(GetLastID.ExecuteNonQuery());
Connection.Close();
Avatar billede arne_v Ekspert
10. februar 2004 - 13:05 #6
Ja bortset fra at du nok skal bruge:

LastID = Convert.ToString(GetLastID.ExecuteScalar());
Avatar billede the_party_dog Nybegynder
10. februar 2004 - 13:07 #7
ok... Jeg prøver, vender tilbage senere idag... Mange tak for din tid!!!! :)
Avatar billede the_party_dog Nybegynder
10. februar 2004 - 13:34 #8
Du er min Gud... Hvis du ligger et svar, så giver jeg dig de fortjente points... Mange mange tak for din store hjælp....
Avatar billede arne_v Ekspert
10. februar 2004 - 13:38 #9
svar
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