SQL Surveyor 1.0 Review
Posted on Apr 27, 2005
I recently purchased SQL Surveyor 1.0 released by Web Relevant, which many of you may have read about on Jared Rypka-Hauer's blog. Basically, the application allows you to view all of the metadata from a sql datasource, including views and stored procedures (it does not allow you to modify these resources - which is as it should be).top of placing all of this in a very understandable context, the program also will auto-generate code for you based off the table metadata. The code generated includes:
- Select, Insert, Update and Delete query code including adding the proper cfqueryparam tags for tables
- DAO (data access object) coldFusion component code for tables (includes functions for create, read, update and delete - CRUD)
- Select query code for Views
- cfstoredproc code for stored procedures
I have written to Jared expressing my very positive opinion of the product and adding some of my own personal wishlist items for a future release (which Jared has already blogged will include MySQL support and will be free to existing customers). The wishlist items I added were as follows:
- The DAO code does not use the indexed primary key as the identity column. I don't auto-increment or use a sql guid but rather use a CF uuid and so, while it is a minor deal, I need to do a replace on the DAO code for each usage.
- The create and update code generated appear to make arguments required even when the columns are set as nullable (which would seem to imply not required). It would be great if nullable columns were set as not required and the code generated accordingly.
- I rather think the adding an init() function like below to the DAO is a good idea: <cffunction name="init" access="public" output="false" returntype="object">
<cfargument name="dsn" type="string" required="true">
<cfset variables.dsn = arguments.dsn>
<cfreturn this>
</cffunction>This is very useful on my end as we use a different dsn for testing than we do for live applications, and this way the dsn is not hard-coded into the component (also useful should that dsn change).
In working some since my last email, I also wished that there was a way to configure the DAO code - i.e. to modify the template to fit the way I write (which would take care of some of the items above). This is currently not possible as the code is encrypted, which I don't have a problem with other than this particular feature.
Overall, I do recommend the product and am looking forward to future releases. I think that ,even without the changes I discussed, it offers alot of time-saving features well worth the minimal cost.
Comments
HEY!
Thanks for the review, especially since it was favorable. ;) I'm still trying to catch up from being at CFUnited a couple weeks ago, but v. 2 will be out soon and I'm hoping people like it a LOT.
I'll keep you posted.
Laterz,
J
Posted By Jared Rypka-Hauer / Posted on 07/16/2005 at 11:46 PM