PDA

View Full Version : سوال: در تکنولوژی لینک چطور دیتابیس MDF را کنار فایل اجرایی قرار دهیم و آدرس دهیم؟



Mojtaba0
شنبه 15 شهریور 1393, 01:22 صبح
سلام

چندین آموزش لینک رو دیدم ولی همشون دیتابیس از Sql Server استفاده شده و فایل داخل Sql هست و نه در کنار فایل اجرایی برنامه.

برای استفاده از فایلهای MDF در آدرس باید چطور عمل کرد؟

NasimBamdad
شنبه 15 شهریور 1393, 07:54 صبح
خوب اونا با Script دیتابیس رو میسازند و جداول رو هم به همین صورت . با کد و کوری دیتابیس رو می سازند

Mojtaba0
شنبه 15 شهریور 1393, 13:42 عصر
خوب اونا با Script دیتابیس رو میسازند و جداول رو هم به همین صورت . با کد و کوری دیتابیس رو می سازند

مشکل ساخت دیتابیس نیست.دیتابیس از قبل وجود داره ولی
میخوام فایل دیتابیس جای اینکه توی SQL باشه کنار برنامم باشه.
مثل فایل دیتابیس اتچ شده در ADO.NET .

تو Linq چطور باید اینکارو کرد ؟

NasimBamdad
شنبه 15 شهریور 1393, 14:06 عصر
خوب شما فایل MDF رو کنار برنامه ات قرار بده . بعد با Connection String مناسب اقدام به Attach کن . دیگه دفعات بعدی مشکل نیست

Yanehsar
شنبه 15 شهریور 1393, 19:49 عصر
سلام بنده هم با این موضوع مشکل دارم داخل SQL server 2008 دیتابیس ایجاد کردم و برنامه نویسی کردم و ست آپ ساختم روی سیستم مشتری هم SQL Express نصب کردم اما نمی تونم بهش متصل بشم !!! چطوری ConnectionString روی سیستم مشتری دستکاری کنم ؟آیا با دستکاری فایل app.config جوابگو هستش ؟چطوری اتچ کنم به SQL Express ؟؟؟یا فرض کنیم اسگریپ دارم چطوری اسگریپ رو اجرا کنم ؟
اولین باره دارم با SQL v linq برنامه نویسی می کنم ممنون میشم راهنمائیمون کنید .
http://barnamenevis.org/showthread.php?466759-%D9%85%D8%B4%DA%A9%D9%84-%D8%AF%D8%B1-%D8%B4%D9%86%D8%A7%D8%B3%D8%A7%DB%8C%DB%8C-%D8%AF%DB%8C%D8%AA%D8%A7%D8%A8%DB%8C%D8%B3-%D8%AF%D8%B1-%D8%B3%DB%8C%D8%B3%D8%AA%D9%85-%D9%85%D8%B4%D8%AA%D8%B1%DB%8C

NasimBamdad
یک شنبه 16 شهریور 1393, 07:26 صبح
فایل DataBase که پسوند .MDF داره را کنار برنامه قرار بدید و بعد کانکشن استرینگ رو به این صورت تغییر بدید


Server=.\SQLExpress;AttachDbFilename=" + Application.StartupPath + "\\db\\Anbar.mdf" + ";Database=Anbar;Integrated Security=True;Connect Timeout=30;User Instance=True

Mojtaba0
یک شنبه 16 شهریور 1393, 14:39 عصر
فایل DataBase که پسوند .MDF داره را کنار برنامه قرار بدید و بعد کانکشن استرینگ رو به این صورت تغییر بدید


Server=.\SQLExpress;AttachDbFilename=" + Application.StartupPath + "\\db\\Anbar.mdf" + ";Database=Anbar;Integrated Security=True;Connect Timeout=30;User Instance=True


از طریق ویزارد کانکشن فایل dbml رو به فایل mdf تعریف کردم شده این:


Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirec tory|\dbTell.mdf;Integrated Security=True;Connect Timeout=30

ولی از Properties قابل ویرایش نیست.

1 - الان این کانکشن درسته برای انتقال به سیستم دیگه یا باید عین مال شما باشه تا با Express کار کنه؟

2 - کانکشنی که شما گفتین با MSSQL Express کار میکنه و چون مال من Management Studio هست اولش Local و v11 داره ؟

3 - MSSQL Express تو نسخه Management Studio موجود نیست و باید جدا نصب بشه ؟

