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