webForumDet fria alternativet
Logga in / Bli medlem

Ta ut ID i MySQL

Databaser & SQL

3 svar · 223 visningar · startad av edebro

Medlem sedan aug. 2001261 inlägg
Frågan#1

För att välja ut räknaren (ID:t) i SQL Server gör man ju så här:

SQL = "set nocount on INSERT INTO tabell (Column1, Column2) VALUES ('hej', 'då') select @@identity"

Men hur gör man i MySQL, jag märkte att denna kod inte fungerade.

Väldigt tacksam för svar!

Medlem sedan juni 200032 967 inlägg
#2
SELECT last_insert_id()

(Prova att söka annars, har diskuterats mången gång på wF)

Mvh,

Medlem sedan aug. 2001261 inlägg
#3

Jag har nu denna koden:

' öppna databasen
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open = Application("db_databaskopplingen")

' släng in ett nytt foruminlägg
strSQL = "INSERT INTO forumposts (cPostedBy, cHeadline, cMessage, cForumID, cDate, cLastPost, cLastPostName, cNotification, cViewed, cAnswered)"
strSQL = strSQL & " VALUES ('" & Session("userName") & "','" & strHeadline & "','" & strMessage & "'," & intForumID & ",'" & dateDatum & "','" & dateDatum & "','" & Session("userName") & "','" & strNotification & "','','" & Session("userID") & "')"
    
Connect.Execute(strSQL)
'Response.Write strSQL

' ta ut senaste ID
Set RecSet = Connect.Execute("SELECT LAST_INSERT_ID()")
readID = RecSet(0)

Men detta fungerar inte. Jag har sökt här på webForum och detta är koden jag fick fram.
En grej jag undrar är hur detta kan fungera när man inte specifierar vilken tabell i databasen det gäller, bör inte SQL-satsen se ut så här:
SELECT LAST_INSERT_ID() FROM tabellen

Eller? Jag har givetvis också provat detta utan resultat. Variabeln readID sätts bara till noll (0) i båda fallen.

Nån som har en bra lösning?

Medlem sedan dec. 200012 464 inlägg
#4

Det ärså det är tänkt att fungera. Du måste göra selecten direkt efter insert på en tabell med en auto_increment kolumn och det skall inte vara något tabellnamn med.

388 ms totalt · 4 externa anrop · v20260731065814-full.14655e19
130 ms — deklarationer (db)
121 ms — hämta statistik (db)
134 ms — hämta tråd, inlägg och bilagor (db)
131 ms — ändringar (db)