Introduction to Data Modeling in Snowflake
Nuno Rocha
Director of Engineering


CREATE OR REPLACE TABLE products (
    id NUMBER(10,0) PRIMARY KEY,
    name VARCHAR(255)
);
CREATE OR REPLACE TABLE products (
    product_id NUMBER(10,0) PRIMARY KEY,
    product_name VARCHAR(255)
);
CREATE OR REPLACE TABLE products (
    product_id NUMBER(10,0) PRIMARY KEY,
    product_name VARCHAR(255),
    manufacturer_id NUMBER(10,0),
    FOREIGN KEY (manufacturer_id) REFERENCES manufacturers(manufacturer_id)
);


CREATE OR REPLACE TABLE categories (
  category_id NUMBER(10,0) PRIMARY KEY,
  category VARCHAR(255)
);

ALTER TABLE products
ADD COLUMN category_id NUMBER(10,0);
ALTER TABLE products
ADD FOREIGN KEY (category_id) REFERENCES categories(category_id);

ALTER TABLE: SQL command used to modify the structure of an existing entityADD: SQL command, used with ALTER TABLE, to add new elements to the entityALTER TABLE table_name
ADD COLUMN column_name column_datatype;
ALTER TABLE table_name
ADD PRIMARY KEY (column_name);
ALTER TABLE table_name
ADD FOREIGN KEY (column_name) REFERENCES foreign_table(PK_from_foreign_table);
Introduction to Data Modeling in Snowflake