SORU
15 Aralık 2008, PAZARTESİ


Prosedür sağlanan değil parametre bekliyor

SQL Server'da bir Saklı Yordam erişirken hata alıyorum

Server Error in '/' Application.
Procedure or function 'ColumnSeek' expects parameter '@template', which was not supplied. 

Bu parametre Saklı Yordam aracılığıyla aradığımda oluyor .sql için net veri bağlantısı (Sistem.veri.SqlClient), olsa bile, parametre temin ediyorum. İşte benim kod.

SqlConnection sqlConn = new SqlConnection(connPath);
sqlConn.Open();

//METADATA RETRIEVAL
string sqlCommString = "QCApp.dbo.ColumnSeek";
SqlCommand metaDataComm = new SqlCommand(sqlCommString, sqlConn);
metaDataComm.CommandType = CommandType.StoredProcedure;
SqlParameter sp = metaDataComm.Parameters.Add("@template",SqlDbType.VarChar,50);
sp.Value = Template;

SqlDataReader metadr = metaDataComm.ExecuteReader();

Ve benim Saklı Yordam

   USE [QCApp]
   GO
   SET ANSI_NULLS ON
   GO
   SET QUOTED_IDENTIFIER ON
   GO

   ALTER PROCEDURE [dbo].[ColumnSeek] 
       @template varchar(50)
   AS
   EXEC('SELECT Column_Name, Data_Type 
   FROM [QCApp].[INFORMATION_SCHEMA].[COLUMNS] 
   WHERE TABLE_NAME = '   @template);

Burada yanlış yaptığımı anlamaya çalışıyorum.

Düzenleme:Olarak çıkıyor, Şablon oldu boş çünkü ben almaya değer bir parametre geçerek URL ve çuvalladım url param geçerken (ben kullanarak @ ve yerine &)

CEVAP
4 Mayıs 2010, Salı


Eğer koymayı unuttuysanız diğer cevaplara ek olarak burada:

cmd.CommandType = CommandType.StoredProcedure;

Sonra da bu hatayı alırsınız.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • jcortes187

    jcortes187

    24 Mart 2006
  • TROPFEST

    TROPFEST

    27 Mart 2007
  • wwjoshdo

    wwjoshdo

    25 Mayıs 2009