<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=Csharp%2FCSharp_Tutorial%2FADO.Net%2FSqlConnection_Stored_Procedure</id>
		<title>Csharp/CSharp Tutorial/ADO.Net/SqlConnection Stored Procedure - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=Csharp%2FCSharp_Tutorial%2FADO.Net%2FSqlConnection_Stored_Procedure"/>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/CSharp_Tutorial/ADO.Net/SqlConnection_Stored_Procedure&amp;action=history"/>
		<updated>2026-04-30T02:17:25Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://nfex.ru/index.php?title=Csharp/CSharp_Tutorial/ADO.Net/SqlConnection_Stored_Procedure&amp;diff=6498&amp;oldid=prev</id>
		<title> в 15:31, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/CSharp_Tutorial/ADO.Net/SqlConnection_Stored_Procedure&amp;diff=6498&amp;oldid=prev"/>
				<updated>2010-05-26T15:31:53Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 15:31, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://nfex.ru/index.php?title=Csharp/CSharp_Tutorial/ADO.Net/SqlConnection_Stored_Procedure&amp;diff=6499&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/CSharp_Tutorial/ADO.Net/SqlConnection_Stored_Procedure&amp;diff=6499&amp;oldid=prev"/>
				<updated>2010-05-26T12:19:14Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Call a stored procedure==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
  static void Main(string[] args)&lt;br /&gt;
  {&lt;br /&gt;
    SqlConnection cn = new SqlConnection(&amp;quot;Data Source=(local); Initial  Catalog = MyDatabase; User ID=sa;Password=&amp;quot;);&lt;br /&gt;
    SqlCommand cmd = new SqlCommand(&amp;quot;MyStoredProcedure&amp;quot;, cn);&lt;br /&gt;
    cmd.rumandType = CommandType.StoredProcedure;&lt;br /&gt;
    SqlParameter param = new SqlParameter(&amp;quot;@ReturnValue&amp;quot;, SqlDbType.Int);&lt;br /&gt;
    cmd.Parameters.Add(param);&lt;br /&gt;
    cmd.Parameters.Add(&amp;quot;MyFirstParameter&amp;quot;, SqlDbType.Int);&lt;br /&gt;
    cmd.Parameters.Add(&amp;quot;MySecondParameter&amp;quot;, SqlDbType.Int).Direction =&lt;br /&gt;
    ParameterDirection.Output;&lt;br /&gt;
    SqlDataAdapter da = new SqlDataAdapter(cmd);&lt;br /&gt;
    &lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Call stored procedure==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;/*&lt;br /&gt;
CREATE PROCEDURE Person.GetContacts&lt;br /&gt;
    @RowCount int OUTPUT&lt;br /&gt;
AS&lt;br /&gt;
    SET NOCOUNT ON&lt;br /&gt;
    SELECT * FROM Person.Contact&lt;br /&gt;
    set @RowCount = @@ROWCOUNT&lt;br /&gt;
    RETURN @RowCount&lt;br /&gt;
*/&lt;br /&gt;
using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
    class Program&lt;br /&gt;
    {&lt;br /&gt;
        static void Main(string[] args)&lt;br /&gt;
        {&lt;br /&gt;
            string sqlConnectString = &amp;quot;Data Source=(local);Integrated security=SSPI;Initial Catalog=AdventureWorks;&amp;quot;;&lt;br /&gt;
            string sqlSelect =&amp;quot;SELECT COUNT(*) FROM Person.Contact; SELECT * FROM Person.Contact;&amp;quot;;&lt;br /&gt;
            using (SqlConnection connection = new SqlConnection(sqlConnectString))&lt;br /&gt;
            {&lt;br /&gt;
                SqlCommand command = new SqlCommand(sqlSelect, connection);&lt;br /&gt;
                connection.Open( );&lt;br /&gt;
                SqlDataReader dr = command.ExecuteReader( );&lt;br /&gt;
                dr.Read( );&lt;br /&gt;
                Console.WriteLine(dr.GetInt32(0));&lt;br /&gt;
                dr.NextResult( );&lt;br /&gt;
                int count = 0;&lt;br /&gt;
                while (dr.Read( )){&lt;br /&gt;
                    count++;&lt;br /&gt;
                }&lt;br /&gt;
                Console.WriteLine(count);&lt;br /&gt;
                dr.Close( );&lt;br /&gt;
                command = new SqlCommand(&amp;quot;Person.GetContacts&amp;quot;, connection);&lt;br /&gt;
                command.rumandType = CommandType.StoredProcedure;&lt;br /&gt;
                command.Parameters.Add(&amp;quot;@RowCount&amp;quot;, SqlDbType.Int).Direction =ParameterDirection.Output;&lt;br /&gt;
                dr = command.ExecuteReader( );&lt;br /&gt;
                dr.Close( );&lt;br /&gt;
                Console.WriteLine(&amp;quot;Record count, using @@ROWCOUNT = {0}&amp;quot;,command.Parameters[&amp;quot;@RowCount&amp;quot;].Value);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Call storedprocedure and pass in the parameter==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
    public static void Main()&lt;br /&gt;
    {&lt;br /&gt;
        using (SqlConnection con = new SqlConnection())&lt;br /&gt;
        {&lt;br /&gt;
            con.ConnectionString = @&amp;quot;Data Source = .\sqlexpress;Database = Northwind; Integrated Security=SSPI&amp;quot;;&lt;br /&gt;
            con.Open();&lt;br /&gt;
            string category = &amp;quot;Seafood&amp;quot;;&lt;br /&gt;
            string year = &amp;quot;1999&amp;quot;;&lt;br /&gt;
            // Create and configure a new command.&lt;br /&gt;
            using (SqlCommand com = con.CreateCommand())&lt;br /&gt;
            {&lt;br /&gt;
                com.rumandType = CommandType.StoredProcedure;&lt;br /&gt;
                com.rumandText = &amp;quot;SalesByCategory&amp;quot;;&lt;br /&gt;
    &lt;br /&gt;
                // Create a SqlParameter object for the category parameter.&lt;br /&gt;
                com.Parameters.Add(&amp;quot;@CategoryName&amp;quot;, SqlDbType.NVarChar).Value = &lt;br /&gt;
                    category;&lt;br /&gt;
    &lt;br /&gt;
                // Create a SqlParameter object for the year parameter.&lt;br /&gt;
                com.Parameters.Add(&amp;quot;@OrdYear&amp;quot;, SqlDbType.NVarChar).Value = year;&lt;br /&gt;
    &lt;br /&gt;
                // Execute the command and process the results.&lt;br /&gt;
                using (IDataReader reader = com.ExecuteReader())&lt;br /&gt;
                {&lt;br /&gt;
                    Console.WriteLine(&amp;quot;Sales By Category ({0}).&amp;quot;, year);&lt;br /&gt;
    &lt;br /&gt;
                    while (reader.Read())&lt;br /&gt;
                    {&lt;br /&gt;
                        // Display the product details.&lt;br /&gt;
                        Console.WriteLine(&amp;quot;  {0} = {1}&amp;quot;,&lt;br /&gt;
                            reader[&amp;quot;ProductName&amp;quot;],&lt;br /&gt;
                            reader[&amp;quot;TotalPurchase&amp;quot;]);&lt;br /&gt;
                    }&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Call StoredProcedure with input and output parameters==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;        &lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Collections;&lt;br /&gt;
using System.ruponentModel;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
using System.Data.SqlTypes;&lt;br /&gt;
class MainClass {&lt;br /&gt;
    static void Main() {&lt;br /&gt;
        string cstr = &amp;quot;server=(local)\\SQLEXPRESS;database=MyDatabase;Integrated Security=SSPI;&amp;quot;;&lt;br /&gt;
        using ( SqlConnection conn = new SqlConnection( cstr ) )&lt;br /&gt;
        {&lt;br /&gt;
            conn.Open();&lt;br /&gt;
            SqlCommand cmd = new SqlCommand( &amp;quot;QueryVendor&amp;quot;, conn );&lt;br /&gt;
            cmd.rumandType = CommandType.StoredProcedure;&lt;br /&gt;
            // input parm&lt;br /&gt;
            SqlParameter name = cmd.Parameters.Add( &amp;quot;@name&amp;quot;, SqlDbType.NVarChar, 15 );&lt;br /&gt;
            name.Value = &amp;quot;Tom&amp;quot;;&lt;br /&gt;
            // output parm&lt;br /&gt;
            SqlParameter vendor = cmd.Parameters.Add( &amp;quot;@vendor&amp;quot;, SqlDbType.NVarChar, 15 );&lt;br /&gt;
            vendor.Direction = ParameterDirection.Output;&lt;br /&gt;
            // return value&lt;br /&gt;
            SqlParameter rowCount = cmd.Parameters.Add( &amp;quot;@rowCount&amp;quot;, SqlDbType.Int );&lt;br /&gt;
            rowCount.Direction = ParameterDirection.ReturnValue;&lt;br /&gt;
            cmd.ExecuteNonQuery();&lt;br /&gt;
            if ( (int)rowCount.Value &amp;gt; 0 )&lt;br /&gt;
            {&lt;br /&gt;
                Console.WriteLine(&amp;quot; is available from &amp;quot; + vendor.Value );&lt;br /&gt;
            }&lt;br /&gt;
            else&lt;br /&gt;
            {&lt;br /&gt;
                Console.WriteLine(&amp;quot; not available from &amp;quot; + vendor.Value );&lt;br /&gt;
            }&lt;br /&gt;
        }    &lt;br /&gt;
        &lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Call stored procedure with no parameter==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;/*&lt;br /&gt;
Quote from&lt;br /&gt;
&lt;br /&gt;
Beginning C# 2005 Databases From Novice to Professional&lt;br /&gt;
# Paperback: 528 pages&lt;br /&gt;
# Publisher: Apress (December 18, 2006)&lt;br /&gt;
# Language: English&lt;br /&gt;
# ISBN-10: 159059777X&lt;br /&gt;
# ISBN-13: 978-1590597774&lt;br /&gt;
*/&lt;br /&gt;
using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
   static void Main()&lt;br /&gt;
   {&lt;br /&gt;
      SqlConnection conn = new SqlConnection(@&amp;quot;server = .\sqlexpress;integrated security = true;database = northwind&amp;quot;);&lt;br /&gt;
      try&lt;br /&gt;
      {&lt;br /&gt;
         conn.Open();&lt;br /&gt;
         SqlCommand cmd = conn.CreateCommand();&lt;br /&gt;
         cmd.rumandType = CommandType.StoredProcedure;&lt;br /&gt;
         cmd.rumandText = &amp;quot;sp_select_all_employees&amp;quot;;&lt;br /&gt;
         SqlDataReader rdr = cmd.ExecuteReader();&lt;br /&gt;
         while (rdr.Read()){&lt;br /&gt;
            Console.WriteLine(&amp;quot;{0} {1} {2}&amp;quot;&lt;br /&gt;
             , rdr[0].ToString().PadRight(5)&lt;br /&gt;
             , rdr[1].ToString()&lt;br /&gt;
             , rdr[2].ToString()&lt;br /&gt;
            );&lt;br /&gt;
         }&lt;br /&gt;
         rdr.Close();&lt;br /&gt;
      }&lt;br /&gt;
      catch (SqlException ex)&lt;br /&gt;
      {&lt;br /&gt;
         Console.WriteLine(ex.ToString());&lt;br /&gt;
      }&lt;br /&gt;
      finally&lt;br /&gt;
      {&lt;br /&gt;
         conn.Close();&lt;br /&gt;
      }&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
/*&lt;br /&gt;
create procedure sp_Select_All_Employees&lt;br /&gt;
as&lt;br /&gt;
   select&lt;br /&gt;
      employeeid,&lt;br /&gt;
      firstname,&lt;br /&gt;
      lastname&lt;br /&gt;
   from&lt;br /&gt;
      employees&lt;br /&gt;
*/&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Call stored procedure with parameter and return value==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;/*&lt;br /&gt;
Quote from&lt;br /&gt;
&lt;br /&gt;
Beginning C# 2005 Databases From Novice to Professional&lt;br /&gt;
# Paperback: 528 pages&lt;br /&gt;
# Publisher: Apress (December 18, 2006)&lt;br /&gt;
# Language: English&lt;br /&gt;
# ISBN-10: 159059777X&lt;br /&gt;
# ISBN-13: 978-1590597774&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
   static void Main()&lt;br /&gt;
   {&lt;br /&gt;
      SqlConnection conn = new SqlConnection(@&amp;quot;server = .\sqlexpress;integrated security = true;database = northwind&amp;quot;);&lt;br /&gt;
      try&lt;br /&gt;
      {&lt;br /&gt;
         conn.Open();&lt;br /&gt;
         SqlCommand cmd = conn.CreateCommand();&lt;br /&gt;
         cmd.rumandType = CommandType.StoredProcedure;&lt;br /&gt;
         cmd.rumandText = &amp;quot;sp_orders_by_employeeid2&amp;quot;;&lt;br /&gt;
         SqlParameter inparm = cmd.Parameters.Add(&amp;quot;@employeeid&amp;quot;, SqlDbType.Int);&lt;br /&gt;
         inparm.Direction = ParameterDirection.Input;&lt;br /&gt;
         inparm.Value = 2;&lt;br /&gt;
         SqlParameter ouparm = cmd.Parameters.Add(&amp;quot;@ordercount&amp;quot;, SqlDbType.Int);&lt;br /&gt;
         ouparm.Direction = ParameterDirection.Output;&lt;br /&gt;
         SqlParameter retval = cmd.Parameters.Add(&amp;quot;return_value&amp;quot;, SqlDbType.Int);&lt;br /&gt;
         retval.Direction = ParameterDirection.ReturnValue;&lt;br /&gt;
         SqlDataReader rdr = cmd.ExecuteReader();&lt;br /&gt;
         while (rdr.Read())&lt;br /&gt;
         {&lt;br /&gt;
            Console.WriteLine(&amp;quot;{0} {1}&amp;quot;&lt;br /&gt;
             , rdr[0].ToString().PadRight(5)&lt;br /&gt;
             , rdr[1].ToString()&lt;br /&gt;
            );&lt;br /&gt;
         }&lt;br /&gt;
         rdr.Close();&lt;br /&gt;
         Console.WriteLine(&amp;quot;The output parameter value is {0}&amp;quot;, cmd.Parameters[&amp;quot;@ordercount&amp;quot;].Value);&lt;br /&gt;
         Console.WriteLine(&amp;quot;The return value is {0}&amp;quot;, cmd.Parameters[&amp;quot;return_value&amp;quot;].Value);&lt;br /&gt;
      }&lt;br /&gt;
      catch (SqlException ex)&lt;br /&gt;
      {&lt;br /&gt;
         Console.WriteLine(ex.ToString());&lt;br /&gt;
      }&lt;br /&gt;
      finally&lt;br /&gt;
      {&lt;br /&gt;
         conn.Close();&lt;br /&gt;
      }&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
/*&lt;br /&gt;
create procedure sp_Orders_By_EmployeeId2&lt;br /&gt;
   @employeeid int,&lt;br /&gt;
   @ordercount int = 0 output&lt;br /&gt;
as&lt;br /&gt;
   select&lt;br /&gt;
      orderid,&lt;br /&gt;
      customerid&lt;br /&gt;
   from&lt;br /&gt;
      orders&lt;br /&gt;
   where&lt;br /&gt;
      employeeid = @employeeid;&lt;br /&gt;
   select&lt;br /&gt;
      @ordercount = count(*)&lt;br /&gt;
   from&lt;br /&gt;
      orders&lt;br /&gt;
   where&lt;br /&gt;
      employeeid = @employeeid&lt;br /&gt;
   return @ordercount&lt;br /&gt;
*/&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Call stored procedure with parameters using SqlCommand==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.OleDb;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
  static void Main(string[] args)&lt;br /&gt;
    {&lt;br /&gt;
        string SQL = &amp;quot;SELECT * FROM Orders&amp;quot;;&lt;br /&gt;
        string ConnectionString =&amp;quot;Integrated Security=SSPI;Initial Catalog=Northwind;Data Source=localhost;&amp;quot;;&lt;br /&gt;
        SqlConnection conn = new SqlConnection(ConnectionString);&lt;br /&gt;
        SqlCommand StoredProcedureCommand = new SqlCommand(&amp;quot;Sales By Year&amp;quot;, conn);&lt;br /&gt;
        StoredProcedureCommand.rumandType = CommandType.StoredProcedure;&lt;br /&gt;
        SqlParameter myParm1 = StoredProcedureCommand.Parameters.Add( &amp;quot;@Beginning_Date&amp;quot;, SqlDbType.DateTime, 20); &lt;br /&gt;
        myParm1.Value = &amp;quot;7/1/1996&amp;quot;;&lt;br /&gt;
        SqlParameter myParm2 = StoredProcedureCommand.Parameters.Add(&amp;quot;@Ending_Date&amp;quot;, SqlDbType.DateTime, 20); &lt;br /&gt;
        myParm2.Value = &amp;quot;7/31/1996&amp;quot;;&lt;br /&gt;
        conn.Open();&lt;br /&gt;
        SqlDataReader TheReader = StoredProcedureCommand.ExecuteReader();&lt;br /&gt;
        string orderlist = &amp;quot;&amp;quot;;&lt;br /&gt;
        while (TheReader.Read())&lt;br /&gt;
        {&lt;br /&gt;
      string nextID = TheReader[&amp;quot;OrderID&amp;quot;].ToString();&lt;br /&gt;
      string nextSubtotal = TheReader[&amp;quot;Subtotal&amp;quot;].ToString();&lt;br /&gt;
      orderlist += nextID + &amp;quot;\t&amp;quot; + nextSubtotal + &amp;quot;\n&amp;quot;;&lt;br /&gt;
        }&lt;br /&gt;
        conn.Close();&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Call stored procedure with SqlCommand==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Data;            &lt;br /&gt;
using System.Data.SqlClient;  &lt;br /&gt;
  class Program&lt;br /&gt;
  {&lt;br /&gt;
    static void Main(string[] args)&lt;br /&gt;
    {&lt;br /&gt;
      SqlConnection thisConnection = new SqlConnection(&lt;br /&gt;
                @&amp;quot;Data Source=.\SQLEXPRESS;&amp;quot; +&lt;br /&gt;
                @&amp;quot;AttachDbFilename=&amp;quot;NORTHWND.MDF&amp;quot;;&amp;quot; +&lt;br /&gt;
                @&amp;quot;Integrated Security=True;Connect Timeout=30;User Instance=true&amp;quot;);       &lt;br /&gt;
      thisConnection.Open();&lt;br /&gt;
      SqlCommand thisCommand = thisConnection.CreateCommand();&lt;br /&gt;
      thisCommand.rumandType = CommandType.StoredProcedure;&lt;br /&gt;
      thisCommand.rumandText =&amp;quot;TenRecoreds&amp;quot;;&lt;br /&gt;
      SqlDataReader thisReader = thisCommand.ExecuteReader();&lt;br /&gt;
      while (thisReader.Read())&lt;br /&gt;
      {&lt;br /&gt;
        Console.WriteLine(thisReader[&amp;quot;UnitPrice&amp;quot;]);&lt;br /&gt;
      }&lt;br /&gt;
      thisReader.Close();&lt;br /&gt;
      thisConnection.Close();&lt;br /&gt;
    }&lt;br /&gt;
  }&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Catch exception when calling stored procedure==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
   static void Main()&lt;br /&gt;
   {&lt;br /&gt;
         SqlConnection conn = new SqlConnection(@&amp;quot;data source = .\sqlexpress;integrated security = true;database = northwind&amp;quot;);&lt;br /&gt;
         SqlCommand cmd = conn.CreateCommand();&lt;br /&gt;
         cmd.rumandType = CommandType.StoredProcedure;&lt;br /&gt;
         try&lt;br /&gt;
         {&lt;br /&gt;
            conn.Open();&lt;br /&gt;
            SqlDataReader dr = cmd.ExecuteReader();&lt;br /&gt;
            dr.Close();&lt;br /&gt;
         }&lt;br /&gt;
         catch (System.Data.SqlClient.SqlException ex)&lt;br /&gt;
         {&lt;br /&gt;
            Console.WriteLine(&amp;quot;Source: &amp;quot; + ex.Source);&lt;br /&gt;
            Console.WriteLine(&amp;quot;Exception Message: &amp;quot; + ex.Message);&lt;br /&gt;
         }&lt;br /&gt;
         catch (System.Exception ex)&lt;br /&gt;
         {&lt;br /&gt;
            Console.WriteLine(&amp;quot;Source: &amp;quot; + ex.Source);&lt;br /&gt;
            Console.WriteLine(&amp;quot;Exception Message: &amp;quot; + ex.Message);&lt;br /&gt;
         }&lt;br /&gt;
         finally&lt;br /&gt;
         {&lt;br /&gt;
            if (conn.State == ConnectionState.Open)&lt;br /&gt;
            {&lt;br /&gt;
               Console.WriteLine(&amp;quot;Finally block closing the connection&amp;quot;);&lt;br /&gt;
               conn.Close();&lt;br /&gt;
            }&lt;br /&gt;
         }&lt;br /&gt;
   }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Raising and Handling Stored Procedure Errors==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;/*&lt;br /&gt;
CREATE PROCEDURE RaiseError&lt;br /&gt;
    @Severity int,&lt;br /&gt;
    @State int = 1&lt;br /&gt;
AS&lt;br /&gt;
    RAISERROR (&amp;quot;Error of severity %d raised from stored procedure RaiseError.&amp;quot;,&lt;br /&gt;
            @Severity, @State, @Severity)&lt;br /&gt;
    RAISERROR (&amp;quot;Error of severity %d raised from stored procedure RaiseError.&amp;quot;,&lt;br /&gt;
            @Severity, @State, @Severity) WITH LOG&lt;br /&gt;
    RETURN&lt;br /&gt;
*/&lt;br /&gt;
using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
    class Program&lt;br /&gt;
    {&lt;br /&gt;
        static void Main(string[] args)&lt;br /&gt;
        {&lt;br /&gt;
            string sqlConnectString = &amp;quot;Data Source=(local);Integrated security=SSPI;Initial Catalog=AdventureWorks;&amp;quot;;&lt;br /&gt;
            using (SqlConnection connection = new SqlConnection(sqlConnectString))&lt;br /&gt;
            {&lt;br /&gt;
                connection.InfoMessage += new SqlInfoMessageEventHandler(SqlMessageEventHandler);&lt;br /&gt;
                SqlCommand command = new SqlCommand(&amp;quot;RaiseError&amp;quot;, connection);&lt;br /&gt;
                command.rumandType = CommandType.StoredProcedure;&lt;br /&gt;
                command.Parameters.Add(&amp;quot;@Severity&amp;quot;, SqlDbType.Int);&lt;br /&gt;
                command.Parameters.Add(&amp;quot;@State&amp;quot;, SqlDbType.Int);&lt;br /&gt;
                for(int severity = -1; severity &amp;lt;= 26; severity++){&lt;br /&gt;
                    command.Parameters[&amp;quot;@Severity&amp;quot;].Value = severity;&lt;br /&gt;
                    command.Parameters[&amp;quot;@State&amp;quot;].Value = 0;&lt;br /&gt;
                    connection.Open( );&lt;br /&gt;
                    command.ExecuteNonQuery( );&lt;br /&gt;
                    connection.Close( );&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        private static void SqlMessageEventHandler(object sender,SqlInfoMessageEventArgs e)&lt;br /&gt;
        {&lt;br /&gt;
            Console.WriteLine(&amp;quot;MESSAGE: {0}&amp;quot;, e.Message);&lt;br /&gt;
        }&lt;br /&gt;
    }&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Retrieves stored procedure parameter information==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
public class AddCustomer&lt;br /&gt;
{&lt;br /&gt;
    public static void Main() &lt;br /&gt;
    {&lt;br /&gt;
        string connectionString = &amp;quot;Data Source=localhost;Initial Catalog=store;Integrated Security=SSPI&amp;quot;;&lt;br /&gt;
        string procedure = &amp;quot;CustomerAdd&amp;quot;;&lt;br /&gt;
        SqlConnection con = new SqlConnection(connectionString);&lt;br /&gt;
        SqlCommand cmd = new SqlCommand(procedure, con);&lt;br /&gt;
        cmd.rumandType = CommandType.StoredProcedure;&lt;br /&gt;
        con.Open();&lt;br /&gt;
        SqlCommandBuilder.DeriveParameters(cmd);&lt;br /&gt;
        cmd.Parameters[1].Value = &amp;quot;name&amp;quot;;&lt;br /&gt;
        cmd.Parameters[2].Value = &amp;quot;j@m.ru&amp;quot;;&lt;br /&gt;
        cmd.Parameters[3].Value = &amp;quot;password&amp;quot;;&lt;br /&gt;
        cmd.Parameters[4].Value = DBNull.Value;&lt;br /&gt;
        cmd.ExecuteNonQuery();&lt;br /&gt;
        con.Close();&lt;br /&gt;
        Console.WriteLine(&amp;quot;New ID: &amp;quot; +cmd.Parameters[4].Value);&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Retrieving a Return Value from a Stored Procedure==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;/*&lt;br /&gt;
CREATE PROCEDURE Person.GetContacts&lt;br /&gt;
    @RowCount int OUTPUT&lt;br /&gt;
AS&lt;br /&gt;
    SET NOCOUNT ON&lt;br /&gt;
    SELECT * FROM Person.Contact&lt;br /&gt;
    SET @RowCount = @@ROWCOUNT&lt;br /&gt;
    RETURN @RowCount&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
    class Program&lt;br /&gt;
    {&lt;br /&gt;
        static void Main(string[] args)&lt;br /&gt;
        {&lt;br /&gt;
            string sqlConnectString = &amp;quot;Data Source=(local);&amp;quot; +&lt;br /&gt;
                &amp;quot;Integrated security=SSPI;Initial Catalog=AdventureWorks;&amp;quot;;&lt;br /&gt;
            using (SqlConnection connection = new SqlConnection(sqlConnectString))&lt;br /&gt;
            {&lt;br /&gt;
                SqlCommand command =new SqlCommand(&amp;quot;Person.GetContacts&amp;quot;, connection);&lt;br /&gt;
                command.rumandType = CommandType.StoredProcedure;&lt;br /&gt;
                command.Parameters.Add(&amp;quot;@RowCount&amp;quot;, SqlDbType.Int).Direction = ParameterDirection.Output;&lt;br /&gt;
                SqlParameter retParam = command.Parameters.Add(&amp;quot;@RetVal&amp;quot;, SqlDbType.Int);&lt;br /&gt;
                retParam.Direction = ParameterDirection.ReturnValue;&lt;br /&gt;
                connection.Open( );&lt;br /&gt;
                SqlDataReader dr = command.ExecuteReader( );&lt;br /&gt;
                Console.WriteLine(&amp;quot;After execution, return value = {0}&amp;quot;, retParam.Value);&lt;br /&gt;
                int rowCount = 0;&lt;br /&gt;
                while (dr.Read( )){&lt;br /&gt;
                    rowCount++;&lt;br /&gt;
                }&lt;br /&gt;
                dr.Close( );&lt;br /&gt;
                connection.Close( );&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Retrieving a Stored Procedure Output Parameter==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;/*&lt;br /&gt;
CREATE PROCEDURE Person.GetContacts&lt;br /&gt;
    @RowCount int OUTPUT&lt;br /&gt;
AS&lt;br /&gt;
    SET NOCOUNT ON&lt;br /&gt;
    SELECT * FROM Person.Contact&lt;br /&gt;
    SET @RowCount = @@ROWCOUNT&lt;br /&gt;
    RETURN @RowCount&lt;br /&gt;
*/&lt;br /&gt;
using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
    class Program&lt;br /&gt;
    {&lt;br /&gt;
        static void Main(string[] args)&lt;br /&gt;
        {&lt;br /&gt;
            string sqlConnectString = &amp;quot;Data Source=(local);Integrated security=SSPI;Initial Catalog=AdventureWorks;&amp;quot;;&lt;br /&gt;
            using (SqlConnection connection = new SqlConnection(sqlConnectString))&lt;br /&gt;
            {&lt;br /&gt;
                SqlCommand command = new SqlCommand(&amp;quot;Person.GetContacts&amp;quot;, connection);&lt;br /&gt;
                command.rumandType = CommandType.StoredProcedure;&lt;br /&gt;
                command.Parameters.Add(&amp;quot;@RowCount&amp;quot;, SqlDbType.Int).Direction =&lt;br /&gt;
                    ParameterDirection.Output;&lt;br /&gt;
                connection.Open( );&lt;br /&gt;
                SqlDataReader dr = command.ExecuteReader( );&lt;br /&gt;
                int rowCount = 0;&lt;br /&gt;
                while (dr.Read( ))&lt;br /&gt;
                {&lt;br /&gt;
                    rowCount++;&lt;br /&gt;
                }&lt;br /&gt;
                dr.Close( );&lt;br /&gt;
                connection.Close( );&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Retrieving Data Using a SQL Server Stored Procedure==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;using System;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Data.SqlClient;&lt;br /&gt;
    class Program&lt;br /&gt;
    {&lt;br /&gt;
        static void Main(string[] args)&lt;br /&gt;
        {&lt;br /&gt;
            string sqlConnectString = &amp;quot;Data Source=(local);Integrated security=SSPI;Initial Catalog=AdventureWorks;&amp;quot;;&lt;br /&gt;
            string sqlSelect = &amp;quot;uspGetEmployeeManagers&amp;quot;;&lt;br /&gt;
            SqlConnection connection = new SqlConnection(sqlConnectString);&lt;br /&gt;
            SqlCommand command = new SqlCommand(sqlSelect, connection);&lt;br /&gt;
            command.rumandType = CommandType.StoredProcedure;&lt;br /&gt;
            command.Parameters.Add(&amp;quot;@EmployeeID&amp;quot;, SqlDbType.Int).Value = 100;&lt;br /&gt;
            DataTable dt = new DataTable( );&lt;br /&gt;
            SqlDataAdapter da = new SqlDataAdapter(command);&lt;br /&gt;
            da.Fill(dt);&lt;br /&gt;
            foreach (DataRow row in dt.Rows)&lt;br /&gt;
            {&lt;br /&gt;
                Console.WriteLine(row[&amp;quot;RecursionLevel&amp;quot;]);&lt;br /&gt;
                Console.WriteLine(row[&amp;quot;EmployeeID&amp;quot;]);&lt;br /&gt;
                Console.WriteLine(row[&amp;quot;LastName&amp;quot;]);&lt;br /&gt;
                Console.WriteLine(row[&amp;quot;FirstName&amp;quot;]);&lt;br /&gt;
                Console.WriteLine(row[&amp;quot;ManagerID&amp;quot;]);&lt;br /&gt;
                Console.WriteLine(row[&amp;quot;ManagerLastName&amp;quot;]);&lt;br /&gt;
                Console.WriteLine(row[&amp;quot;ManagerFirstName&amp;quot;]);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>