ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی “ ورود به حساب” کلیک کنید.





اگر فرم ثبت نام برای شما نمایش داده نمیشود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمیشود، اینجا را کلیک کنید.





نمایش نتایج: از 1 به 2 از 2
Like Tree1Likes
  • 1 Post By vistacali

موضوع: آموزش اتصال به پایگاه داده SQL Server

  1. #1
    adminmsp
    مدیر کل و موسس سایت
    تاریخ عضویت
    1970 Jan
    محل سکونت
    M.S.P Soft
    نوشته ها
    1,589
    759
    429

    آموزش اتصال به پایگاه داده SQL Server

    اگر شما تا بحال برنامه هایی مثل دفترتلفن را تولید کرده اید که اطلاعاتی را ذخیره و یا استخراج میکند حتما برای ساخت آن دیتابیس خاصی را بکار برده اید. پس حتما اطلاع خواهید داشت که صرفا جهت ایجاد یک ارتباط ساده برای یک زیر عمل درج،حذف یا ویرایش، می بایست با یک سری دستورات که در اکثر موارد نیز شبیه بهم اند را در کنار یکدیگر قرار داده و تنظیمات مورد نظر را بر روی پایگاه داده اعمال کنید.
    اما معمولا در برنامه هایی از این قبیل که نیاز دارند پی در پی با پایگاه داده ارتباط برقرار کنند، بایستی برای عملیات مربوط به اتصالات آن به دیتابیس اندیشه ای اتخاذ نمود. زیرا نمیتوان برای هر ریزعمل یک شیء SqlConnection تعریف کرد و سپس Command مربوطه ایجاد کرده و ... . این روش بشدت خوانایی برنامه را کاهش داده و حجم آن را افزایش می دهد. از طرفی یک مشکل اساسی بدنبال خواهد داشت و آن اینکه، این وسط مدیریت اتصالات در اینجا جایگاهی نخواهد داشت! بعنوان مثال با استفاده از روش مذکور نمی توان تضمین کرد کاربری که مجوز درج ندارد، نخواهد توانست عملیات مربوط به درج را اعمال کند!

    تلاش برای حل مشکلات ذکر شده از یک طرف و از طرفی دیگر سعی بر توسعه شی گرایی و ایجاد مفهوم لایه ای در نرم افزار ها باعث شده تا برنامه نویسان از معماری لایه ای بهره ببرند.
    ما نیز در این پست با ارائه یه روش اصولی برای پیاده سازی اتصال پایگاه داده و علاوه بر آن با یک مثال ساده، نحوه برقراری ارتباط با دیتابیس بصورت لایه ای را مورد بحث قرار میدهیم.



    برای شروع کار یک کلاس به پروژه تان اضافه کنید. و نام آنرا بشکل زیر وارد کنید:

    حال بر روی کلاس ایجاد شده دوبار کلیک کنید تا صفحه مربوط به کد آن ظاهر شود:


    دوستان در گام نخست توجه داشته باشد که بایستی سه عنصر حیاتی کلاس را برای کلاسمان تعریف کنیم:

    SQLConnectionString:
    هر نوع اتصال به پایگاه داده نیاز به یک رشته اتصال دارد. این رشته تعدادی پارامتر دارد که از طریق آن DBMS تشخیص خواد داد که شما قصد اتصال به کدام پایگاه داده و با کدام کاربر را دارید. این رشته معمولا در طول برنامه ثابت است پس مقدار آنرا در تابع سازنده کلاس بصورت دستی مقدار دهی می کنیم. البته میتوان طوری طراحی کرد تا پارامتر های آن بوسیله کاربر مقداردهی شود که ما در این مثال از آن صرف نظر کرده ایم.
    SQLConnectionObj:
    یک شی از کلاس SQLConnection ایجاد میکنیم. این شی در کلیه ارتباطات، کلاساستفاده خواهد شد.
    SQLCommandObj:
    یک شی از کلاس SQLCommand تعریف می کنیم. برای هر اتصال نیاز به یک SQLCommand خواهیم داشت که از این شی استفاده میکنیم.

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

    1. Select (جستجو) :
      ما معمولا بای استخراج اطلاعات، گزارشگیری و یا جتسجوی آرتیکل خاصی از دستور SQL بنام Select استفاده می کنیم. گذشته از ماهیت و شکل کلی این دستور، میدانیم که همیشه خروجی ان دستور یک جدول است. پی برای ذخیره خروجی آن باید جائی داشته باشیم.
      بدین منظور یک شی از کلاس DataTable بنام dt تعریف می کنیم. سپس برای اجرای دستور Select و ذخیره خروجی آن در dt از متد Fill در شی موجود از کلاس SqlDataAdapter استفاده می کنیم:



    2. عملیات درج-حذف-ویرایش (Delete-Update-Insert) :
      عملیات درج،حذف و ویرایش معمولا خروجی ندارند و یک رکورد به جدول خاصی اضافه یا حذف می کنند. البته گاهی ممکن است بخواهیم یک مقدار برگشتی هم داشته باشیم (مثلا برگرداندن مقدار ID اضافه شده به جدول که خصوصیت autonumber دارد ) که بای اینکار بجای استفاده از متد ExecuteNonQuery از متد ExecuteScalar استفاده می کنیم.





      در نهایت کلاس را ذخیره می کنیم و کار تمام است. حال چنانچه بخواهیم یک دستور به DBMS ارسال کنیم کافی است یک شی از کلاس SqlServerDBMS ساخته و تابع ExecuteSQL یا ExecuteSelectSQL را فراخوانی کنیم:


    کد برنامه :
    using System;

    using System.Collections.Generic;

    using System.Linq;

    using System.Text;

    using System.Data;

    using System.Data.SqlClient;



    namespace Taxi_Ajency.Control

    {



    public class SQLServerDBMS

    {

    SqlConnection SQLConnectionObj =new SqlConnection();

    SqlCommand SQLCommandobj =new SqlCommand();

    string SQLConnectionString =

    "Data Source=ADLAVARA-104353;"

    +"Initial Catalog=Taxi;"

    +"Integrated Security=True";



    public SQLServerDBMS()

    {

    SQLConnectionObj = newSqlConnection(SQLConnectionString);

    SQLCommandobj.Connection = SQLConnectionObj;

    }



    public SQLServerDBMS(paramsSqlParameter[] parametrs)

    {

    SQLConnectionObj = newSqlConnection(SQLConnectionString);

    SQLCommandobj.Connection = SQLConnectionObj;

    foreach (SqlParameter parametr in parametrs)

    {

    SQLCommandobj.Parameters.Add(parametr);

    }

    }



    public void ExecuteSQL(String strSQL)

    {

    SQLCommandobj.CommandText = strSQL;

    SQLConnectionObj.Open();

    SQLCommandobj.ExecuteNonQuery();

    SQLConnectionObj.Close();

    }



    public DataTable ExecuteSelectSQL(String strSQL)

    {

    DataTable dt = newDataTable();

    SqlDataAdapter sda = new SqlDataAdapter();

    sda.SelectCommand = new SqlCommand();

    sda.SelectCommand.Connection = SQLConnectionObj;

    sda.SelectCommand.CommandText = strSQL;

    sda.Fill(dt);

    SQLConnectionObj.Close();

    return dt;

    }



    }

    }
    با M.S.P Soft به دنياي برنامه نويسي وارد شويد[برای نمایش لینک باید عضو شوید. ]
  2. #2
    vistacali
    كاربر عادي
    تاریخ عضویت
    2013 Jan
    نوشته ها
    4
    0
    5
    سلام دو تا لینک میزارم اموزش تصویری هست البته اگر مدیر حذف نکنه


    [برای نمایش لینک باید عضو شوید. ]

    [برای نمایش لینک باید عضو شوید. ]
    fbi likes this.
  3. 3
نمایش نتایج: از 1 به 2 از 2

اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

کلمات کلیدی این موضوع

مجوز های ارسال و ویرایش

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

Content Relevant URLs by vBSEO 3.6.0 RC 2