PDA

View Full Version : استفاده ازstored procedures



heyamos
یک شنبه 07 فروردین 1390, 14:46 عصر
سلام میخاستم برای عمل insertبا استفاده ازstored...کد برنامه شو بدونم ممنون میشم راهنماییم کنید

Javad.Kashi
یک شنبه 07 فروردین 1390, 15:31 عصر
سلام
در ابتدا Connection را در Web.config می سازیم:

<connectionStrings>
<add name="TestDB" connectionString="Data Source=localhost;Initial Catalog=TestDB;Persist Security Info=True;User ID=sa;Password=123" providerName="System.Data.SqlClient"/>
</connectionStrings>


سپس در رویداد کیلک Button_Insert کد زیر را وارد می کنیم:

SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrin gs["TestDB"].ToString());

connection.Open();

string sql = "sp_Persons_InsertRow"; // Parameterized Command

SqlCommand cmd = new SqlCommand(sql, connection);
cmd.CommandType = CommandType.StoredProcedure;

cmd.Parameters.Add(new SqlParameter("Name", txtName.Text));
cmd.Parameters.AddWithValue("Age", txtName.Text);

cmd.ExecuteNonQuery();

connection.Close();


همانطور که ملاحظه می کنید نام sp ما در sp_Persons_InsertRow نام دارد.

یا علی

veniz2008
دوشنبه 08 فروردین 1390, 11:20 صبح
سلام،لطف میکنید نحوه نوشتن و ذخیره کردن sp رو داخل sql هم بگید،(واسه همین دستور اضافه کردن توضیح بدید).تشکر

Javad.Kashi
دوشنبه 08 فروردین 1390, 15:16 عصر
سلام
با فرض اینکه ما در DB جدولی با نام Persons داریم که فیلد های آن ID و Name و Age باشد(ID چون Identity می باشد به صورت خودکار در هر رکورد 1 عدد به آن اضافه می شود و نیازی نیست آن را در Insert وارد کنیم. )

create procedure sp_persons_Insert @name nvarchar(50),@age int
as

insert into Persons(Name,Age)values(@name,@age)

go

و اگر بخواهیم این Stored Procedure را داخل خود SQL Server اجرا کنیم، این گونه می نویسیم:

exec sp_persons_Insert @name='Ya ali',@age=20


یا علی