PDA

View Full Version : سوال: نصب برنامه تحت شبكه بدون نصب كل Sql server



MAHDIACTION
دوشنبه 30 خرداد 1390, 16:23 عصر
سلام دوستان يه برنامه تحت شبكه نوشتم مي خواستم بدون نصب كل Sql Server 2008 روي سرور فقط با نصب چند تا سرويس كاركنه.منتظر پيشنهادهاي شما هستم.؟

Mani_rf
دوشنبه 30 خرداد 1390, 20:39 عصر
SQL Server Express برای همین ساخته شده :متفکر:

MAHDIACTION
دوشنبه 30 خرداد 1390, 23:06 عصر
SQL Server Express برای همین ساخته شده :متفکر:

شرمنده شايد من منظورم رو درست بيان نكردم.

شرح مسئله:
در حال حاضر من Sql server 2008(كامل) رو بعد از گذشت مدت زماني روي سيستم سرور نصب مي كنم و Client ها رو با تنظيم Connection String به سرور وصل مي كنم.

ابهامات
با Express كار كردم ،و پروژه هاي متعددي داشتم.ولي سوال اينجاست كه توي سرور اگه بانكي رو Attach كنم ، وضعيت Connection String براي سيستم هاي ديگه چطوري مي شه تاجايي كه اطلاع دارم Express براي كار با فايل در سيستم تكي مناسب است.

خواسته
مي خواستم Sql server 2008 رو كامل نصب نكنم مثل چند تا Service حياتيشو تو Setup برنامه ام قرار مي دادم.بانكم رو Attach مي كردم يه Connection string خروجي مي دادم و روي Clientها Set مي كردم.

دوستان لطفا كمي بيشتر توضيح بديد

gol.mohsen
سه شنبه 31 خرداد 1390, 16:45 عصر
سلام
دوست عزیز بجای اینکه نام سرور رو بدی از آی پی سرور در کانکشن استرینگ استفاده کن. مثلا : 192.168.1.5\SqlExpress
ServerIP + '\' + SQLEXPRESS

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

saeid.memfis
سه شنبه 31 خرداد 1390, 19:20 عصر
سلام دوست من

فکر می کنم غیر از نصب اس کیو ال راهی نداری

ولی من برای برنامه شبکه ای که نوشته بودم این کار رو می کردم.
یه تابع نوشتم که اتصال به سرور رو چک میکنه
اگر برقرار بود که وصل می شد...
اگه نه یک فرم باز می شد و اطلاعات زیر رو می گرفت:
1-نام سرور(اسم کامپیوتر سرور)
2-نام بانک اطلاعاتی
3-یوزر اتصال به بانک (مانند sa)
4-پسورد اتصال به بانک

بعد از این اینها رو تو یه فایل ذخیره می که باز تا وقتی که به دلایل زیر به سرور وصل نشه و دوباره اون فرم باز میشه:

1-سرور خاموش باشه یا اصلا نباشه
2-بانک اطلاعاتی در سرور اتچ نباشه یا اسمش عوض شده باشه
3-یوزر بانک یا پسوردش عوض شده باشه

اگه به دردت می خوره اینو بزارم ؟

MAHDIACTION
سه شنبه 31 خرداد 1390, 23:28 عصر
سلام مجدد
آقا محسن از شما خيلي ممنونم.
آقا سعيد خيلي ازت ممنونم وقت گذاشتيد نظر داديد .
آقا ماني از شما هم همينطور ،اصلا فكرشو نمي كردم كه با Sql Express بشه اينكارو كرد.

قابل توجه دوستان ديگر كه دنبال چنين موضوعي هستند.
بايد يه پورت رو براي Sql express توي Firewall تعريف كنند.
همون پورت رو بايد به Sql express Configuration هم بشناسونند ،تنظيم Tcp/ip sql express.
در نهايت تنظيم Connection String

