1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tiểu luận môn lập trình cơ sở dữ liệu GIỚI THIỆU VỀ LINQ to SQL căn bản

28 1,4K 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 28
Dung lượng 520,74 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

LINQ là thư viện mở rộng cho các ngôn ngữ lập trình C# và Visual Basic.NET có thể mở rộng cho các ngôn ngữ khác cung cấp khả năng truy vấn trực tiếp dữ liệu Object, CSDL Quan Hệ và XML.L

Trang 1

LINQ to SQL

căn bản

Võ Minh Thiện - Mssv: 09520665 Đinh Đức Thành - Mssv: 09520646

Trang 2

Để giảm gánh nặng thao tác trên nhiều ngôn ngữ khác nhau và cải thiện năng suất lập trình, Microsoft đã phát triển giải pháp tích hợp dữ liệu cho NET Framework có tên gọi là LINQ (Language Integrated Query).

TÌM HIỂU CÔNG NGHỆ

LINQ

Trang 3

LINQ là thư viện mở rộng cho các ngôn ngữ lập trình C# và Visual Basic.NET (có thể mở rộng cho các ngôn ngữ khác) cung cấp khả năng truy vấn trực tiếp dữ liệu Object, CSDL Quan Hệ và XML.

LINQ là một tập hợp các thành phần mở rộng cho phép viết các câu truy vấn dữ liệu ngay trong một ngôn ngữ lập trình, như C# hoặc VB.NET

ĐỊNH NGHĨA LINQ:

Trang 4

ƯU ĐIỂM:

SQL có cú pháp rất khác với những ngôn ngữ lập trình phổ dụng như C#

và VB.NET.

=> Do vậy bạn phải nhọc công “ hàn gắn ” hai thực thể khác biệt này với

nhau trong mỗi dự án phần mềm.

LINQ ra đời để giảm gánh nặng thao tác “hàn gắn” trên nhiều ngôn ngữ khác nhau.

Thứ I: Giảm gánh nặng thao tác

ThứII: Hỗ trợ nhiều kiễu dữ liệu:

Một vấn đề khác với SQL là nó chỉ dùng để truy vấn dữ liệu trong các CSDL dạng quan hệ Nếu muốn truy cập dữ liệu XML hay dạng khác (như trang

HTML, email…), bạn lại phải sử dụng cú pháp truy vấn khác (XPath/XQuery) Cách giải quyết vấn đề tốt nhất hiện nay là LINQ

Trang 5

ThứIII: Thống nhất về cú pháp

Cung cấp 1 cú pháp chung cho truy vấn dữ liệu từ nhiều

nguồn khác nhau

Với LINQ nó sẽ cung cấp cách duy nhất để truy cập dữ liệu

từ bất kể nguồn dữ liệu nào với cú pháp giống nhau

Ngoài ra, cung cấp cách viết dễ dàng cho việc đọc và

phân tích Trường hợp này sẽ được thể hiện rõ ràng khi

chúng ta cần lọc những dữ liệu với nhiều điều kiện phân cấp khác nhau thì LINQ sẽ thể hiện rõ tính ưu việt của mình

LINQ cũng cung cấp những bộ lọc, sắp xếp thứ tự, nhóm

dữ liệu với khối lượng code tối thiểu nhưng vẫn bảo đảm

tính rõ ràng

Trang 6

LINQ có từ bản NET 3.5, vậy nên tối thiểu chương trình của bạn phải chạy trên nền tảng này.

Visual Studio 2008, hoặc các phiên bản Express

của nó là các bộ công cụ phát triển tiêu biểu cho

ứng dụng dùng LINQ

Yêu cầu để sử dụng LINQ:

Trang 7

Nhắc lại : ADO.NET là công nghệ cho phép các ứng

dụng có thể kết nối và làm việc với các loại CSDL khác

nhau (truy vấn, cập nhật, thêm, xóa, gọi thủ tục…)

Bản thân LINQ không phải là một công nghệ được tạo ra để thay thế ADO.NET, bạn có thể làm việc với LINQ mà không dính gì đến CSDL

ADO.net và LINQ

LINQ to SQL, là một phần mở rộng của LINQ, cho phép

bạn có thể làm việc được với CSDL SQL Server, trong trường

hợp này thì khi viết bạn có thể bỏ qua các câu lệnh ADO.NET

mà chỉ quan tâm tới cú pháp mà LINQ cung cấp

Nhớ rằng dù bạn không hề dùng đến ADO.NET khi viết

chương trình sử dụng LINQ to SQL, nhưng đằng sau nó,

ADO.NET vẫn được dùng để thực hiện kết nối, gửi các câu

lệnh, các lời gọi thủ tục …

Một điểm cần chú ý:

Trang 9

Tất cả các biểu thức LINQ làm việc theo ba thao tác :

1 Có được các dữ liệu nguồn

2 Tạo các truy vấn

3 Thực hiện các truy vấn

Truy vấn trong LINQ

Một câu truy vấn là một biêu thức gọi ra dữ liệu từ dữ liệu nguồn

Câu truy vấn thường nói rõ trong ngôn ngữ truy vấn dữ liệu được thiết kế cho mục dích riêng

