I support SQL Server, mySQL, Access and Oracle for my ContentMonger
Pro cms and have done so for some time so I feel your pain.

Short answer: Do it.  Its amazing how many people use Access for a
variety of reasons.

The same goes for Oracle, although you will indeed introduce more
issues into your code (most of which revolve around inserting
conditional code that inserts the nextval of a sequence when creating
a new record... no big deal.  Plus you have to take care to adjust
cfqueryparam so it uses the null parameter when appropriate rather
than allowing an empty string).

The point behind this is to open yourself up to as many potential --
paying -- customers as possible.  The small guy just starting out has
money just as green as the corporate guy.  The same goes for the large
university or public agency running Oracle.  Both of those sales put
your programming expertise and products in front of people who could
perhaps use your services for additional work.

Writing for Access is a bit of a challenge.  Off the top of my head:

values like record IDs are returned with a single decimal no matter
what you do.  Record ID 123 will arrive from Access as 123.0 no matter
what your settings are in the db for the field.  So as a habit I fix()
every value where this can be an issue.

Access will explode on contact with ANY date field when you try to use
cfqueryparam on it.  None of the cfsqltypes work so you have to write
your code with this in mind and protect yourself in other ways.

cf_sql_numeric is the safe cfsqltype to work with integer *and*
decimal values for all four platforms except SQL Server, which
requires cf_sql_decimal if decimals are in use.  Otherwise
cf_sql_numeric is universal.  cf_sql_varchar is universal for
ntext/varchar type fields on all platforms.  cf_sql_longvarchar is the
one for all memo/clob type long text fields.

Just like Isaac, I never use the length parameter in cfqueryparam and
enforce this in other ways.

Thats not so much, really, when it comes to supporting Access.  The
only other element is I write auto-installers for my system, which
include table/index/sequence builders.  So I have to write Create
Table statements for each platform, as well as Alter Table statements
for the upgraders.  The syntax for these varies quite a bit.

-- 
--mattRobertson--
Janitor, MSB Web Systems
mysecretbase.com

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Logware (www.logware.us): a new and convenient web-based time tracking 
application. Start tracking and documenting hours spent on a project or with a 
client with Logware today. Try it for free with a 15 day trial account.
http://www.houseoffusion.com/banners/view.cfm?bannerid=67

Message: http://www.houseoffusion.com/lists.cfm/link=i:4:208862
Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4
Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4
Donations & Support: http://www.houseoffusion.com/tiny.cfm/54

Reply via email to