[CDBI] Re: Trouble writing non-character fields

Mark McWiggins mark at IcanFixYourEmail.com
Tue Aug 9 01:04:27 BST 2005


Edward J. Sabol wrote:

>>Hi All, I presume this information is somewhere on the old mailing list
>>but I can't get to the archives, so I appreciate any guidance whatever
>>... I have Class::DBI working fine (with PostgreSQL) for everything but
>>writing non-character values.
>>
>>If I try to write (for instance) a Date field, I get an error like:
>>    
>>
>[...]
>  
>
>>Do I need to explicitly do something with 'deflate' for these
>>non-character types?
>>    
>>
>
>I think you need to tweak the SQL. Take a look at
>http://wiki.class-dbi.com/index.cgi?SettingDefaultValues
>
>If you have control over your database schema, another option is to make your
>date fields char fields instead of a DBMS-specific date field. Then "deflate"
>would work great and your code more portable to other database systems.
>
>Hope this helps,
>Ed
>
>_______________________________________________
>ClassDBI mailing list
>ClassDBI at lists.digitalcraftsmen.net
>http://lists.digitalcraftsmen.net/mailman/listinfo/classdbi
>
>  
>
Thanks, but in this case I'm not creating a new record but updating one. 
The set_sql() function
looks to assume you're doing a SELECT.

The standard 'update' method shows itself in the doc, but there's no 
indication of how to do

    if typeof thing-to-update == DATE
    {
       CAST %S as "date"
    }
    else
    {
       %s
    }

inside the SQL ...

Any thoughts? Thanks again.

-- 
Mark McWiggins
mark at cheaperemail.com
425-369-8286 (home/cell/vm -- let ring)





More information about the ClassDBI mailing list