امتیاز موضوع:
  • 1 رأی - میانگین امتیازات: 5
  • 1
  • 2
  • 3
  • 4
  • 5
نحوه اتصال به پایگاه داده SQL server با C#
#1
کد:
public bool connect(string rusta, string fname, string lname, string address , string tel)
{
try
{
SqlCommand newCommand = new SqlCommand();
SqlConnection newConnection = new SqlConnection("Server=TCIEK;Database=Project;User ID=;Password=");
newCommand.Connection = newConnection;
newCommand.CommandText = "INSERT INTO sabtenam (rusta,fname,lname,address,tel) VALUES ( @rusta, @fname, @lname, @address,@tel) ";
newCommand.Parameters.AddWithValue("@rusta",txtRus ta.Text);
newCommand.Parameters.AddWithValue("@fname",txtFir stName.Text);
newCommand.Parameters.AddWithValue("@lname",txtLas tName.Text);
newCommand.Parameters.AddWithValue("@address",txtT el.Text);
newCommand.Parameters.AddWithValue("@tel",txtAddre ss.Text);
newCommand.Connection.Open();
int sec = newCommand.ExecuteNonQuery();
newCommand.Connection.Close();

if (sec == -1)
return true;
else
return false;
}
catch (Exception)
{
return false;
}



پاسخ


#2
سلام
ممنون بابت کدها.
حال منم چن تا پیشنهاد دارم:
یکی اینکه برای اینکه هرز گاهی یادمون میره دیتا بیس رو ببندیم، و برای اینکه اصولی باشه سعی کنیم از تابع using هم استفاده کنیم.به شکل:
کد:
public bool connect(string rusta, string fname, string lname, string address , string tel)
{
try
{
[color=#FF0000]using(SqlConnection newConnection = new SqlConnection("Server=TCIEK;Database=Project;User ID=;Password="))[/color]
{
SqlCommand newCommand = new SqlCommand();
newCommand.Connection = newConnection;
newCommand.CommandText = "INSERT INTO sabtenam (rusta,fname,lname,address,tel) VALUES ( @rusta, @fname, @lname, @address,@tel) ";
newCommand.Parameters.AddWithValue("@rusta",txtRus ta.Text);
newCommand.Parameters.AddWithValue("@fname",txtFir stName.Text);
newCommand.Parameters.AddWithValue("@lname",txtLas tName.Text);
newCommand.Parameters.AddWithValue("@address",txtT el.Text);
newCommand.Parameters.AddWithValue("@tel",txtAddre ss.Text);
newCommand.Connection.Open();
int sec = newCommand.ExecuteNonQuery();
if (sec == -1)
return true;
else
return false;
}
}
catch (Exception)
{
return false;
}
در این صورت نیازی به بستن دیتابیس نیس!
دوم اینکه به جای رد کردن exception یه چاره ای واسش بیندیشیم و پیش بینی کنیم که چه اتفاقی خواهد افتاد و اگر نمی دونیم یه پیغام مناسب صادر کنیم!



پاسخ


#3
با تشکر از کدهای ارسالی ولی مشکلی که این روش داره اینه که در صورت انتقال اطلاعات به کامپیوتر دیگر باید به کد برنامه دسترسی داشته باشید تا connection string رو تغییر بدید ولی اگه این رشته رو در قالب یک فایل txt در start debug ذخیره کنید و فقط با عوض کردن این فایلبا دیتا بیس جدید ارتباط برقرار کنید


من آن گلبرگِ مغرورم، که می‌میرم ز بی آبی ولی با ذلت و خواری، پی شبنم نمی‌گردم

پاسخ


#4
(01 - 06 - 2011، 11:34 AM)reza_mr نوشته است: با تشکر از کدهای ارسالی ولی مشکلی که این روش داره اینه که در صورت انتقال اطلاعات به کامپیوتر دیگر باید به کد برنامه دسترسی داشته باشید تا connection string رو تغییر بدید ولی اگه این رشته رو در قالب یک فایل txt در start debug ذخیره کنید و فقط با عوض کردن این فایلبا دیتا بیس جدید ارتباط برقرار کنید
خوب می شه بیشتر توضیح بدین.
آها دو وطلب دیگه یادم رف بگم که باید سرور بر روی localhost تنظیم بشه (Server=localhost)
بعدش فایل Connectuion String هم برای محکم کاری در یک فایل xml ذخیره بشه.یعنی Connection String رو در یک Application Configuration File تعریف کنیم (راست کلیک بر روی سولوشن
Add\New Item...\Application Configuration File).



پاسخ


#5
(01 - 06 - 2011، 12:42 PM)Mostafa_sh نوشته است:
(01 - 06 - 2011، 11:34 AM)reza_mr نوشته است: با تشکر از کدهای ارسالی ولی مشکلی که این روش داره اینه که در صورت انتقال اطلاعات به کامپیوتر دیگر باید به کد برنامه دسترسی داشته باشید تا connection string رو تغییر بدید ولی اگه این رشته رو در قالب یک فایل txt در start debug ذخیره کنید و فقط با عوض کردن این فایلبا دیتا بیس جدید ارتباط برقرار کنید
خوب می شه بیشتر توضیح بدین.
آها دو وطلب دیگه یادم رف بگم که باید سرور بر روی localhost تنظیم بشه (Server=localhost)
بعدش فایل Connectuion String هم برای محکم کاری در یک فایل xml ذخیره بشه.یعنی Connection String رو در یک Application Configuration File تعریف کنیم (راست کلیک بر روی سولوشن
Add\New Item...\Application Configuration File).
شماوقتی برنامتون اماده شد اول باید مشخص بشه پایگاه دادتون sqlexpress هست یا sql server اگر sqlexpress باشه با یک کد ساده می تونید ارتباط بدید
اگر سرور باشه باید 4 شاخص رو در نظر بگیری و یک string ایجاد کنید که عبارتند از
server name
database name
user
password
از دستور زیر میتونید استفاده کنید
Connection.Registrar.SetData("Connection", "Data Source="+textBox1.Text +";Initial Catalog="+textBox2.Text +";User ID="+textBox3.Text +";Password="+textBox4.Text );
که همچین رشته ای ایجاد میکنه
Data Source=ISA-PC\SA;Initial Catalog=daneshjoo;User ID=sa;Password=reza1234

که دیگه به جای تایپ مسیر کافی نام فایل رو وارد کنید ودیگه لازم نیست هنگام نصبرو کامپیوتر دیگه ای به سرس رجوع کنید
توضیح بیشتر خواستید بفرمائید تا sample بذارم


من آن گلبرگِ مغرورم، که می‌میرم ز بی آبی ولی با ذلت و خواری، پی شبنم نمی‌گردم

پاسخ


#6
سلام دوستان من الان این مطالب رو دیدم
شما به جای این کارا طبق گفته ی دوستان یه فایل درست کنید و اونو به صورت INI ذخیره کنید و در Start اولیه ی برنامه کدی را بنویسید تا پایگاه داده رو از مسیر جاری مسیرشو خونده و یک Connection String با آن مسیر ایجاد کرده و در فایل ذخیره کنه و هر موقع نیاز بود تو برنامه Connection String رو از این فایل بگیرید
برای کار با فابل INI هم من یه Class دارم که به راحتی میتونید با استفاده از آن با فایل INI کار کنید ، اگه خواستید بگید بزارم
PeSaRaNeShAyAtInEsIyAh


برخیز….
هرکس میتواند بنشیند….!
.

پاسخ


#7
(06 - 06 - 2011، 02:08 AM)Sajjad_A نوشته است: سلام دوستان من الان این مطالب رو دیدم
شما به جای این کارا طبق گفته ی دوستان یه فایل درست کنید و اونو به صورت INI ذخیره کنید و در Start اولیه ی برنامه کدی را بنویسید تا پایگاه داده رو از مسیر جاری مسیرشو خونده و یک Connection String با آن مسیر ایجاد کرده و در فایل ذخیره کنه و هر موقع نیاز بود تو برنامه Connection String رو از این فایل بگیرید
برای کار با فابل INI هم من یه Class دارم که به راحتی میتونید با استفاده از آن با فایل INI کار کنید ، اگه خواستید بگید بزارم
PeSaRaNeShAyAtInEsIyAh

ممنون از راه حل پیشنهادیتون ولی مشکل این کار اینه که فایل INI اولا فقط در ویندوز شناخته شده است ودوما اینکه با notepad به راحتی میشه بهش دسترسی پیدا کرد در حالتی که من گفتم فایل با پسوند .db و به صورت کد شده در می اد و قابل دسترسی نیست در حالتی که در روش فوق به راحتی میشه به پسورد دیتا بیس دسترسی داشت.


من آن گلبرگِ مغرورم، که می‌میرم ز بی آبی ولی با ذلت و خواری، پی شبنم نمی‌گردم

پاسخ


#8
(01 - 06 - 2011، 01:37 PM)reza_mr نوشته است:
(01 - 06 - 2011، 12:42 PM)Mostafa_sh نوشته است:
(01 - 06 - 2011، 11:34 AM)reza_mr نوشته است: با تشکر از کدهای ارسالی ولی مشکلی که این روش داره اینه که در صورت انتقال اطلاعات به کامپیوتر دیگر باید به کد برنامه دسترسی داشته باشید تا connection string رو تغییر بدید ولی اگه این رشته رو در قالب یک فایل txt در start debug ذخیره کنید و فقط با عوض کردن این فایلبا دیتا بیس جدید ارتباط برقرار کنید
خوب می شه بیشتر توضیح بدین.
آها دو وطلب دیگه یادم رف بگم که باید سرور بر روی localhost تنظیم بشه (Server=localhost)
بعدش فایل Connectuion String هم برای محکم کاری در یک فایل xml ذخیره بشه.یعنی Connection String رو در یک Application Configuration File تعریف کنیم (راست کلیک بر روی سولوشن
Add\New Item...\Application Configuration File).
شماوقتی برنامتون اماده شد اول باید مشخص بشه پایگاه دادتون sqlexpress هست یا sql server اگر sqlexpress باشه با یک کد ساده می تونید ارتباط بدید
اگر سرور باشه باید 4 شاخص رو در نظر بگیری و یک string ایجاد کنید که عبارتند از
server name
database name
user
password
از دستور زیر میتونید استفاده کنید
Connection.Registrar.SetData("Connection", "Data Source="+textBox1.Text +";Initial Catalog="+textBox2.Text +";User ID="+textBox3.Text +";Password="+textBox4.Text );
که همچین رشته ای ایجاد میکنه
Data Source=ISA-PC\SA;Initial Catalog=daneshjoo;User ID=sa;Password=reza1234

که دیگه به جای تایپ مسیر کافی نام فایل رو وارد کنید ودیگه لازم نیست هنگام نصبرو کامپیوتر دیگه ای به سرس رجوع کنید
توضیح بیشتر خواستید بفرمائید تا sample بذارم

سلام اگه ممکنه بیشتر توضیح بده ممنون میشم دستت درد نکنه
(20 - 01 - 2012، 10:24 PM)hellohello نوشته است:
(01 - 06 - 2011، 01:37 PM)reza_mr نوشته است:
(01 - 06 - 2011، 12:42 PM)Mostafa_sh نوشته است:
(01 - 06 - 2011، 11:34 AM)reza_mr نوشته است: با تشکر از کدهای ارسالی ولی مشکلی که این روش داره اینه که در صورت انتقال اطلاعات به کامپیوتر دیگر باید به کد برنامه دسترسی داشته باشید تا connection string رو تغییر بدید ولی اگه این رشته رو در قالب یک فایل txt در start debug ذخیره کنید و فقط با عوض کردن این فایلبا دیتا بیس جدید ارتباط برقرار کنید
خوب می شه بیشتر توضیح بدین.
آها دو وطلب دیگه یادم رف بگم که باید سرور بر روی localhost تنظیم بشه (Server=localhost)
بعدش فایل Connectuion String هم برای محکم کاری در یک فایل xml ذخیره بشه.یعنی Connection String رو در یک Application Configuration File تعریف کنیم (راست کلیک بر روی سولوشن
Add\New Item...\Application Configuration File).
شماوقتی برنامتون اماده شد اول باید مشخص بشه پایگاه دادتون sqlexpress هست یا sql server اگر sqlexpress باشه با یک کد ساده می تونید ارتباط بدید
اگر سرور باشه باید 4 شاخص رو در نظر بگیری و یک string ایجاد کنید که عبارتند از
server name
database name
user
password
از دستور زیر میتونید استفاده کنید
Connection.Registrar.SetData("Connection", "Data Source="+textBox1.Text +";Initial Catalog="+textBox2.Text +";User ID="+textBox3.Text +";Password="+textBox4.Text );
که همچین رشته ای ایجاد میکنه
Data Source=ISA-PC\SA;Initial Catalog=daneshjoo;User ID=sa;Password=reza1234

که دیگه به جای تایپ مسیر کافی نام فایل رو وارد کنید ودیگه لازم نیست هنگام نصبرو کامپیوتر دیگه ای به سرس رجوع کنید
توضیح بیشتر خواستید بفرمائید تا sample بذارم

سلام اگه ممکنه بیشتر توضیح بده ممنون میشم دستت درد نکنه

اگه ممکنه بگید این دستورو"Connection.Registrar.SetData("Connection", "Data Source="+textBox1.Text +";Initial Catalog="+textBox2.Text +";User ID="+textBox3.Text +";Password="+textBox4.Text );" کجا و چطوری تو vb.netاستفاده کنیم



پاسخ


#9
مطالب جالبی بود مرسی از دوستان اقای مهندس reza_mr رضا میر جفعری
اقای جعفری شما چند سال قبل سازمان فنی حرفه ای شبکه تدریس می کردین بنده یه مربی داشتم به نام اقای رضا جفعری

خلاصه مطالب اموزنده و جالبی بود مرسی از لطفتون فقط

اقای مهندس جعفری میشه راجب دانشگاه اپتیک هندوستان یکم حرف بزنین منتظریم اعتبار مدارکش تا چه اندازه هستش و باید زبان هندی رو بلد باشی لطف می کنی

یکم از این دانشگاه و کلا دانشگاههای هندوستان یکم برامون حرف بزنین.

بجه ها می دونید که هندوستان تو کامپیوتر صادر کننده نرم افزار بیشتر نرم افزارهای امنیتی رو اونجا تولید می کنن. مطمینا توضیحات مهندس جعفری می تونه خیلی این کشور و سطح دانشگاه رو واسمون رشن کنه منتظر هستیم.



پاسخ


#10
Sad 
سلام خسته نباشید ببخشید من پروژه ای ساختم مدیریت کتابخانه آمادست به زبان سی شارپ و اس کیو ال سرور2008 نوشتم حالا میخوام وقتی رویه سیستمه دیگه ای اجرا کنم دیگه آدرس sqlconnectionرو وارد نکنم ثابت باشه توروخدا کمکم کنید ممنون میشم



پاسخ




موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  اتصال ترازوی دیجیتال به پورت سریال کامپیوتر و گرفتن اطلاعات از ان imani1983 7 8,577 24 - 06 - 2013، 01:43 AM
آخرین ارسال: sms8
  استفاده از دستور select در اتصال به دیتا بیس mahdipar2012 1 2,050 05 - 01 - 2013، 11:07 PM
آخرین ارسال: hamidnasiri.d
  بدست آوردن لیست نمونه های SQL Server موجود در شبکه imani1983 0 2,342 24 - 05 - 2011، 12:04 PM
آخرین ارسال: imani1983

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان