PDA

View Full Version : الحاق سرویس های sql server به سورس برنامه



mohammad59mt
شنبه 04 اردیبهشت 1389, 10:01 صبح
سلام
من یک برنامه نوشتم که توی اون از sql استفاده می کنم. وقتی می خواهم برنامه را روی یک کامپیوتر که sql روی اون نصب نیست اجرا کنم Error می ده .
می خواستم ببینم راه حلی وجود داره که بدون نصب sql روی کامپیوتر میزبان از برنامه استفاده کنم.

mehdi.mousavi
شنبه 04 اردیبهشت 1389, 14:15 عصر
سلام من یک برنامه نوشتم که توی اون از sql استفاده می کنم. وقتی می خواهم برنامه را روی یک کامپیوتر که sql روی اون نصب نیست اجرا کنم Error می ده. می خواستم ببینم راه حلی وجود داره که بدون نصب sql روی کامپیوتر میزبان از برنامه استفاده کنم.

سلام.
البته که راهی وجود نداره، مگر اینکه توی Connection String خودتون، یه Instance از SQL Server دیگه رو روی شبکه آدرس کنید. در غیر اینصورت، باید بالاخره SQL Server ای نصب باشه که ...

موفق باشید.

پاورقی: عین این میمونه که کاربر بدون نیاز به نصب برنامه شما، بخواد با برنامه شما کار کنه. آیا این چنین چیزی میسر هستش؟

JohnSmith
شنبه 04 اردیبهشت 1389, 15:38 عصر
راه حل ديگر استفاده از SQLite به جاي SQL Server مي باشد.

FastCode
شنبه 04 اردیبهشت 1389, 16:34 عصر
راه حل ديگر استفاده از SQLite به جاي SQL Server مي باشد.

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

r00tkit
شنبه 04 اردیبهشت 1389, 17:53 عصر
حد اقل میگفتی mySql که توی شبکه هم کار کنه.


Using SQLite on a Network (http://www.sqlite.org/cvstrac/wiki?p=SqliteNetwork):تشویق:


پی نوشت:
اقا Sqlite رو دوست بدار تا همه تو رو دوست داشته باشن (چه بی ربط بود:چشمک:)

mf_007
شنبه 04 اردیبهشت 1389, 18:17 عصر
من برای ساخت بانکم از نسخه استاندارد استفاده می کنم می تونم تو سیستم مشتری express نصب کنم و از اون استفاده کنم؟مشکلی پیش نمی آد؟
connection string داخل برنامه رو چه چوری عوض کنم؟

r00tkit
شنبه 04 اردیبهشت 1389, 18:24 عصر
احتمالا" فرق نکنه درست نمی دونم ولی خودت با virtual box امتحان کن یا صبر کن من امتحان کنم

راستی چرا از همون sqlite استفاده نمی کنی؟؟؟

mf_007
شنبه 04 اردیبهشت 1389, 19:10 عصر
اینکه sqlite بعضی چیزارو پشتیبانی نمی کنه درسته؟ مثلا sp ها اگر اینطور باشه ازش استفاده نکنیم بهتره که
و اینکه به نظر شما تو سیستم مشتری کدوم نسخه نصب بشه بهتره؟
express خوبه؟

FastCode
شنبه 04 اردیبهشت 1389, 20:08 عصر
Using SQLite on a Network (http://www.sqlite.org/cvstrac/wiki?p=SqliteNetwork):تشویق:


پی نوشت:
اقا Sqlite رو دوست بدار تا همه تو رو دوست داشته باشن (چه بی ربط بود:چشمک:)

من چند روز پیش یه مطلب توی همون سایت خوندم که استفاده از SqLite در شبکه رو به شدت نهی میکرد.

FastCode
شنبه 04 اردیبهشت 1389, 20:15 عصر
اینکه sqlite بعضی چیزارو پشتیبانی نمی کنه درسته؟ مثلا sp ها اگر اینطور باشه ازش استفاده نکنیم بهتره که
و اینکه به نظر شما تو سیستم مشتری کدوم نسخه نصب بشه بهتره؟
express خوبه؟

اگر میخواهید یه برنامه خوب بنویسید باید برنامهای بنویسید که بتونه cross-database باشه و بدین منظور باید از حد اقل امکانات استفاده کنید.
البته هیچوقت بهترین بهره از کمترین امکانات رو فراموش نکنید.

در ضمن اگر یه DAL خوب داشته باشید(99% برنامه ها ندارند) میتونید با توجه به نوع database بهترین دستور رو اجرا کنید.
به طور مثال به این بخش از یک code-generator نگاه کنید:

#if SQLite
W(ref n, st, " _Max_" + dc.ColumnName + " = (" + dc.DataType.FullName + ")Convert.ToInt64(CommandExecution.ExecuteScalar(\"Select seq from sqlite_sequence where name = '" + dt.TableName + "'\")) - 1;");
#endif
#if SQLServer
W(ref n, st, " _Max_" + dc.ColumnName + " = (" + dc.DataType.FullName + ")Convert.ToInt64(CommandExecution.ExecuteScalar(\"Select ISNULL(IDENT_CURRENT('" + dt.TableName + "'), 0)\"));");
W(ref n, st, " if(_Max_" + dc.ColumnName + " == 0)");
W(ref n, st, " _Max_" + dc.ColumnName + " = (" + dc.DataType.FullName + ")Convert.ToInt64(CommandExecution.ExecuteScalar(\"Select ISNULL(Max(dbo.[" + dt.TableName + "].[" + dc.ColumnName + "]), 0) from dbo.[" + dt.TableName + "]\"));");
#endif