Click here to Skip to main content
15,908,254 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Hi,

How to Get Inserted value Id in MYSQL.

I am using " select LAST_INSERT_ID() " But its not working Properly.Can u provide any other solution For this.Please Help me.

Thanks & Regards

Madhava Reddy.
Posted
Comments
Peter Leow 18-Mar-14 3:45am    
Elaborate on 'its not working Properly'.
King Fisher 18-Mar-14 3:48am    
not clear ..
Thomas ktg 18-Mar-14 3:49am    
Can you show the query you have written for that?
[no name] 18-Mar-14 3:52am    
Insert Query:- Insert into Tbl(id,name,sal) values(_id,_name,_sal);
select id,name,sal from Tb1 where id=(select Last_insert_id());

this is select Query ..

When the id is auto-generated by the server, you must not include it in the insert query (I am not sure with current versions of MySQL, but with old versions, you could supply 0 instead of omitting it completely).
 
Share this answer
 
Hi you can try out like this by storing the last inserted id in a variable.

SQL
Insert into Tbl(id,name,sal)values(_id,_name,_sal); 
SET @last_inserted_id = LAST_INSERT_ID();
select id,name,sal from Tb1 where id=@last_inserted_id;


Hope it would be useful.
 
Share this answer
 
Hai
ur question is not clear,in which application u need to use select query ? web or windows ?
anyway u can try this,when u going to insert definitely u pass the values(like unique id,name ect) to insert query,so pass that unique id or name in session(if it is web) or public variable(if it is windows) and use that session or public variable in Select query.

Or u use autoincrement in ur table and select last id from table using select query
 
Share this answer
 
v2
Comments
phil.o 18-Mar-14 5:16am    
Please avoid textspeak on this forum. You have a full keyboard, do it a favour and use it entirely :)

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900