پی سی سیتی

پی سی سیتی (http://p30city.net/index.php)
-   زبان های برنامه نویسی Programming (http://p30city.net/forumdisplay.php?f=12)
-   -   نحوه اتصال به پایگاه داده و اجرای فرامین sql در دات نت (http://p30city.net/showthread.php?t=5425)

دانه کولانه 08-16-2008 02:37 AM

نحوه اتصال به پایگاه داده و اجرای فرامین sql در دات نت
 
نحوه اتصال به پایگاه داده و اجرای فرامین sql در دات نت


(asp.net(c#), sql server)


بسمه تعالی
در این مقاله می خواهم نحوه اتصال به پایگاه داده SQL SERVER و اجرای دستورات sql را شرح بدهم. برای این کار یک مثال عملی را دنبال می کنیم.
کلاس های زیر برای کار با پایگاه داده مورد نیاز است :
  • SqlConnection : از این کلاس برای اتصال به پایگاه داده استفاده می شود.
  • SqlCommand : از این کلاس برای اجرای دستورات sql مانند select, insert, update, delete و اجرای stored procedure ها استفاده می شود.
  • DataTable : با اجرای دستور select توسط SqlCommand، یک آرایه ای از سطر و ستون ها تولید می شود که برای ذخیره کردن آن، از این کلاس استفاده می شود.
  • SqlDataAdapter : برای خواندن اطلاعات از پایگاه داده و ذخیره آن در DataTable از این کلاس استفاده می شود. این کلاس کاربردهای دیگری نیز دارد.
ابتدا یک صفحه aspx مانند زیر بسازید
کد:

<body>
                                          <form                        id="form1" runat="server">
                                              <div style="direction:                            rtl;">
                                                                          <div>
                                                      <asp:Label runat="server"                        ID="lblMessage"                        />
                                                                          </div>
                                                                          <div>
                                                      <asp:GridView runat="server" ID="gvNames">
                                                      </asp:GridView>
                                                                          </div>
                                                                          <div>
                                                      <asp:TextBox runat="server" ID="txtName"                        Text=""                              />
                                                      &nbsp;&nbsp;&nbsp;
                                                      <asp:Button runat="server"                        ID="btnAdd" Text="افزودن" OnClick="btnAdd_Click"                                            />
                                                                          </div>
                                              </div>
                                          </form>
               
                                              </body>

سپس یک database به نام SampleDb بسازید و در آن جدول Names را ایجاد کنید. این جدول دارای یک فیلد id از نوع int و Identity و یک فیلد به نام name و از نوع nvarchar(50) می باشد. برای ایجاد این جدول، کد زیر را در Management Studio یا Query ****yzer اجرا کنید. SET ANSI_NULLS ON GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Names](
[id] [int] IDENTITY(1,1) NOT NULL,
[name] [nvarchar](50) NOT NULL,
CONSTRAINT [PK_Names] PRIMARY KEY CLUSTERED
(
[id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]



اتصال به پایگاه داده :
برای اتصال به پایگاه داده از کلاس SqlConnection استفاده می کنیم. این کلاس یک ویژگی مهم به نام ConnectionString دارد که مشخصات سرور، نام پایگاه داده، نام کاربری، کلمه عبور و خلاصه همه اطلاعات مورد نیاز برای وصل شدن به پایگاه داده باید در آن تعریف شود. برای کسب اطلاعات بیشتر در مورد این ویژگی به msdn و همچنین سایت www.connectionstrings.com مراجعه نمایید.
private readonly string cs = "server=.;Initial Catalog=SampleDb;Integrated Security=SSPI;Persist Security Info=False;";
خواندن اطلاعات از پایگاه داده :
تابع RebindNames با استفاده از پروسیجر Names_GetAll همه رکورد های جدول Names را می خواند و نمایش می دهد :
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[Names_GetAll]
AS
BEGIN

SELECT * FROM [Names] ORDER BY id;

END

private readonly string cs = "server=.;Initial Catalog=SampleDb;Integrated Security=SSPI;Persist Security Info=False;";

private void RebindNames()
{
using (SqlConnection cnx = new SqlConnection(cs))
{
using (SqlDataAdapter adapter = new SqlDataAdapter("Names_GetAll", cnx))
{
using (DataTable dt = new DataTable())
{

منبع prdev.com


اکنون ساعت 08:59 AM برپایه ساعت جهانی (GMT - گرینویچ) +3.5 می باشد.

Powered by vBulletin® Version 3.8.4 Copyright , Jelsoft Enterprices مدیریت توسط کورش نعلینی
استفاده از مطالب پی سی سیتی بدون ذکر منبع هم پیگرد قانونی ندارد!! (این دیگه به انصاف خودتونه !!)
(اگر مطلبی از شما در سایت ما بدون ذکر نامتان استفاده شده مارا خبر کنید تا آنرا اصلاح کنیم)