PDA

View Full Version : مشکل در اتصال به بانک اطلاعاتی



forodo
پنج شنبه 06 تیر 1392, 16:13 عصر
سلام
من می خوام تا جایی که می شه برای کار با پایگاه داده از کلاس استفاده کنم.
این کلاس رو نوشتم:


namespace WindowsFormsApplication3
{
class clsConnectionToSQL
{
public void InsertInformationToSQL(string way)
{
SqlConnection con = new SqlConnection();
con.ConnectionString = @"Data Source=.;Initial Catalog=TestAli;Integrated Security=True";

SqlCommand com = new SqlCommand();
com.Connection = con;
com.CommandType = CommandType.Text;
com.CommandText = @"way";
con.Open();
com.ExecuteNonQuery();
con.Close();
}
}
}


و اینم کدیه که در رویداد کلیک دکمه نوشتم:


SqlCommand comm;
clsConnectionToSQL ConnectionToSQL = new clsConnectionToSQL();
ConnectionToSQL.InsertInformationToSQL(comm, "INSERT INTO TAli(Fname,Lname) VALUES(@Fname,@Lname)");
com.Parameters.AddWithValue("@Fname", txtFname.Text);
com.Parameters.AddWithValue("@Lname", txtLname.Text);


می دونم که این غلطه.
لطفاً یک کلاس به من بدید که بتونم در مورد INSERT فقط دستور INSERT و داده های که باید به دیتابیس ریخته شود در آن کلاس نوشت یا اینکه فقط دستور INSERT در آن ریخته شود.
با تشکر

parvizwpf
پنج شنبه 06 تیر 1392, 17:03 عصر
شما باید بیای برای این کار یه متد تو کلاس بسازی به نام اینزرت بعد اصلا لازم نیست کوئریت رو بهش بفرستی باید بیای فقط نام فیلدهات و مقدار اونها رو بفرستی نه اینجوری . پیشنهاد میکنم ار ado.net به LINQ و EntityFramework مهاجرت کنید.

forodo
پنج شنبه 06 تیر 1392, 17:33 عصر
LINQ رو بلدم و در مورد entityframework هیچ چیزی نمی دونم و می خواستم ado.net رو یاد بگیرم و بلد هم هستم ولی می خواستم طریقه نوشتن کلاسش رو بدونم تا بتونم در جایی اگر نیازم شدن استفاده کنم و کلاً کدهاشو کوتاه کنم.
اگه برای شما مقدور هست لطفاً کلاس INSERT رو بنویسید بقیه اونا که DLETE و UPDATE باشه رو خودم از روی اونی که شما نوشتید می نویسم.
با تشکر فراوان

parvizwpf
پنج شنبه 06 تیر 1392, 17:51 عصر
اگه لینک بلدید دیگه نباید از این مدل استفده کنید.
به بیان ساده گفتم مقادیر ارسالی به متد باید شامل نام فیلدهایی که باید اینزرت شوند و مثلا نام استور پروسیجری که قرار است کوئری اینزرت باشد را پاس میدید.

forodo
پنج شنبه 06 تیر 1392, 19:43 عصر
در مورد فیلدهایی که باید انزرت شود نمی دونم چند تا است ممکن جایی 5تا فیلد باشد ممکن جایی دیگر 7تا.
در مورد استور پروسیجر من به جای استور پروسیجر از تکس استفاده کردم ولی نمی دونم چرا ایراد می گیره که نمی تونم استورپروسیجر رو پیدا کنم من اصلاً استور پروسیجر ندارم.
من الان یک پروژه دارم که از اول با ado شروع شده و بعد از انجام 20 درصد از کار به من محول شده برای همین می خواهم یاد بگیرم.