BA PHẦN CỦA MỘT BIỂU THỨC LINQ

Trang 10

Ba phần của một biểu thức LINQ

Trang 11

• Chức năng của mô hình ORM

1 Tạo ra một mô hình đối tượng trong một ứng dụng để

ánh xạ các đối tượng trong một cơ sở dữ liệu

2 Tạo ra một mảng kiểu rõ ràng DataContext được sử

dụng để gửi và nhận dữ liệu giữa các lớp thực thể và cơ

sở dữ liệu

3 Cung cấp tính năng cho việc ánh xạ các thủ tục lưu trữ

và các hàm để thực hiện các phương thức trong

DataContext trả về dữ liệu

4 Cung cấp khả năng thiết kế, thừa kế các mối quan hệ

giữa các lớp thực thể

Mô hình ORM:

Trang 12

• Thiết kế ORM (Object Relational Mapping)

LINQ TO SQL

Trang 13

• Chức năng chính : LINQ to SQL giúp chuyển đổi các truy vấn đã

tích hợp ngôn ngữ trong mô hình đối tượng và chuyển chúng vào

cơ sở dữ liệu để xử lý Khi có kết quả, LINQ to SQL chuyển chúng trở lại các đối tượng mà bạn đang lập trình bằng ngôn ngữ của bạn.

• Ngoài ra, bạn có thể pha trộn mã LINQ to SQL với các ứng dụng

ADO.NET sẵn có và chuyển các giải pháp ADO.NET cho LINQ to SQL vì nó là một phần của ADO.NET và được cung cấp dịch vụ

bởi nhà cung cấp ADO.NET.

LINQ to SQL là một phiên bản hiện thực hóa của O/RM (object relational mapping) có bên trong NET Framework bản “Orcas” (nay

là NET 3.5)

Linq to SQL là gì?

Trang 14

Thao tác với Linq

• Để thao tác với LinQ trước hết chúng ta phải khai báo

một intance của DataContext

• Có thể nói DataContext chính là điểm bắt đầu và cốt lõi

để làm việc với Linq

• DataContext chính là môi trường quản lí các đối tượng sau

khi được mapping và đảm nhiêm việc giao tiếp với csdl của chúng ta

Tùy vào tên gọi mà bạn đặt cho file dbml mà chung ta có tên DataContext tương ứng

Vd: Nếu đặt tên file là demo => DataContext sẽ được tự động đặt tên là demoDataContext

Lưu ý: Đây là tên do máy tự đặt, bạn có thể tùy chình lại theo

ý mình bằng cách vào Properties của DataContext

Trang 15

Truy vấn dữ liệu:

Sau khi đã có được môt intance của DataContext thì ta bắt đầu thực

hiện các thao tác với csdl.

Tương tự như SQL , chúng ta cũng phải viết các câu lệnh truy

vấn , nhưng cú pháp truy vấn của Linq có nhiều điểm khác

so với SQL bởi đang truy vấn trên tập các Object

Cú pháp

From tên dại diện in dc.tập Object trong datacontext

Where điều kiện lọc

Order by sắp xếp

Select tên đại diện

(hoặc Select new {

thực hiện việc gán các alias cho tên các cột nếu có yêu cầu.})

Nếu đặt intance của datacontext là dc thì ta có cấu trúc như sau

Trang 17

Cập nhật dữ liệu:

Linq cung cấp cho các bạn một cách thức đơn giản thông qua việc tương tác với các Object từ đó cập nhật vào csdl thông qua DataContext

Hàm InsertOnSubmit(object) them 1 object vao danh sách các object đã có

Hàm SubmitChanges() của DataContext thực hiện việc cập nhật dữ liệu từ cac object vào csdl

Thêm

Trang 18

Cập nhật

Hàm SubmitChanges() của DataContext thực hiện việc cập

nhật dữ liệu từ các object vào csdl

Linq hỗ trợ truy cập đến 1 object thuộc một Entity thông qua giá trị của các thuộc tính bằng hàm Single cùng với cú pháp lamda đơn giản Như ví dụ bên dưới

Trang 20

Hướng Dẫn Demo

1.Tạo một file demo.dbml để bắt đầu sử dụng Linq to SQL

2.Sử dụng Linq to SQL để truy vấn, thêm,

xóa, sửa dữ liệu

3.Kiểm tra dữ liệu với partial class.

Trang 21

Thêm mới một file dbml đặt tên là demo.dbml

Trang 22

File demo.dbml sau khi tao trong project của chúng ta.

Trang 23

Kết nối với csdl thông qua Server Explorer, kéo từng bảng trong thư mục Table vào giao diện thiết kế của file demo.dbml Làm xong các thao tác trên, bạn có mô hình như sau.

Trang 24

Code cho phần truy vấn dữ liệu.

Trang 25

Code cho phần truy vấn dữ liệu với điều kiện.

Trang 26

Code cho phần thêm và cập nhật dữ liệu.

Trang 27

Code cho phần xóa dữ liệu.

Trang 28

Tạo partial class để kiểm tra dữ liệu đầu vào.

Ngày đăng: 05/04/2015, 23:42

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w