PDA

View Full Version : سوال: انتشار نرم افزار های ساخته شده توسط سی شارپ و استفاده از مای اس کیو ال



armsoftpc
یک شنبه 27 آذر 1390, 23:09 عصر
به نام خدا با سلام به همه ی دوستان من برنامه ای رو با سی شارپ ساختم که از پایگاه داده مای اس کیو ال بهره می برد ، در ارتباط برقرار کردن مشکل ندارم اما همین که نرم افزار مای اس کیو ال رو می بندم ، دیگر برنامه ای که با سی شارپ ساخته شده ، ارتباطش قطع میشود. اگر این گونه باشد ، زمانی که نرم افزار را انتشار میدهیم ، کاربر برای استفاده از نرم افزار باید همیشه نرم افزار ومپش ( شممل مای اس کیو و دیگر پلاگین ها ...) باید نصب و باز باشد، که با این کار هیچ از نرم افزار استفاده نخواهد کرد. راه حل این مشکل چیست که بتوانیم بدون نیاز به نرم فزار مای اس کیو ال ( هنگام انتشار) از پایگاه داده استفاده کنیم. تاکید من بر مای اس کیو ال نه اس کیو ال سرور! (تازه خود sql server را نیز بلد نیستم بدون باز بودن از پایگاه داده استفاده کنم. جواب این سوال برای من خیلی مهم است. با تشکر!

armsoftpc
چهارشنبه 30 آذر 1390, 22:14 عصر
به نام خدا
با سلام
یعنی هیچ کسی نمی خواد به سوال من پاسخ بدهد!!!

afshines
چهارشنبه 30 آذر 1390, 22:29 عصر
فکر نکنم بتونی جور دیگه ای با mysql ارتباط برقرار کنی mysql تحت شبکه است دیگه sqlite استفاده کنی برای برنامه های تک کاربره ویندوزی عالیه

armsoftpc
پنج شنبه 01 دی 1390, 17:50 عصر
به نام خدا
با سلام
عیبی نداره ، حالا فکر کنید می خواهید با هر دیتابیس دیگر مثل sqlserver یا sqllite و... این کار را انجام دهید ، چگونه کار می کند، وقتی دیتابیس باز نیست ، روی سیستم کاربر که نرم افزار sqllite or sqlserver نصب نیست.
پس این همه نرم افزار که بدون باز بودن دیتابیس به آن وصل می شوند (انگار که ساختار و داده های دیتابیس هر دو در فایل ها ذخیره است.) انجام می گیرد.
لطفا توضیح کامل دهید و اگر آموزشی دارید قرار دهید.
استادان و مدیران انجمن که عمریست با سی شارپ کار می کنند ، لطفا به این سوال پاسخ دهند.:لبخند:
موفق باشید.

armsoftpc
پنج شنبه 22 دی 1390, 16:53 عصر
به نام خدا با سلام به همه ی دوستان دوستان بزرگوار 22 روز گذشت اما هنوز هیچ جوابی برای سوالم دریافت نکردم!!! اگر منظور سوالم را متوجه نمی شوید ، بگید بیش تر و حتی با عکس و فیلم توضیح خواهم داد. خواهشا از مدیران این انجمن ، آقای مداح ، آقای موسوی و دیگر دوستان که در این زمینه مهارت دارند به این سوال پاسخ دهند. در ضمن اصلا مهم نیست که دیتابیس مای اس کیو ال باشد یا sqlserver یا هر دیتابیس دیگر که مانند این ها روی وب نیز کار می کند.

gwbasic
پنج شنبه 22 دی 1390, 18:02 عصر
سلام دوست عزیز
شما از هر RDBMS ای استفاده کنید یک قسمت Engine اون هست که مدیریت کار با database‌رو برعهده می گیره و به شما سرویس می ده و یک قسمت ابزار هست که برای راحتی کار با database ساخته شده مثل Sql Server Management Studio
مثلا شما با Sqlserver کار می کنید آیا حتما ابزاری که بالا اشاره کردم باید باز باشد؟ خیر اصلا نیازی به اون نیست بلکه این سرویس SQL هست که باید در حال اجرا باشد (لازم به ذکر هست که حتی خود این ابزار هم برای ارتباط با DataBase ها از سرویس SQL استفاده می کند) اگر سرویس را Stop کنید حتی اون ابزار هم کار نمی کند.
بنابراین شما باید بررسی کنید Engine مربوط به MySQL چطوری نصب می شه و سرویس اون چطوری فعال می شه!

amir-aa
پنج شنبه 22 دی 1390, 18:39 عصر
من فکر میکنم منظور ایشون ست شدن اتوماتیک دیتابیس روی سروره.آره؟؟؟آخه بدون ست شدن رو سرور که اصلا امکان پذیر نیست
یک همچین کاری که شما میگی .........شاید کار با اکسس مشکلت رو حل کنه.به نظر من خیلی امکانات خوبی هم داره....تازه میتونی تحت شبکه هم استفاده کنی البته با تکنیک های ویژه امنیتش هم تامین میشه.

armsoftpc
جمعه 23 دی 1390, 17:45 عصر
به نام خدا
با سلام
دوستان بزرگوار منظور من رو شما متوجه نشدید، بزار یه مثال بزنم:
شما فرض کنید من یک برنامه ی کتابخانه ساخته ام ، که این رو میدمش به شما و شما می خواهید اسم و مشخصات کتاب ها را درون وارد کنید (که هر کدوم از کتاب ها با مشخصاتشون درون یک فیلد از یک جدول مشخص در پایگاه داده ، حالا هر چی میخواد باشه به جز اکسس ذخیره می شود) و هر وقت خواستی بتونی به کتاب ها درسترسی داشته باشی، این هایی که شما از من خواستید بدون هیچ مشکلی درون سیستم خودم کار میکند ، چون مثلا نرم افزار sqlserver روی کامپیوتر من نصب و باز است ، اما وقتی من این نرم افزار رو میدم به شما، شما که دیگه نرم افزار sqlserver روی سیستمت نصب نیست ، پس بنابراین وقتی می خواهی اطلاعات رو وارد کنی ، دیتابیسی وجود ندارد که شما بخواهی این کار رو انجام بدی ، پس با ارور بر می خوری!!!
حالا من چیکار کنم ، که دیتابیس هم هنگام دادن برنامه به شما ، دیتابیس نیز همراه آن باشد، تا به این مشکل بر نخورید و اگر شما این نرم افزار رو به کس دیگری دادید ، چون دیتابیسش همراهش است ، اطلاعات ثبت شده ی شما برای آن کس قابل رویت است.
فکر کنم واضح توضیح دادم و ابهامی در صبحتتام نبود، کاری به mysql هم ندارم ، شما این کار را با همون sqlserver توضیح بدید.

Mahmoud Zaad
جمعه 23 دی 1390, 18:16 عصر
سلام
آقای gwbasic جواب شما رو دادن، شما باید به هر حال engine مربوطه رو نصب کنید. برای sqlserver به این صورته که زمانیکه ستاپ می سازی میای از محل مشخص شده، sql server رو هم تیک می زنی مثلا به همراه دات نت فریمورک و بقیه فایل ها، تا زمان نصب، این موارد هم نصب بشن یعنی باید sql server روی سیستم مقصد نصب باشه حالا برای mysql هم باید همین کار و کنی یعنی engine مورد نظر رو در سیستم مقصد نصب کنی.

armsoftpc
شنبه 24 دی 1390, 19:51 عصر
به نام خدا
با سلام
sqlserver حجمش 3 گیگ ، بابای کامپیوتر طرف در میاد که!!!:کف:
البته اگر sqlserver را براش نصب کنه، من دقیقا نمی دونم منظور شما از engine آن چیست؟! خوب حالا فرض می کنیم وقتی طرف نرم افزار را نصب کرد و به درستی کار کرد و اطلاعات را در آن وارد نمود ، خواست به کس دیگری بدهد ، آنوقت اطلاعات جا به جا نمی شوند که؟!:متفکر:
آیا امکان دارد نرم افزار ما یک پسوند از دیتابیس بسازد مثل .grd بعد این فایل .grd را پس از نصب نرم افزار وارد کامپیوتر طرف می کنیم و بعد همانند نرم افزار ورد که فایل های docx را باز می کند ، نرم افزار ما فایل هایی با پسوند .grd را باز کنند.
یا یه روش دیگر ، اصلا به جایی که از نرم افزار ستاپ بسازیم آن را به صورت پرتابل در آوریم و اطلاعات با آن جا به جا شوند ، مثل فایل های نرم افزار اکسس!
یه سوال engine mysql را باید از کجا تهیه کنیم ، من خودم برای استفاده از mysql از مجموعه نرم افزار ومپ که php و سایر برنامه هایش استفاده می کنم، شما جایی برای دانلود engine آن می شناسید؟

Mahmoud Zaad
شنبه 24 دی 1390, 21:59 عصر
سلام
نه دوست عزیز نیازی به نصب نسخه کامل sql server نیست. در اینجا یک نسخه sql server express edition برای نصب نیاز هست که حجمش حدود 36 مگابایته. آسیبی هم در اون حد!!!! که فرمودید به کامپیوتر طرف وارد نمیشه. اگه هم قرار باشه فایل دیتابیس رو به کس دیگری بده بازم باید اون طرف هم این نسخه sql server رو نصب کنه الی آخر!
در مورد پسوند: اگه دیتابیس شما فایلهایی مثل تکست و ایکس ام ال و اکسس باشه میشه از این کارا کرد ولی با بانک sql فکر نمی کنم.
در مورد فایل های اکسس هم نمی دونم منظورت چیه ولی تا زمانی که روی کامپیوتری مجموعه آفیس نصب نباشه (که یکی از نرم افزارهاش اکسسه) باز هم برنامه کار نمی کنه. ولی چون معمولا اکثر کامپیوترها این مجموعه رو نصب دارن زیاد مشکلی پیش نمی آد.
آخری رو هم نمی دونم.
ولی در کل باز هم تحقیق کن.

armsoftpc
یک شنبه 06 فروردین 1391, 20:28 عصر
اگر دوستان دیگر هم راهنمایی کنند ، ممنون می شویم.

cpppro
یک شنبه 06 فروردین 1391, 21:12 عصر
سلام
بهتره اگه برنامتون کم حجم هست از sqlite استفاده کنین.حجمش کلا بیشتر از یک مگ نمیشه و نیازی به نصب هم نداره.ولی اگه برنامتون سنگین هست و یا اینکه با وب سروکار دارین همون sql بهتره.
http://www.sqlite.org/
http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki
من معمولا از Sqlite استفاده میکنم و راضی هستم.

aghayex
یک شنبه 06 فروردین 1391, 23:57 عصر
دوست عزیز اگه حجم اطلاعاتی که می خواهید در دیتابیس ذخیره بشه بالاست برای اینکه بعدا به مشکل کندی سرعت برنخورید مجبور هستید از دیتابیس هایی استفاده کنید که مدیریت می شن مثل اس کیو ال و اوراکل و ...
اما اگه حجم اطلاعاتتون خیلی بالا نیست می تونید از دیتابیس هایی استفاده کنید که نیاز به مدیر ندارن و کارو راحت می کنن مثل اکسس , اس کیو ال کامپکت و ...
این دیگه به شما و حجم اطلاعاتتون بستگی داره .
حالا شما حجم داده هاتون بالا بود و اومدید از اس کیو ال استفاده کردید خوب با یه نرم افزار نصب خوب و تمیز کار کردن شما به راحتی می تونید برنامتونو به همراه اس کیو ال نصب کنید بدون اینکه کاربر معلوماتی داشته باشه که این بحث هم باز به شما بستگی داره

asadegha
دوشنبه 07 فروردین 1391, 01:51 صبح
موقع ساخت setup یه قسمتی هست که نیازمندی های برنامه رو ازت میپرسه. اونجا میتونی بگی که قبل از نصب برنامه اول بیاد انجین sql رو نصب کنه. بعد خود برنامه رو.

armsoftpc
جمعه 18 فروردین 1391, 17:09 عصر
به نام خدا
با سلام و تشکر از همه ی دوستان

موقع ساخت setup یه قسمتی هست که نیازمندی های برنامه رو ازت میپرسه. اونجا میتونی بگی که قبل از نصب برنامه اول بیاد انجین sql رو نصب کنه. بعد خود برنامه رو.
آیا شما تا به حال این کار رو انجام داده اید، انجین mysql رو از کجا گیر بیارم و ضمیمه کنم.
حالا فرض کنید که این رو هم کردم (منظور این نیست که جواب سوال بالا را میدونم) ، نرم افزار چگونه با انجین وصل شده و اصلا اطلاعات انجین کجا ذخیره می شوند ، (منظور فایلی که mysql برای ذخیره جدول هایش می سازد ، در کجا قرار دارد ، آیا در همان جایی که برنامه نصب می شود قرار دارد ، اگر این طور نیست چه کار کنیم که در پوشه ی نصب شده ی خود برنامه قرار گیرد تا دسترسی به آن آسان تر باشد.


بهتره اگه برنامتون کم حجم هست از sqlite استفاده کنین.حجمش کلا بیشتر از یک مگ نمیشه و نیازی به نصب هم نداره
اگر میشه بیش تر در موردش توضیح بدید ، اما در کل من می خوام که از mysql استفاده کنم ، چون دومین از لحاظ قدرت دومین دیتابیس دنیاست و قادر به ذخیره اطلاعات زیاد می باشد.


حالا شما حجم داده هاتون بالا بود و اومدید از اس کیو ال استفاده کردید خوب با یه نرم افزار نصب خوب و تمیز کار کردن شما به راحتی می تونید برنامتونو به همراه اس کیو ال نصب کنید بدون اینکه کاربر معلوماتی داشته باشه که این بحث هم باز به شما بستگی داره
تقریبا هیچ چیزی از گفته هاتون رو متوجه نشدم.

موفق باشید.

armsoftpc
شنبه 26 فروردین 1391, 16:03 عصر
منتظریم...

armsoftpc
یک شنبه 27 فروردین 1391, 23:36 عصر
مُردم....:کف::اشتباه::عصبانی++:

armsoftpc
دوشنبه 04 اردیبهشت 1391, 23:57 عصر
بیایید جسدم را دفن کنید ، دیگر روحم است که پست می زند....:ناراحت::عصبانی::شیطان:

armsoftpc
دوشنبه 29 خرداد 1391, 18:29 عصر
به نام خدا
و با سلام
تقریبا نزدیک به 6 ماه از پرسیدن این سوال می گذرد ، اما هیچ کس جواب درست حسابی (با توضیح کامل روش کار) نداده است، واقعا این قسمت از انجمن این همه مدیر و استاد برنامه نویسی دارد ، آن وقت از جواب دادن به این سوال عاجز اند؟
واقعا دیگه نمیدونم ، چی بگم.
به هر حال از همتون ، ممنون و متشکرم.
در پناه خدا موفق باشید.

Mahmoud Zaad
سه شنبه 30 خرداد 1391, 09:04 صبح
به نام خدا
با سلام و تشکر از همه ی دوستان

آیا شما تا به حال این کار رو انجام داده اید، انجین mysql رو از کجا گیر بیارم و ضمیمه کنم.
حالا فرض کنید که این رو هم کردم (منظور این نیست که جواب سوال بالا را میدونم) ، نرم افزار چگونه با انجین وصل شده و اصلا اطلاعات انجین کجا ذخیره می شوند ، (منظور فایلی که mysql برای ذخیره جدول هایش می سازد ، در کجا قرار دارد ، آیا در همان جایی که برنامه نصب می شود قرار دارد ، اگر این طور نیست چه کار کنیم که در پوشه ی نصب شده ی خود برنامه قرار گیرد تا دسترسی به آن آسان تر باشد.

موفق باشید.

سلام
دوست عزیز، احتمالا بتونید اطلاعاتی که لازم دارید را در سایت MySql (http://dev.mysql.com/) به دست بیارید. بخش دانلود سایت (http://dev.mysql.com/downloads/) رو هم ملاحظه کنید. برای اضافه کردن فایل مورد نظر به قسمت Prerequisites و ساخت ستاپ هم می تونید این تاپیک (http://barnamenevis.org/showthread.php?340800-تغییر-دانت-3.5-به-3-یا-4) رو ببینید. اینجا (http://stackoverflow.com/questions/4969169/deploy-mysql-server-with-visualstudio-2005-application)هم این سوال مطرح شده، نصب پلاگین MySql در ویژوال استودیو هم اینجا (http://dev.mysql.com/doc/refman/5.0/es/connector-vstudio-install.html)و اینجا (http://fengnet.com/book/MySQL.5.0.Manual/ch24s03.html)توضیح داده شده.
این پیش نیازها(مثلا sql اکسپرس و کریستال ریپورت و ...) تا جایی که می دونم به صورت پیش فرض در درایو ویندوز نصب میشن نه در پوشه برنامه.