text: -- Licensed to the Apache Software Foundation (ASF) under one
  -- or more contributor license agreements.  See the NOTICE file
  -- distributed with this work for additional information
  -- regarding copyright ownership.  The ASF licenses this file
  -- to you under the Apache License, Version 2.0 (the
  -- "License"); you may not use this file except in compliance
  -- with the License.  You may obtain a copy of the License at
  --   http://www.apache.org/licenses/LICENSE-2.0
  -- Unless required by applicable law or agreed to in writing,
  -- software distributed under the License is distributed on an
  -- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  -- KIND, either express or implied.  See the License for the
  -- specific language governing permissions and limitations
  -- under the License.
  
  -- ----------------------------------------------------------------------------------------------------------------
  -- DATABASE:  inventory
  -- ----------------------------------------------------------------------------------------------------------------
  -- Create the inventory database
  CREATE DATABASE inventory;
  
  USE inventory;
  EXEC sys.sp_cdc_enable_db;
  
  -- Create and populate our products using a single insert with many rows
  CREATE TABLE products (
                            id INTEGER IDENTITY(101,1) NOT NULL PRIMARY KEY,
                            name VARCHAR(255) NOT NULL,
                            description VARCHAR(512),
                            weight FLOAT
  );
  INSERT INTO products(name,description,weight)
  VALUES ('scooter','Small 2-wheel scooter',3.14);
  INSERT INTO products(name,description,weight)
  VALUES ('car battery','12V car battery',8.1);
  INSERT INTO products(name,description,weight)
  VALUES ('12-pack drill bits','12-pack of drill bits with sizes ranging from #40 to #3',0.8);
  INSERT INTO products(name,description,weight)
  VALUES ('hammer','12oz carpenter''s hammer',0.75);
  INSERT INTO products(name,description,weight)
  VALUES ('hammer','14oz carpenter''s hammer',0.875);
  INSERT INTO products(name,description,weight)
  VALUES ('hammer','16oz carpenter''s hammer',1.0);
  INSERT INTO products(name,description,weight)
  VALUES ('rocks','box of assorted rocks',5.3);
  INSERT INTO products(name,description,weight)
  VALUES ('jacket','water resistent black wind breaker',0.1);
  INSERT INTO products(name,description,weight)
  VALUES ('spare tire','24 inch spare tire',22.2);
  EXEC sys.sp_cdc_enable_table @source_schema = 'dbo', @source_name = 'products', @role_name = NULL, @supports_net_changes = 0;
  -- Create and populate the products on hand using multiple inserts
  CREATE TABLE products_on_hand (
                                    product_id INTEGER NOT NULL PRIMARY KEY,
                                    quantity INTEGER NOT NULL,
                                    FOREIGN KEY (product_id) REFERENCES products(id)
  );
  INSERT INTO products_on_hand VALUES (101,3);
  INSERT INTO products_on_hand VALUES (102,8);
  INSERT INTO products_on_hand VALUES (103,18);
  INSERT INTO products_on_hand VALUES (104,4);
  INSERT INTO products_on_hand VALUES (105,5);
  INSERT INTO products_on_hand VALUES (106,0);
  INSERT INTO products_on_hand VALUES (107,44);
  INSERT INTO products_on_hand VALUES (108,2);
  INSERT INTO products_on_hand VALUES (109,5);
  EXEC sys.sp_cdc_enable_table @source_schema = 'dbo', @source_name = 'products_on_hand', @role_name = NULL, @supports_net_changes = 0;
  -- Create some customers ...
  CREATE TABLE customers (
                             id INTEGER IDENTITY(1001,1) NOT NULL PRIMARY KEY,
                             first_name VARCHAR(255) NOT NULL,
                             last_name VARCHAR(255) NOT NULL,
                             email VARCHAR(255) NOT NULL UNIQUE
  );
  INSERT INTO customers(first_name,last_name,email)
  VALUES ('Sally','Thomas','sally.thomas@acme.com');
  INSERT INTO customers(first_name,last_name,email)
  VALUES ('George','Bailey','gbailey@foobar.com');
  INSERT INTO customers(first_name,last_name,email)
  VALUES ('Edward','Walker','ed@walker.com');
  INSERT INTO customers(first_name,last_name,email)
  VALUES ('Anne','Kretchmar','annek@noanswer.org');
  EXEC sys.sp_cdc_enable_table @source_schema = 'dbo', @source_name = 'customers', @role_name = NULL, @supports_net_changes = 0;
  -- Create some very simple orders
  CREATE TABLE orders (
                          id INTEGER IDENTITY(10001,1) NOT NULL PRIMARY KEY,
                          order_date DATE NOT NULL,
                          purchaser INTEGER NOT NULL,
                          quantity INTEGER NOT NULL,
                          product_id INTEGER NOT NULL,
                          FOREIGN KEY (purchaser) REFERENCES customers(id),
                          FOREIGN KEY (product_id) REFERENCES products(id)
  );
  INSERT INTO orders(order_date,purchaser,quantity,product_id)
  VALUES ('16-JAN-2016', 1001, 1, 102);
  INSERT INTO orders(order_date,purchaser,quantity,product_id)
  VALUES ('17-JAN-2016', 1002, 2, 105);
  INSERT INTO orders(order_date,purchaser,quantity,product_id)
  VALUES ('19-FEB-2016', 1002, 2, 106);
  INSERT INTO orders(order_date,purchaser,quantity,product_id)
  VALUES ('21-FEB-2016', 1003, 1, 107);
  EXEC sys.sp_cdc_enable_table @source_schema = 'dbo', @source_name = 'orders', @role_name = NULL, @supports_net_changes = 0;
  