totti_acmilan17
سه شنبه 07 تیر 1390, 20:03 عصر
با توجه به راهنمایی های دوستان برنامه تحت ویندوز من شبکه شد ولی یه مشکل دیگه دارم اونم اینکه مثلا وقتی یک رکوردی رو اپدیت میکنم از یک سیستم تو شبکه در سیستم های دیگه اعمال نمیشه مگر اینکه برنامه رو در اون سیستم ها دوباره اجرا کنم لطفا راهنمایی کنید. vb.net 2005 and sql 2000
یعنی میخام وقتی یک رکورد رو که در گرید ویو در حال نمایش هست ویرایش میکنم در آن واحد تو سیستم دیگه گرید ویو ان هم تغییرات رو نشون بده و نیازی به بستن و باز کردن برنامه نداشته باشه ممنون

bnnoor
سه شنبه 07 تیر 1390, 20:40 عصر
با توجه به راهنمایی های دوستان برنامه تحت ویندوز من شبکه شد ولی یه مشکل دیگه دارم اونم اینکه مثلا وقتی یک رکوردی رو اپدیت میکنم از یک سیستم تو شبکه در سیستم های دیگه اعمال نمیشه مگر اینکه برنامه رو در اون سیستم ها دوباره اجرا کنم لطفا راهنمایی کنید. vb.net 2005 and sql 2000
یعنی میخام وقتی یک رکورد رو که در گرید ویو در حال نمایش هست ویرایش میکنم در آن واحد تو سیستم دیگه گرید ویو ان هم تغییرات رو نشون بده و نیازی به بستن و باز کردن برنامه نداشته باشه ممنون

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

ebraham
شنبه 05 شهریور 1390, 10:21 صبح
سلام totti_acmilan17 . برنامه منم تحت شبكه داخلي هستش . اما نميدونم چه جوري بايد روي سرور و روي كلاينتها نصبش كنم . ميشه قدم به قدم منو راهنمايي كنيد . ممنون ميشم . من با اس كيو ال سرور 2008 برنامه را ست كردم نه با اسپرس. و كانكشن استرينگ را هم يكي گذاشتم در فرم لاگين كه يكبار اسم سرور را از كاربر مي پرسد و يوزر نيم و پسورد مي خواهد و اگه اين 3 مورد درست بود كانكت ميشه . و نام سرور را در يك فايل ذخيره مي كنه و دفعات بعد ديگه نميپرسه مگه نام سرور عوض شه . تا اينجا درست كار كردم ؟ حالا از اينجا به بعد را نميدونم بايد چيكار واسه نصب و راه اندازيش تو شبكه بكنم. ممون ميشم دوستان راهنمايي كنند.

vaezhasan
شنبه 22 بهمن 1390, 00:46 صبح
سلام مجدد
آقا محسن از شما خيلي ممنونم.
آقا سعيد خيلي ازت ممنونم وقت گذاشتيد نظر داديد .
آقا ماني از شما هم همينطور ،اصلا فكرشو نمي كردم كه با Sql Express بشه اينكارو كرد.

قابل توجه دوستان ديگر كه دنبال چنين موضوعي هستند.
بايد يه پورت رو براي Sql express توي Firewall تعريف كنند.
همون پورت رو بايد به Sql express Configuration هم بشناسونند ،تنظيم Tcp/ip sql express.
در نهايت تنظيم Connection String

سلام دوست عزيز.
من يه برنامه سنگين مديريت اطلاعات براي يك شركت نوشتم كه شامل بخش هاي مختلفي هست.
من همين مشكل شما را دارم و چون ديتابيسم روي sql server 2008 هست بايد روي تمام كلاينت ها sql server 2008 را نصب كنم. اگه ممكنه تلفنتو به اين آدرس ايميل كنيد تا باهاتون تماس بگيرم. الان يكساله كه دارم روي اين موضوع كار مي كنم كه فقط با نصب برنامه ايم كاربران بتونن بدون نصب اس كيو ال به كامپيوتر سرور وصل بشن.
دوستان عزيز درصورتي كه اين مشكل رو حل كنم سورس كامل و آموزش كاملشو رو در اختيار همه قرار ميدم.
ايميل من : hasanvaez@gmail.com
اگر كسي پيشنهادي داره لطفاً راهنمائي كنه.

