Hi all,

Just a very quick question.

I'm writing a DAO for a customer table using a SQL server database.

In the Update() method of the DAO, I have something like this;

<cffunction name="update" displayname="Update(CustomerBean CustomerBean)" returnType="CustomerBean" output="false" hint="I update a customer record in the Database.">
   <cfargument name="CustomerBean" type="CustomerBean" required="true">
    <cfset var ItemUpdate = "" />
    <cfquery datasource="#dsn#" name="ItemUpdate" dbtype="odbc">
        UPDATE    customer
SET name = <cfqueryparam cfsqltype="cf_sql_varchar" value="#arguments.CustomerBean.getName()#" maxlength="40" null="no" />, guarantor = <cfqueryparam cfsqltype="cf_sql_integer" value="#arguments.CustomerBean.getGuarantor()#" null="yes" />,

etc.. etc...

In the table that I am working with, there are a lot of fields that can contain a NULL value, and when this is read in using the Read() method, they are represented in CF as a zero length string.

When I am doing an update, do I reall have to use the following line of code to set null values ?

UPDATE    customer
SET name = <cfif arguments.CustomerBean.getName() is ''><cfqueryparam cfsqltype="cf_sql_varchar" value="#arguments.CustomerBean.getName()#" maxlength="40" null="yes" /><cfelse><cfqueryparam cfsqltype="cf_sql_varchar" value="#arguments.CustomerBean.getName()#" maxlength="40" null="no" /></cfif>,

It seems a bit cumbersome and I was wondering if there is a better way.

Any thoughts would be appreciated.

Cheers,

Callum


----------------------------------------------------------
You are subscribed to cfcdev. To unsubscribe, send an email to 
[email protected] with the words 'unsubscribe cfcdev' as the subject of the 
email.

CFCDev is run by CFCZone (www.cfczone.org) and supported by CFXHosting 
(www.cfxhosting.com).

CFCDev is supported by New Atlanta, makers of BlueDragon
http://www.newatlanta.com/products/bluedragon/index.cfm

An archive of the CFCDev list is available at 
www.mail-archive.com/[email protected]


Reply via email to