We have DEV, QC and Production Cloud based Appian environments.
When developing on the DEV environment, and creating a new Record Type which then creates a new SQL table on our cloud database schema, it generates a SQL script for you to create the table. There is also a checkbox option to apply that SQL script immediately for you to your source schema. The same happens if you update the Record Type fields. A SQL script is generated to alter your source table for you.
I'm interested to hear how everyone handles their database changes across environments when using Record Types that generate the source tables for you?
Do you download and store every single SQL script as you make changes to a Record Type? If so, where do you store them?
Do you manually run those scripts on your databases for each environment?
Do you deploy them as part of a package which only has the SQL scripts? Or do you deploy them as part of a package which includes both the SQL scripts and your application objects?
If you make multiple changes to a Record Type on DEV before finally deploying to QC and Production, do you run each script in sequence, or consolidate a new SQL script with all the latest changes and run that one script on QC and then Production?
I'd love to hear your thoughts and insights on best practice.
Discussion posts and replies are publicly visible
After loosing the automatic schema management capabilities of data stores, this has become a painful part of building apps. I am trying to convince Appian to change this for a while already. Hand-crafted SQL scripts do not comply with Appian's low-code promise.
One answer is: SQL scripts that can be rerun
Some have direct database access and can use automated tools to generate SQL schema diff scripts.