ببين مافيا ، اینجوری که یکی بیاد Command هارو بهت بگه نمیتونی اون چیزی که میخوایی رو بنویسی . باید تا حدودی یاد بگیری چطور خودت بنویسیشون . الان که خودت add کردن رو یاد گرفتی Delete کردن و غیره هم کار راحتی هستند .
من یک روش کلی بهت میدم خودت بقیه اش رو بنویس ، روش مورد استفاده من از طریق Stored Procedure هاست برای مثال اگر database که باهاش کار میکنی 2 تا ستون داشته باشه به نام های UserName,PassWord و خود جدول نامش Users باشه یک stored procedure به شکل زیر در دیتا بیس بنویس که لازم نباشه هر دفعه از Dataset و DataAdapter استفاده کنی :
کد:
create proc Delete_User
(
@UserNamer varchar(16)
)
as
delete from Users where UserName =@UserName
اين دستور را ميتواني از طريق Enterprise Manager قسمت Tools و برنامه SQL Query Analyzer وارد کنی .
حالا در برنامه اصلی ات ، جایی که میخواهی Delete یا update یا هر کار دیگر بکنی :
کد:
string con = "Server=localhost;initial catalog=[Esme Database et ro inja benevis, esme jadval na esm e khod e database];Trusted_Connection=true;"
SqlCommand sqlCommand = new SqlCommand();
sqlCommand.CommandText = "Delete_User"; // or update or insert ,...
sqlCommand.CommandType = CommandType.StoredProcedure;
sqlCommand.Connection = new SqlConnection( con );
SqlParameter Usern = new SqlParameter("@UserName",SqlDbType.VarChar,30);
SqlParameter Passw = new SqlParameter("@PassWord",SqlDbType.VarChar,30);
Usern.Value = user.Text;
Passw.Value = pass.text;
sqlCommand.Parameters.Add(Usern);
sqlCommand.Parameters.Add(Passw);
sqlCommand.Connection.Open();
sqlCommand.ExecuteNonQuery();
sqlCommand.Connection.Close();
حالا برای Update و Insert خودت Stored Procedure اش را بنویس و از همین طریق در برنامه ات ازش استفاده کن. برای Select کردن یکخورده فرق میکند ، شما نمیتوانید از داخل Dataset چیزی Select کنی ، فقط میتوانی فیلتر کنیش که آنهم دقیقا دستور SQL نیست. برای همین بهتره باز هم از Stored Procedur ها استفاده کنی . تنها فرقش این است که نتیجه ای که برمیگرداند را باید در یک DataAdapter ذخیره کنی . بعد از طریق همان Dataset یا DataTable یا هر چیز دیگر در برنامه ات استفاده کنی.
پ ن : نوع داده های دیتا بیست را من پیش فرض Varchar گرفتم ؛ اگر فرق داشته باشند این کد کار نمیکند ، همینطور UserName باید بعنوان Key جدول شما باشد.