ممنون از اینکه پاسخ میدید./

NasimBamdad
یک شنبه 16 شهریور 1393, 14:46 عصر
1- این کانکشن برای زمانی هست که نرم افزار تک کاربره است و فقط روی همون سیستم قابل اجرا هست .
2- Managment Studio یک ابزار برای مدیریت SQL هست . شما اول مطمعن بشو که چه SQL نصب کردید ؟
3- MS Sql Express بدون Managment Studio نصب میشه . اگه می خواهیید Managment Studio داشته باشید یاید جداگانه نصب کنید

NasimBamdad
یک شنبه 16 شهریور 1393, 14:46 عصر
به چه زبانی برنامه نویسی می کنید ؟ dbml چرا ؟

مگه App,conf ندارید ؟

Mojtaba0
یک شنبه 16 شهریور 1393, 14:58 عصر
1- این کانکشن برای زمانی هست که نرم افزار تک کاربره است و فقط روی همون سیستم قابل اجرا هست .
2- Managment Studio یک ابزار برای مدیریت SQL هست . شما اول مطمعن بشو که چه SQL نصب کردید ؟
3- MS Sql Express بدون Managment Studio نصب میشه . اگه می خواهیید Managment Studio داشته باشید یاید جداگانه نصب کنید

1-تک کاربره نمیدونم منظورتون چی هست ولی قراره روی سیستم های مختلف تک کاربر و غیر شبکه نصب بشه.(مثلا دیکشنری یا دفتر تلفن یا مدیریت حافظه یا ...).

2- من Management Studio نصب کردم.دیتابیس خام رو ساختم و با C#‎‎‎ داده ها رو سرچ یا کم و زیاد میکنم.

3- Management Studio نصبه برام ولی میخوام برنامه با Express باشه تا روی سیستم مشتری فقط Express نصب بشه.


به چه زبانی برنامه نویسی می کنید ؟ dbml چرا ؟

مگه App,conf ندارید ؟

4- برای Linq مگه نباید یه فایل DataClasses با پسوند dbml به پروژه اضافه کرد (linq to sql) و Table توش drag کرد و ... ؟

NasimBamdad
یک شنبه 16 شهریور 1393, 15:11 عصر
1- منظورم همینه و مشکلی نیست .
2- ببینید Managment Studio یکی از ابزار های مجموعه بزرگت به اسم SQL می باشد برای مدیریت بهتر . مثل Word برای Office . شما احتمالا دارید از SQL که همراه Visual Studio نصب شده استفاده می کنید

از قسمت Add/Remove Programs نسخه SQL رو بدست بیارید که به احتمال زیاد Express هست ( همراه VS نسخه Express نصب میشه )
3- روی سیستم مشتری شما باید Express رو نصب کنید ، نیاز به Managment Studio نیست . این موضوع رو موکول کنید به نرم افزار های Setup ساز .
4- متاسفانه Linq کار نکردم . و در گوگل سرچ کنید

Mojtaba0
یک شنبه 16 شهریور 1393, 15:20 عصر
1- منظورم همینه و مشکلی نیست .
2- ببینید Managment Studio یکی از ابزار های مجموعه بزرگت به اسم SQL می باشد برای مدیریت بهتر . مثل Word برای Office . شما احتمالا دارید از SQL که همراه Visual Studio نصب شده استفاده می کنید

از قسمت Add/Remove Programs نسخه SQL رو بدست بیارید که به احتمال زیاد Express هست ( همراه VS نسخه Express نصب میشه )
3- روی سیستم مشتری شما باید Express رو نصب کنید ، نیاز به Managment Studio نیست . این موضوع رو موکول کنید به نرم افزار های Setup ساز .
4- متاسفانه Linq کار نکردم . و در گوگل سرچ کنید
123169
این SQL من.

الان من کانکشنی که دارم روی Express سیستم مشتری جواب میده یا باید تغییر بدم؟(چطور چون ویرایش نمیشه!)
(چون من اکسپرس رو سیستمم ندارم و با اکسپرس VS هم دارم کار نمیکنم. این داره با Management کار میکنه)

