BEGIN TRANSACTION; DECLARE @MaxCustomers int = 1000000; DECLARE @CurrCustomer int = 1; DECLARE @CustomerId int; DECLARE @OrderId int; --Initialize the items. PRINT 'Initializing items' INSERT INTO Item(itemName) VALUES('Item 1'); INSERT INTO Item(itemName) VALUES('Item 2'); INSERT INTO Item(itemName) VALUES('Item 3'); --Initialize the item details. PRINT 'Initializing item details' INSERT INTO ItemDetail(itemId, itemDetailPrice) (SELECT itemId, CONVERT(DECIMAL(5,2), itemId) FROM Item); --Initialize the SKUs. PRINT 'Initializing SKUs' INSERT INTO Sku(sku) VALUES('SKU1'); INSERT INTO Sku(sku) VALUES('SKU2'); INSERT INTO Sku(sku) VALUES('SKU3'); --Initialize the Vendors. PRINT 'Initializing vendors' INSERT INTO Vendor(vendorName) VALUES('Vendor 1'); --Set the item - sku links. PRINT 'Initializing item sku links' INSERT INTO ItemSku(itemId, skuId) (SELECT itemId, skuId FROM Item, Sku WHERE itemName = 'Item 1' AND sku = 'SKU1'); INSERT INTO ItemSku(itemId, skuId) (SELECT itemId, skuId FROM Item, Sku WHERE itemName = 'Item 2' AND sku = 'SKU2'); INSERT INTO ItemSku(itemId, skuId) (SELECT itemId, skuId FROM Item, Sku WHERE itemName = 'Item 3' AND sku = 'SKU3'); --Set the vendor - sku links. PRINT 'Initializing vendor sku links' INSERT INTO VendorSku(vendorId, skuId) (SELECT vendorId, skuId FROM Vendor, Sku); WHILE @CurrCustomer <= @MaxCustomers BEGIN --PRINT 'Insert customer' INSERT INTO Customer(customerName, customerNumber) VALUES(CONCAT('Customer #', @CurrCustomer), RIGHT('0000000000' + @CurrCustomer, 10)); SET @CustomerId = @@IDENTITY; --PRINT 'Insert order' INSERT INTO "Order"(customerId, orderNumber) VALUES(@CustomerId, CONCAT('Order #', @CurrCustomer)); SET @OrderId = @@IDENTITY; --PRINT 'Insert order items' INSERT INTO OrderItem(orderId, itemDetailId, orderItemValue) (SELECT @OrderId, itemDetailId, CONCAT('some value ', itemDetailPrice) FROM ItemDetail); SET @CurrCustomer = @CurrCustomer + 1; END; --select * from customer; --select * from "order"; --select * from orderitem; COMMIT TRANSACTION;