نمایش نتایج 1 تا 4 از 4

نام تاپیک: اتصال پایگاه در setup

  1. #1

    Question اتصال پایگاه در setup

    سلام بچه ها
    الان که این تایپیکو مینویسم واقعا درموندم
    من په یه برنامه با vs 2008و sqlserver 2008 ساختم(نه express یا پایگاه vs).
    حالا دارم براش setup میسازم.
    متاسفانه فقط رو سیستم خودم کار میکنه.
    با ساخت setupو آوردن برنامه های کمکی از جملهSQL EXPRESS مشکلی ندارم ولی وقتی برنامم رو سیستم دیگه اجرا میشه مشکل اتصال به پایگاه داده داره.
    بعد کلی سرچ دیدم اکثرا از پایگاه داده خود VS که EXPRESS هست استفاده میکنن ومشکل چندانی ندارن...
    من باید چیکار کنم برای اینکه مشکل اتصال برام پیش نیاد؟؟؟
    لطفا کامل برام شرح بدید ،چون از یکی دو تا تایپیک نمونه که مشکل منو داشتن نتیجه ای نگرفتم!

  2. #2

    نقل قول: اتصال پایگاه در setup

    دوست عزيز شما بايد قبل از استفاده از پايگاه داده در برنامه خودتان به خصوص در سيستم ديگر آنرا اتچ كنيد . يعني بعد از نصب sql express و برنامه خودتان رشته كانكشن خود را طوري تنظيم كنيد كه در اولين اتصال خود پايگاه داده تان را به سرور اتچ نمايد . اگر سرچ كنيد تاپيك هاي زيادي رو تو همين سايت پيدا ميكنيد باز هم اگر لازم بود بگين نمونه كدبراتون بزارم

  3. #3

    نقل قول: اتصال پایگاه در setup

    سلام ممنون که پاسخ دادید .
    من تا کنون با EXPRESS کار نکردم یعنی فایلهای mdfو.. رو باید تو درایوی که sqlEXPRESSS هست pastکنم؟؟؟

  4. #4

    نقل قول: اتصال پایگاه در setup

    نخير دوست عزيز مفهمو attach ماسواي مفهوم كپي و پيست مي باشد . نمونه كدي براتون ميزارم البته فقط رشته كانكشن رو بقيه تنظيمات رو فكر كنم خودتان بلد باشيد
    من خودم در برنامه ام كد زير را بكار برده ام و كار هم كرده است ابتدا به كمك رشته زير بررسي ميكنم ببينم فايل من قبلا اتچ شده است يا نه:


    string ConStr ="Data Source=.\sqlexpress;Initial Catalog=master;Integrated Security=True";
    SqlConnection con = newSqlConnection(ConStr);

    string CmdStr = "select * from sysdatabases where name='" + FileName + "'";
    SqlCommand com = newSqlCommand(CmdStr, con);

    try
    {
    con.Open();
    }
    catch
    {
    returnfalse;
    }
    if (com.ExecuteScalar()==null)
    returnfalse;
    else
    returntrue;

    اين را در يك كلاس قرار داده بودم و filename هم كه در بالا به آن اشاره شده نام پايگاه داده ما هست مثل atabase1.mdf

    خوب تو خود برنامه هم تعريف كردم :


    if (!func1("database1.mdf"))
    {
    Connection_String_Final = "Server = .\sqlexpress; AttachDbFilename= database1.mdf; database =database1.mdf; ";

    }
    else
    {
    Connection_String_Final = "Server = .\sqlexpress ; Initial Catalog= database1.mdf ";
    }


    كه بعد با استفاده از كانكشن استرينگ ايجاد شده يك متغير كانكشن تعريف كرده و اجرا ميكردم . در اين حالت برنامه بعد از نصب براي اجراي بار اول اگر در سيستمي كه نصب ميگردد sqlexpress نصب باشد فايل را اتچ مبكند و براي اجراي هاي بعدي فقط با سرور ارتباط برقرار ميكند و بر روي فاسل تنظيم ميشود.
    لازم به ذكر است sqlexpress نسخه اي از sql server هستش فرقي با اون نميكنه البته تو امكانات و محدوديتها حتما كه فرق داره ولي طرز ارتباط با اون فرقي نميكنه . اگر در جملاتم اشتباهي باشه اساتيد فن اميدوارم منو ببخشن و البته ارشاد نمايند

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •