<cfquery name="qryGetMAXID" datasource="#Request.DSN#">
SELECT
MAX(FLEET_CON_ID)+1 as MaxFleetId
FROM
CONFIGURATION
</cfquery>
<cfset intFLEET_CON_ID = #qryGetMAXID.MaxFleetId#/>
<cfquery name="qryAddOperator" datasource="#Request.DSN#" result="testing">
INSERT INTO
CONFIGURATION
(FLEET_CON_ID,
COL2,
COL3,
COL4)
VALUES
(#intFLEET_CON_ID#,
"ADD OPERATOR",
'#strCode#',
'#strName#')
</cfquery>
the Query qryGETMAXID always returns the same value as 18703. I inserted some values into the database directly. the Query should return 18705. When I run the same query in SQL Developer it returns the correct value. I have not cached the query.
Please help me out.
Thanks in advance
SELECT MAX(FLEET_CON_ID)+1 as MaxFleetId
Unless you are using locking, a serializable transaction (not the default), etcetera two threads can still obtain the same "MaxFleetId" value. If that will cause a problem in your application, you should consider letting the database determine the next available id as Dan suggested.
North America
Europe, Middle East and Africa
Asia Pacific