میشه لینکی برای دانلود Express بدین؟
اینجا (http://www.microsoft.com/en-us/download/details.aspx?id=29062) مایکروسافت free ارایه میده؟اگه آره کدوم نسخه رو باید دانلود کنم؟

خیلی ممنون که پاسخ میدین./

Yanehsar
یک شنبه 16 شهریور 1393, 18:19 عصر
به چه زبانی برنامه نویسی می کنید ؟ dbml چرا ؟

مگه App,conf ندارید ؟
سلام
مشکلی که بنده دارم هنوز چیزی که شما میگید رو تست نکردم تنها کانکشنی که در اختیار من هستش داخل فایل db.dbml هستش که برابر :(البته در linq)


Data Source=.;Initial Catalog=AcademyDB;Integrated Security=True

حالا باید داخل فایلApp,config چه تغییری بدم که دیتابیس رو بشناسه ؟؟؟؟


Server=.\SQLExpress;AttachDbFilename=" + Application.StartupPath + "\\db\\Anbar.mdf" + ";Database=Anbar;Integrated Security=True;Connect Timeout=30;User Instance=True

من با این کانکشنی که شما گفتیت برای ارتباط با اکسس مشکلی ندارم اما این رشته رو نمیشه داخل app.config ذخیره کرد.در ضمن روی سیستم مشتری sql express نصب کردم

NasimBamdad
یک شنبه 16 شهریور 1393, 20:59 عصر
123169
این SQL من.

الان من کانکشنی که دارم روی Express سیستم مشتری جواب میده یا باید تغییر بدم؟(چطور چون ویرایش نمیشه!)
(چون من اکسپرس رو سیستمم ندارم و با اکسپرس VS هم دارم کار نمیکنم. این داره با Management کار میکنه)

میشه لینکی برای دانلود Express بدین؟
اینجا (http://www.microsoft.com/en-us/download/details.aspx?id=29062) مایکروسافت free ارایه میده؟اگه آره کدوم نسخه رو باید دانلود کنم؟

خیلی ممنون که پاسخ میدین./

X86 (http://download.microsoft.com/download/3/9/A/39ABE28E-9A82-41FE-A923-AD52FDAD165C/SQLEXPR_x86_ENU.exe)
x64 (http://download.microsoft.com/download/3/9/A/39ABE28E-9A82-41FE-A923-AD52FDAD165C/SQLEXPR_x64_ENU.exe)

2012 خیلی زوده . Sql Server 2008 R2 Service Pack2 بهترین گزینه هست .

برای 2012 هم

ENU\x64\SQLEXPR_x64_ENU.exe این میشه 64 بیتی
ENU\x86\SQLEXPR_x86_ENU.exe اینم میشه 32 بیتی

NasimBamdad
یک شنبه 16 شهریور 1393, 21:00 عصر
سلام
مشکلی که بنده دارم هنوز چیزی که شما میگید رو تست نکردم تنها کانکشنی که در اختیار من هستش داخل فایل db.dbml هستش که برابر :(البته در linq)


Data Source=.;Initial Catalog=AcademyDB;Integrated Security=True

حالا باید داخل فایلApp,config چه تغییری بدم که دیتابیس رو بشناسه ؟؟؟؟


Server=.\SQLExpress;AttachDbFilename=" + Application.StartupPath + "\\db\\Anbar.mdf" + ";Database=Anbar;Integrated Security=True;Connect Timeout=30;User Instance=True

من با این کانکشنی که شما گفتیت برای ارتباط با اکسس مشکلی ندارم اما این رشته رو نمیشه داخل app.config ذخیره کرد.در ضمن روی سیستم مشتری sql express نصب کردم

اگه با Connection String تون مشکلی ندارید چرا می خوایید عوضش کنید

لینک زیر رو هم سر بزنید

http://www.connectionstrings.com/sql-server (http://www.connectionstrings.com/sql-server/)

Mojtaba0
یک شنبه 16 شهریور 1393, 22:05 عصر
کانکشن رو روی سیستم دیگه تست میکنم نتیجه رو اعلام میکنم./


خیلی ممنون از پاسخگویی شما./

NasimBamdad
یک شنبه 16 شهریور 1393, 22:24 عصر
ولی در کل اینو توجه کن که Managment Stduio یک ابزار از ابزار های SQL سرور هست . که مدیریت میکنه مثل یک Dashboard هست . یک Theme برای SQL که همه چیز از طریق کد نباشه

Mojtaba0
یک شنبه 16 شهریور 1393, 23:25 عصر
یعنی برای کارای کوچیک برنامه نویس میتونه برای راحتی کار از Managment Studio برای کاراش استفاده کنه و برای مشتری فقط Express رو نصب کنه؟ :متفکر:

NasimBamdad
دوشنبه 17 شهریور 1393, 08:03 صبح
یعنی برای کارای کوچیک برنامه نویس میتونه برای راحتی کار از Managment Studio برای کاراش استفاده کنه و برای مشتری فقط Express رو نصب کنه؟ :متفکر:


Microsoft SQL Server نسخه های مختلفی داره که بسته به حجم کار متفاوت هست .

این لیـــــــــــنک (http://msdn.microsoft.com/en-us/library/cc645993.aspx)رو نگاه کن تا ورژن های مختلف SQL رو ببینید

ورژن Enterprise , ورژن Express , ورژن Standard و... اینا ورژن و Edition های مختلف از SQL Server هستند که هر کدوم بسته به حجم دیتابیس و امکانات مورد نیاز ازشون استفاده میشه

Managment Studio یک ابزاری هست که برای هر کدوم از اینا میشه نصب کرد برای اینکه ابزار های مدیریتی قوی داشته باشی برای کنترل SQL Server . خود Managment Studio که Engine نیست عزیزم . یک ابزاری هست .

مثل خاصیت FIND در برنامه NotePad یا Word

Mojtaba0
دوشنبه 17 شهریور 1393, 13:51 عصر
آخه من همون Microsoft SQL Server Management Studio 2012 رو فقط نصب کردم(عکس Aboutش رو که بالا دادم) و تو کدنویسی و کانکشن و... مشکلی ندارم.

ضمنا اقدام به نصب Express کردم ولی گفت نیازی به نصب نیست.هنوز رو سیستم دیگه برنامه رو تست نکردم.

درمورد توضیحات شما کاملا متوجه هستم چی می فرمایید.بحث داشبورد و انجین و... .ولی انگار SQL مال من انجین داره که داره کار میکنه دیگه!

NasimBamdad
دوشنبه 17 شهریور 1393, 14:21 عصر
100 درصد که انجین داره . شما نرم افزار Microsoft SQL Server Managment Studio 2012 رو باز کردی و به صفحه About رفتی . این مثل این هست که شما Microsoft Office Word 2012 رو باز کنید و به صفحه About بری . اسم کامل برات نوشته

شما از Microsoft SQL Server Express Edition 2012 داری استفاده می کنید و ابزار مدیریت شما Microsoft SQL Server Managment Studio 2012 می باشد .

امیدوارم مطب رو خوب رسونده باشم .

Mojtaba0
دوشنبه 17 شهریور 1393, 18:42 عصر
100 درصد که انجین داره . شما نرم افزار Microsoft SQL Server Managment Studio 2012 رو باز کردی و به صفحه About رفتی . این مثل این هست که شما Microsoft Office Word 2012 رو باز کنید و به صفحه About بری . اسم کامل برات نوشته

شما از Microsoft SQL Server Express Edition 2012 داری استفاده می کنید و ابزار مدیریت شما Microsoft SQL Server Managment Studio 2012 می باشد .

امیدوارم مطب رو خوب رسونده باشم .

بسیار عالی./

Mojtaba0
سه شنبه 18 شهریور 1393, 02:07 صبح
از طریق کانکشن استرینگ زیر که از طریق ویزارد ایجاد شده:توجه>> LocalDB)\v11.0)

Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirec tory|\dbTell.mdf;Integrated Security=True;Connect Timeout=30

و نصب نسخه 2012 SqlLocaLDB_x86 که حجمی کمتر از 30مگ داره برنامرو رو ویندوز مجازی تست کردم و براحتی سرچ و حذف و ویرایش و اضافه هم صورت میگیره.(Linq)
روی ویندوز هیچ برنامه دیگری هم نصب نیست. 7-32بیتی

نصب SQL Express که بیش از 100مگ هست چه مزیتی داره نسبت به SqlLocaLDB زیر 30مگی برای نصب رو سیستم مشتری ؟

NasimBamdad
سه شنبه 18 شهریور 1393, 07:44 صبح
http://blogs.msdn.com/b/jerrynixon/archive/2012/02/26/sql-express-v-localdb-v-sql-compact-edition.aspx
http://blogs.msdn.com/b/sqlexpress/archive/2011/07/12/introducing-localdb-a-better-sql-express.aspx