Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

SQL Server - Проблем при предаване на променлива към съхранена процедура

Не сте декларирали параметър, а локална променлива. За да го декларирате, както искате:

CREATE PROCEDURE pOrders (@enteredClientID varchar(20))
AS
    DECLARE @Results table (ClientID varchar(20), Num_orders int);

    SET NOCOUNT ON;

    -- Get all the order from the client
    INSERT INTO @Results
    SELECT ClientID, sum(Num_orders)
    FROM Orders O
    WHERE O.ClientID = @enteredClientID
    GROUP BY O.ClientID);

    -- Insert the orders into the results table --
    SELECT *
    FROM @Results;

GO;

За да го наречете:

exec pOrders @enteredClientID = 'ABC123456789'

или просто

exec pOrders 'ABC123456789'


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Проблем със SQL заявката

  2. Форматиране на sysjobhistory дата и време на колони в SQL Server

  3. Създаване на планове за поддръжка в SQL Server

  4. Как да вмъквам записи в SQL с търсени стойности?

  5. Какъв е еквивалентът на 'describe table' в SQL Server?