Importing Database

7 views
Skip to first unread message

Sandy3269

unread,
Nov 2, 2009, 1:19:32 AM11/2/09
to CodaServer Users
Hi, I am thrilled by the possibilities of this application also. I've
been looking for a standard rules engine, to separate business logic
from my Php code. I'm using CodeIgnite as part of my work in a private
and government setting, this would lend much to the acceptance to
environments that are just embracing the Php LAMP.

Questions: Is there any information / help in converting current
databases / applications? Can I write a script to automatically create
a application from my current databases, to the syntax needed and have
Codaserver execute it, or is New manually created applications the
only currently supported steps?

mi...@18thstreetsoftware.com

unread,
Nov 2, 2009, 3:07:39 AM11/2/09
to codaserv...@googlegroups.com
Hey Sandy,

I actually developed many of the ideas behind CodaServer while working as a contractor at several federal agencies over the years; those environments placed a lot of emphasis on the correctness of data as it flowed through a system, and CodaServer certainly supports that.

There is currently no automated way to move from a MySQL schema into CodaServer, but it would be fairly simple to create a translation program. The datatypes supported are similar to the standard SQL types and can be found in the manual. While translating may be simple, a CodaServer schema contains much more information than a MySQL schema; human interaction would be needed to rewrite the schema to take advantage of CodaServer's strengths.

Some of the main differences are the following:

1. Any table for which you would like to implement workflow and use CodaServer's built-in state diagram functionality must be created using a CREATE FORM statement rather than a CREATE TABLE statement.
2. CodaServer stores relationships between tables more explicitly than SQL; tables which are secondary to others (say order_items relative to orders) are called subtables or subforms and should be declared as such. You can also explicitly create columns that relate tables to one another using REFERENCE columns rather than foreign keys..
3. Primary keys in CodaServer are all called "ID" and are automatically added to tables and forms. There are also automatic audit columns.
4. MySQL groups tables into databases. CodaServer groups them into applications.
5. CodaServer prefers to handle users and permissions itself with every user having a different login to the server. MySQL applications tend to have a single database login with all access control handled through tables. You can do the same thing in CodaServer but it would take away several of its benefits.
6. CodaServer allows for user-defined datatypes such as "phone_number" or "social_security_number." Any columns storing structured information as VARCHARs should be updated to take advantage of this.
7. CodaServer supports ARRAY columns of any datatype.
8. FORMs all have a column called status that maintains the current state of the row.
9. CodaServer has no equivalent to MySQL's set or enum columns. Those should be itemized in separate tables and be liked through REFERENCE (in the case of enums) or REFERENCE ARRAY. (in the case of sets)

Those should be the main schema definition differences. Let me know via the list if you have any more specific questions.

Best regards,
Mike

Sent from my Nokia phone

Sandy3269

unread,
Nov 2, 2009, 1:20:43 PM11/2/09
to CodaServer Users
Thanks for responding. Yes, here at my day job in county government,
they need it and I would like to show that the new platform they are
modeling along side other systems, does have software that has serious
enterprise attributes.

I can and will write some generic code to move current MySql (and
evenually MSSQL) schema's to that required by CodaServer, I was just
wondering if the application could take input from a file, command
line or other output from my code? After I get the application into a
stable state, I'll donate it too user group.

I use a Php code generator (AppGini) to create quick applications from
MySql tables. By leaving out the information that generates embedded
business rules, the generated code is very easy to update with the
CodaServer commands. I'll do a test and if successful will do a write
up.

Out of all of the searches I've seen on various groups looking for
this tool, why is it hiding?
Reply all
Reply to author
Forward
0 new messages