PDA

View Full Version : ویرایش جداول مانند تغییر نوع در اس sql experes در محیط ویژوال استادیو



andaron
جمعه 02 اردیبهشت 1390, 14:07 عصر
با سلام

راستش من جدولی در sql experes درست کرده ام ولی مشکل اینجاست الان می خوام مثلا نوع یک فیلد رو عوض کنم نمی زاره (البته در محیط ویژوال استادیو)
در sqlserver بلدم که تنظمات رو تغییر بدم ولی در ویژوال استادیو بلد نیستم

یه سوال دیگه چطور دیتاپیسی که در sql server درست کرده ایم به sql experesتبدیل کنیم
یعنی کلا بلد نیست .

Reza_Yarahmadi
جمعه 02 اردیبهشت 1390, 20:11 عصر
من جدولی در sql experes درست کرده ام ولی مشکل اینجاست الان می خوام مثلا نوع یک فیلد رو عوض کنم نمی زاره (البته در محیط ویژوال استادیو)
در sqlserver بلدم که تنظمات رو تغییر بدم ولی در ویژوال استادیو بلد نیستماز منوی View گزینه Server Explorer رو انتخاب کنید. در پنجره باز شده روی Connect to Database کلیک کنید. در پنجره بعد نوع دیتابیس و آدرس اونو انتخاب کنید و OK. با انجام این کار یک کانکشن به دیتابیس شما ایجاد میشه و میتونید تغییرات مورد نظرتون رو روی دیتابیس اعمال کنید. اگر این کارها رو انجام میدید ولی در زمان تغییر نوع فیلد خطا میگیره به این علت است که جدول دارای رکوردهایی است که نوع این اطلاعات قابل تغییر به نوع جدید نیست.(مثلا فیلد مورد نظر دارای کاراکترهای غیر عددی است و شما میخواید به نوع داده عددی اونو تبدیل کنید)

یه سوال دیگه چطور دیتاپیسی که در sql server درست کرده ایم به sql experesتبدیل کنیم دیتابیس در هر 2 حالت (SQL Server و SQL Express) یکی است ، فرق این دو در سرویس های مدیریت دیتابیس است نه در نوع فایل. دیتابیس رو Detach و فایلهای اونو به پوشه مورد نظرتون منتقل کنید و کانکشن استرینگ برنامه خودتون رو بر اساس SQL Express تنظیم کنید.

andaron
شنبه 03 اردیبهشت 1390, 00:03 صبح
از منوی View گزینه Server Explorer رو انتخاب کنید. در پنجره باز شده روی Connect to Database کلیک کنید. در پنجره بعد نوع دیتابیس و آدرس اونو انتخاب کنید و OK. با انجام این کار یک کانکشن به دیتابیس شما ایجاد میشه و میتونید تغییرات مورد نظرتون رو روی دیتابیس اعمال کنید. اگر این کارها رو انجام میدید ولی در زمان تغییر نوع فیلد خطا میگیره به این علت است که جدول دارای رکوردهایی است که نوع این اطلاعات قابل تغییر به نوع جدید نیست.(مثلا فیلد مورد نظر دارای کاراکترهای غیر عددی است و شما میخواید به نوع داده عددی اونو تبدیل کنید)
دیتابیس در هر 2 حالت (SQL Server و SQL Express) یکی است ، فرق این دو در سرویس های مدیریت دیتابیس است نه در نوع فایل. دیتابیس رو Detach و فایلهای اونو به پوشه مورد نظرتون منتقل کنید و کانکشن استرینگ برنامه خودتون رو بر اساس SQL Express تنظیم کنید.


ممنون دوست عزیز

راستی detach به چه معناست اخه وقتی detach می زنم دیتابی حذف میشه و باید بریم تو پوشه مورن نظر فایل mdf باقی می مونه برای چی ؟
راستی اگر بخواهیم فایل دیتابیس رو به کامپیوتر دیگر انتقال دهیم باید از بک آپ استفاده کنیم یا detach ?
با تشکر

andaron
شنبه 03 اردیبهشت 1390, 18:49 عصر
..................

Reza_Yarahmadi
شنبه 03 اردیبهشت 1390, 19:20 عصر
راستی detach به چه معناست اخه وقتی detach می زنم دیتابی حذف میشه و باید بریم تو پوشه مورن نظر فایل mdf باقی می مونه برای چی ؟
Detach به معنی قطع ارتباط سرور SQL Server با فایلهای دیتابیس است. وقتی دیتابیس رو Detach میکنید از لیست دیتابیس های تحت کنترل SQL Server حذف میشه نه اینکه دیتابیس کلا حذف میشه. دیتابیس چه تحت کنترل سرور باشه و چه اونو Detach کنید یک سری فایل داره که معمولا توی شاخه SQL Server قرار داره.
راستی اگر بخواهیم فایل دیتابیس رو به کامپیوتر دیگر انتقال دهیم باید از بک آپ استفاده کنیم یا detach ?
در صورتی که بخواید روی سیستم دیگه بصورت Express بهش وصل بشید باید Detach کنید ، ولی در صورتی که دیتابیس در حال استفاده توسط کاربرهای برنامه است و روی سیستم دیگه هم SQL Server رو نصب کردید بهتر اینه که Backup بگیرید

ma.rad
شنبه 03 اردیبهشت 1390, 19:27 عصر
حتما اون فیلدی که میخواین تغییر بدید دارای داده است که باید داده های مربوط به اونو حذف کنید