swallow.pa
شنبه 22 بهمن 1390, 09:19 صبح
سلام دوست عزيز.
من يه برنامه سنگين مديريت اطلاعات براي يك شركت نوشتم كه شامل بخش هاي مختلفي هست.
من همين مشكل شما را دارم و چون ديتابيسم روي sql server 2008 هست بايد روي تمام كلاينت ها sql server 2008 را نصب كنم. الان يكساله كه دارم روي اين موضوع كار مي كنم كه فقط با نصب برنامه ايم كاربران بتونن بدون نصب اس كيو ال به كامپيوتر سرور وصل بشن.
ايميل من : hasanvaez@gmail.com
اگر كسي پيشنهادي داره لطفاً راهنمائي كنه.
اتفاقا این یک معظلیه که من هم باهاش روبرو شدم من توی دلفی دیدم این کار رو انجام بدن احتمالا شما فایل exe رو توی کلاینتها دارید کپی می کنید در صورتی که می تونید یک شورت کات از فایل exe نرم افزار روی کلاینتها داشته باشید نمی دونم اونو انجام دادید یا نه اما اگه فایل exe رو توی کلاینتها کپی کردید باید کانکشن استرینگ رو بر مبنای سرور قرار بدید بعد برای کلاینتها یک express که فقط انجین اون باشه و محیط منجمنت رو نداشته باشه نصب کنین
در هر صورت بهترین راه شورت کاته رو اون کار کنید که می شه یا نه

shadi khanum
شنبه 22 بهمن 1390, 10:23 صبح
شما میتونی سرویس SQL رو فقط روی سرورتون نصب کنید و برای بقیه کلاینتها فقط Exe برنامه رو کپی کنید و یه صفحه تنظیمات دیتابیس اول برنامه (قبل از صفحه لاگین)بذارید که کلاینت IP و سایر مشخصات دیتابیسی که روی سرور هست رو یه بار وارد کنه و از روی اون بصورت داینامیک connectionString رو بسازید و همه کلاینتها با اون کامکشن استرینگ به دیتابیس سرور وصل میشن و نیازی به نصب هیچ چیزی از SQL روی کلاینتها نیست..
موفق باشی

swallow.pa
شنبه 22 بهمن 1390, 10:42 صبح
شما میتونی سرویس SQL رو فقط روی سرورتون نصب کنید و برای بقیه کلاینتها فقط Exe برنامه رو کپی کنید و یه صفحه تنظیمات دیتابیس اول برنامه (قبل از صفحه لاگین)بذارید که کلاینت IP و سایر مشخصات دیتابیسی که روی سرور هست رو یه بار وارد کنه و از روی اون بصورت داینامیک connectionString رو بسازید و همه کلاینتها با اون کامکشن استرینگ به دیتابیس سرور وصل میشن و نیازی به نصب هیچ چیزی از SQL روی کلاینتها نیست..
موفق باشی
با این توضیحاتی که شما دادید sql server فقط رو سرور نصب میشه و کلاینتها فقط فایل exe دارن که با اون کانکشن استرینگی که سرور رو میشناسه وصل می شن به
پایگاه داده و کلاینتها هم هیچگونه sql server ندارن و لی چون از بعضی محیط وی بی استفاده می کنن باید ابزار .net framework یا کریستال ریپورت و ... رو نصب کنن آیا درست متوجه شدم

shadi khanum
شنبه 22 بهمن 1390, 20:42 عصر
با این توضیحاتی که شما دادید sql server فقط رو سرور نصب میشه و کلاینتها فقط فایل exe دارن که با اون کانکشن استرینگی که سرور رو میشناسه وصل می شن به
پایگاه داده و کلاینتها هم هیچگونه sql server ندارن و لی چون از بعضی محیط وی بی استفاده می کنن باید ابزار .net framework یا کریستال ریپورت و ... رو نصب کنن آیا درست متوجه شدم
دقیقا دوست من.. به همین راحتی.. کلاینت ها فقط exe برنامه و .NetFrameWork متناسب با exe رو میخوان و نه چیز دیگه ...