## SchemaGuard ### Merging YAML defined schema and data into PostgreSQL database Create a file: ```yaml database: - schema: schemaName: test_schema owner: postgres tables: - table: tableName: test_table description: The new table constraint: -- some SQL as table constraint sql: -- some SQL suffix on table create columns: - column: name: id type: serial defaultValue: constraint: primaryKey: true nullable: false foreignKey: references: --fk_table sql: -- some SQL suffix on new FK create, like- on delete no action on update no action description: sql: -- some SQL suffix on new column create - column: name: test type: varchar(250) triggers: - trigger: name: uniq_name_of_trigger event: before update when: for each row proc: ``` One line of code: ```rust let _ = schema_guard::migrate1(schema_guard::load_schema_from_file("file.yaml").unwrap(), &mut db)?; ``` Will create or upgrade existing Postgres database schema with desired tables without extra table creation. > [!NOTE] Not recommended to integrate schema migrate into application for production use as such violate security concern and best practices. Please consider to use full-featured [SchemaGuard](https://www.dbinvent.com/rdbm/) (free for personal use)