Last inserted ID in MySQL

Last inserted ID in MySQL

Postby Marc Vanzegbroeck » Mon Aug 06, 2012 5:02 pm

Hi,

How can I receive the last inserted ID-number after a 'INSERT INTO' command in TMySQL?

Thanks,
Marc
Regards,
Marc

FWH32+xHarbour | FWH64+Harbour | BCC | DBF | ADO+MySQL | ADO+MariaDB | ADO+SQLite
Marc Vanzegbroeck
 
Posts: 1159
Joined: Mon Oct 17, 2005 5:41 am
Location: Belgium

Re: Last inserted ID in MySQL

Postby Rick Lipkin » Mon Aug 06, 2012 5:31 pm

Marc

You may have to open a recordset with just a select statement on ID-number .. like ( assuming ID-number is a number that is incremented by 1 and not a random number.

"Select [ID-number] from Table order by [ID-number]"

Open Recordset
oRs:MoveLast()

My best guess ..

Rick Lipkin
User avatar
Rick Lipkin
 
Posts: 2665
Joined: Fri Oct 07, 2005 1:50 pm
Location: Columbia, South Carolina USA

Re: Last inserted ID in MySQL

Postby Marc Vanzegbroeck » Mon Aug 06, 2012 5:43 pm

Rick,

I was also thinking of something like that, but what if more people inserting records at the same time on a network?
I saw something like LAST_INSERT_ID() in the MySQL manual, but this function is not recogniced by my xHarbour-version.

Thanks,
Marc
Regards,
Marc

FWH32+xHarbour | FWH64+Harbour | BCC | DBF | ADO+MySQL | ADO+MariaDB | ADO+SQLite
Marc Vanzegbroeck
 
Posts: 1159
Joined: Mon Oct 17, 2005 5:41 am
Location: Belgium

Re: Last inserted ID in MySQL

Postby Rick Lipkin » Mon Aug 06, 2012 5:53 pm

Marc

A couple of suggestions on concurrency .. I have used a table that contains only 'ID-number' and when a person starts the Add process .. I append the Next number to the ID Table and store that number to a variable and when your form is ready to save .. you already have the number reserved and if someone gets in there concurrently, they get the next number in the ID table....

or

You could store the last used ID-number in a table and during the Insert routine .. increment the Last Used ID-number and append your record ..

Rick
User avatar
Rick Lipkin
 
Posts: 2665
Joined: Fri Oct 07, 2005 1:50 pm
Location: Columbia, South Carolina USA

Re: Last inserted ID in MySQL

Postby Daniel Garcia-Gil » Mon Aug 06, 2012 5:59 pm

Hello

launch a select statement
example:
oQry = oServer:Query( "SELECT LAST_INSERT_ID() AS lastinsert" )

to retrieve the value oQry:lastinsert
User avatar
Daniel Garcia-Gil
 
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 pm
Location: Isla de Margarita

Re: Last inserted ID in MySQL

Postby Marc Vanzegbroeck » Mon Aug 06, 2012 9:10 pm

Daniel,

I have try it, and its working!!

Thanks,

Marc
Regards,
Marc

FWH32+xHarbour | FWH64+Harbour | BCC | DBF | ADO+MySQL | ADO+MariaDB | ADO+SQLite
Marc Vanzegbroeck
 
Posts: 1159
Joined: Mon Oct 17, 2005 5:41 am
Location: Belgium


Return to FiveWin for Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 96 guests