Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何创建存储过程以根据CustomerID在两个表中插入数据_Sql_Sql Server_Stored Procedures - Fatal编程技术网

Sql 如何创建存储过程以根据CustomerID在两个表中插入数据

Sql 如何创建存储过程以根据CustomerID在两个表中插入数据,sql,sql-server,stored-procedures,Sql,Sql Server,Stored Procedures,如何在中创建存储过程以根据[dbo].Customers在Orders和CustomerOrders两个表中插入数据 Customers表已输入具有5个CustomerID的数据 我的数据库第一个表是父表,第二个表是子表。第三个是第二个表的子表。我想 根据CustomerID在最后两个表中插入数据。数据必须与此一起添加 特定客户ID CREATE TABLE Customers(CustomerID int IDENTITY(1,1) PRIMARY KEY,FirstName nvarcha

如何在中创建存储过程以根据[dbo].Customers在Orders和CustomerOrders两个表中插入数据

Customers表已输入具有5个CustomerID的数据

我的数据库第一个表是父表,第二个表是子表。第三个是第二个表的子表。我想

根据CustomerID在最后两个表中插入数据。数据必须与此一起添加

特定客户ID

CREATE 
TABLE Customers(CustomerID int IDENTITY(1,1) PRIMARY KEY,FirstName nvarchar(45),LastName nvarchar(45),Address nvarchar(45))

CREATE 
TABLE Orders(OrderID int IDENTITY(1,1) PRIMARY KEY,OrderDate date,CustomerID int FOREIGN KEY REFERENCES [dbo].[Customers](CustomerID))

CREATE
TABLE CustomersOrders(OrderID int FOREIGN KEY REFERENCES [dbo].[Orders](OrderID),ProductName nvarchar(45),Quantity nvarchar(45),Price nvarchar(45),TotalPrice int)
Try this

CREATE TABLE Customers
  (
     CustomerID INT IDENTITY(1, 1) PRIMARY KEY,
     FirstName  NVARCHAR(45),
     LastName   NVARCHAR(45),
     Address    NVARCHAR(45)
  )

CREATE TABLE Orders
  (
     OrderID    INT IDENTITY(1, 1) PRIMARY KEY,
     OrderDate  DATE,
     CustomerID INT FOREIGN KEY REFERENCES [dbo].[Customers](CustomerID)
  )

CREATE TABLE CustomersOrders
  (
     OrderID     INT FOREIGN KEY REFERENCES [dbo].[Orders](OrderID),
     ProductName NVARCHAR(45),
     Quantity    NVARCHAR(45),
     Price       NVARCHAR(45),
     TotalPrice  INT
  )

DECLARE @FirstName   NVARCHAR(45)='John',
        @LastName    NVARCHAR(45)='Smiths',
        @Address     NVARCHAR(45)='46 as str',
        @OrderDate   DATE=getdate(),
        @ProductName NVARCHAR(45)='p1',
        @Quantity    NVARCHAR(45)='1',
        @Price       NVARCHAR(45)='30',
        @TotalPrice  INT=30

BEGIN
    INSERT INTO Customers
                (FirstName,
                 LastName,
                 Address)
    VALUES      (@FirstName,
                 @LastName,
                 @Address);

    INSERT INTO Orders
                (OrderDate,
                 CustomerID)
    VALUES      (@orderdate,
                 @@IDENTITY)

    INSERT INTO CustomersOrders
                (OrderID,
                 ProductName,
                 Quantity,
                 Price,
                 TotalPrice)
    VALUES      (@@IDENTITY,
                 @ProductName,
                 @Quantity,
                 @Price,
                 @TotalPrice)

    SELECT *
    FROM   customers

    SELECT *
    FROM   Orders

    SELECT *
    FROM   CustomersOrders
END