-- Generated by sz-rust-cli make:plugin --template {{ template_type }} --name {{ plugin_name }}
-- Generation time: {{ generated_at }}
-- DO NOT EDIT MANUALLY — regenerate with `sz-rust-cli make:plugin --force ...`
-- Master table: {{ master_table }}
CREATE TABLE IF NOT EXISTS {{ master_table }} (
{%- for field in master_fields %}
{{ field.name }} {{ field.sql_type }}{% if field.is_primary_key %} PRIMARY KEY{% endif %}{% if not field.is_nullable %} NOT NULL{% endif %}{% if not loop.last %},{% endif %}
{%- endfor %}
);
-- Slave table: {{ slave_table }} (foreign key → {{ master_table }}.{{ primary_key_name }})
CREATE TABLE IF NOT EXISTS {{ slave_table }} (
{%- for field in slave_fields %}
{{ field.name }} {{ field.sql_type }}{% if field.is_primary_key %} PRIMARY KEY{% endif %}{% if not field.is_nullable %} NOT NULL{% endif %},
{%- endfor %}
CONSTRAINT fk_{{ slave_table }}_{{ master_table }} FOREIGN KEY ({{ foreign_key }}) REFERENCES {{ master_table }} ({{ primary_key_name }})
);