Avatar billede jriff Nybegynder
13. marts 2005 - 14:42 Der er 11 kommentarer og
1 løsning

Opret ny record og retunér ID

Hej Alle!

Jeg gør følgende:

OleDbConnection conn = new OleDbConnection(ConfigurationSettings.AppSettings["conn"]);
conn.Open();
OleDbCommand opr=new OleDbCommand(String.Format("insert into table pwd values ({0})",mPwd.Text),conn);
dlt.ExecuteNonQuery();
conn.Close();

Jeg har brug for at vide hvilken ID denne nye række i Access-databasen har fået. Hvordan gør man det når det ikke er muligt at lave en select (det er kun et enkelt felt der bliver sat ind, og det er ikke nødvendigvis unikt).

- Jacob
Avatar billede arne_v Ekspert
13. marts 2005 - 14:59 #1
Det er muligt at lave en SELECT.

SELECT @@IDENTITY på samme connection vil give dig sidste auto nummer
Avatar billede jriff Nybegynder
13. marts 2005 - 15:02 #2
Det lyder rigtig godt! Det er vel ikke bare "Select @@identity", vel? Og hvad retunerer den? Mere hvis du lige kunne lave en lille stump kode der ender med at eg. strID bliver sat til ID'et :-)
Avatar billede arne_v Ekspert
13. marts 2005 - 15:05 #3
jo

OleDbCommand idcmd = new OleDbCommand("SELECT @@IDENTITY",conn)
int id = (int)idcmd.ExecuteScalar();
Avatar billede jriff Nybegynder
13. marts 2005 - 15:10 #4
Hvor er det bare godt! Mange tak for hjælpen! Du kan lige smide et svar - så kan du få point. Virker det her også med SQL-server og Oracle? Altså er det en .net ting den der "select @@identity"  eller er det std. SQL?

Og har du forresten lyst til at svare på denne også? :-) http://www.eksperten.dk/spm/593202
Avatar billede arne_v Ekspert
13. marts 2005 - 15:12 #5
svar
Avatar billede arne_v Ekspert
13. marts 2005 - 15:13 #6
Access : @@IDENTITY
SQLServer : @@IDENTITY eller SCOPE_IDENTITY()
MySQL : LAST_INSERT_ID()
Sybase : @@IDENTITY
Oracle : helt andeledes koncept
Avatar billede jriff Nybegynder
13. marts 2005 - 15:14 #7
Jeg kan kun bukke og neje over dit detaljerede svar! Igen mange tak!
Avatar billede arne_v Ekspert
13. marts 2005 - 15:15 #8
Jeg har set spørgsmålet men jeg bruger ikke Visual Studio og jeg bruger
ikke DataAdapter/DataSet, så jeg kan ikke rigtigt hjælpe.
Avatar billede jriff Nybegynder
13. marts 2005 - 15:23 #9
Det er bare i orden! Tak fordi du kiggede!
Avatar billede prec Nybegynder
14. marts 2005 - 09:35 #10
Hvad så hvis man ikke bruger int som ID, men uniqueidentifier?
Avatar billede arne_v Ekspert
14. marts 2005 - 09:55 #11
Det tror jeg fungerer helt anderledes
Avatar billede prec Nybegynder
14. marts 2005 - 10:20 #12
Øv, det har jeg nemlig selv haft problemer med, ender altid med at jeg sidder og laver opslag med alle de parametre jeg angav for min insert.

Alternativ kunne self. være at angive ID i C# koden, eller bruge en stored procedure.
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