CFLib.org – Common Function Library Project

getGeneratedKey(resultStruct)

Last updated February 15, 2008
Download UDF

author

Todd Sharp Todd Sharp

Version: 1 | Requires: ColdFusion 8 | Library: DatabaseLib

 
Rated 2 time(s). Average Rating: 5.0

Description:
This UDF takes the result struct from cfquery and returns the proper generated key from that struct.

Return Values:
Returns a value.

Example:

<cfquery name="insertArtist" datasource="cfartgallery" result="r">
insert into artists
(firstName, lastName)
values(
'todd','sharp'
)
</cfquery>
<cfquery name="getArtists" datasource="cfartgallery">
select *
from artists
</cfquery>
<cfdump var="#getArtists#">
<cfoutput>#getGeneratedKey(r)#</cfoutput>

Parameters:

Name Description Required
resultStruct Structure. Yes

Full UDF Source:

<!---
Normalizes the various possible returned keys in the cfquery result struct.

@param resultStruct      Structure. (Required)
@return Returns a value.
@author Todd Sharp (todd@cfsilence.com)
@version 1, October 14, 2008
--->

<cffunction name="getGeneratedKey" hint="i normalize the key returned from cfquery" output="false">
    <cfargument name="resultStruct" hint="the result struct returned from cfquery" />
    <cfif structKeyExists(arguments.resultStruct, "IDENTITYCOL")>
        <cfreturn arguments.resultStruct.IDENTITYCOL />
    <cfelseif structKeyExists(arguments.resultStruct, "ROWID")>
        <cfreturn arguments.resultStruct.ROWID />
    <cfelseif structKeyExists(arguments.resultStruct, "SYB_IDENTITY")>
        <cfreturn arguments.resultStruct.SYB_IDENTITY />
    <cfelseif structKeyExists(arguments.resultStruct, "SERIAL_COL")>
        <cfreturn arguments.resultStruct.SERIAL_COL />    
    <cfelseif structKeyExists(arguments.resultStruct, "GENERATED_KEY")>
        <cfreturn arguments.resultStruct.GENERATED_KEY />
    <cfelse>
        <cfreturn />
    </cfif>
</cffunction>

Search CFLib.org


Latest Additions

John Bartlett John Bartlett added
browserDetect
4 day(s) ago

Rob Brooks-Bilson Rob Brooks-Bilson added
listCompare
7 day(s) ago

Stephen Withington Stephen Withington added
formToNameValueP...
15 day(s) ago

anthony petruzzi anthony petruzzi added
parseExcel
20 day(s) ago

Pablo Varando Pablo Varando added
returnRandomHEXC...
21 day(s) ago

Top Rated

Nathan Dintenfass                                 QueryStringChang...
Rated 5.0, 10 time(s)

Stephen Withington formToNameValueP...
Rated 5.0, 5 time(s)

Gyrus                                             HTMLSafe
Rated 5.0, 4 time(s)

Shlomy Gantz                                      viewCSS
Rated 5.0, 4 time(s)

Michael Sharman generateRandomKe...
Rated 5.0, 3 time(s)

Created by Raymond Camden / Design by Justin Johnson