Đăng ký Đăng nhập
Trang chủ Giải pháp quản trị cơ sở dữ liệu bán hàng bằng sql server tại công ty tnhh indo ...

Tài liệu Giải pháp quản trị cơ sở dữ liệu bán hàng bằng sql server tại công ty tnhh indo fonder

.PDF
68
93
60

Mô tả:

LỜI CẢM ƠN Với vốn kiến thức tích lũy được trong thời gian học tập dưới mái trường Đại Học Thương Mại thân yêu, nhờ sự giảng dạy nhiệt tình của các thầy cô giáo, cùng với những kiến thức thực tế thu được trong quá trình thực tập tại Công ty TNHH Indo Fonder, em đã hoàn thành được khóa luận tốt nghiệp “Giải pháp quản trị cơ sở dữ liệu bán hàng bằng SQL Server tại Công ty TNHH Indo Fonder” này. Lời đầu tiên, em xin chân thành cảm ơn cô giáo ThS. Hàn Minh Phương đã hướng dẫn tận tình, chỉ bảo em trong suốt thời gian thực hiện đề tài để em có thể hoàn thành Khóa luận tốt nghiệp. Em xin gửi lòng biết ơn sâu sắc đến toàn thể thầy cô giáo trong trường Đại Học Thương Mại và đặc biệt là các thầy cô giáo trong khoa Hệ Thống Thông Tin Kinh Tế và Thương Mại Điện Tử đã giảng dạy và truyền đạt cho em những kiến thức bổ ích trong bốn năm vừa qua. Em cũng xin gửi lời cảm ơn chân thành đến quý Công ty TNHH Indo Fonder, Ban lãnh đạo công ty cùng toàn thể nhân viên trong công ty đã tạo điều kiện cho em tìm hiểu, nghiên cứu trong suốt quá trình thực tập tại công ty. Mặc dù đã cố gắng hoàn thành khóa luận với tất cả sự nổ lực của bản thân, nhưng Khóa luận vẫn còn nhiều hạn chế không tránh khỏi những thiếu sót. Kính mong nhận được sự chỉ bảo và giúp đỡ của quý thầy cô và các bạn để bài làm ngày một hoàn thiện hơn. Em xin chân thành cảm ơn! MỤC LỤC LỜI CẢM ƠN...........................................................................................................i MỤC LỤC................................................................................................................ ii DANH MỤC TỪ VIẾT TẮT.................................................................................iv DANH MỤC BẢNG BIỂU, SƠ ĐỒ, HÌNH VẼ....................................................v PHẦN 1: MỞ ĐẦU..................................................................................................1 1. Lý do chọn đề tài nghiên cứu.............................................................................1 2. Mục tiêu nghiên cứu đề tài.................................................................................2 3. Phạm vi nghiên cứu.............................................................................................2 4. Phương pháp nghiên cứu đề tài.........................................................................2 5. Nội dung khóa luận tốt nghiệp.........................................................................3 PHẦN 2: NỘI DUNG..............................................................................................4 CHƯƠNG 1: CƠ SỞ LÝ LUẬN CỦA VẤN ĐỀ NGHIÊN CỨU........................4 1.1. Những khái niệm cơ bản...................................................................................4 1.1.1. Khái niệm chung...........................................................................................4 1.1.2. Khái niệm liên quan trực tiếp tới vấn đề nghiên cứu...................................7 1.2. Một số cơ sở lý luận về giải pháp quản trị cơ sở dữ liệu bán hàng bằng SQL Server tại Công ty TNHH Indo Fonder...............................................................10 1.2.1. Kiểu dữ liệu trong SQL Server....................................................................10 1.2.2. Ràng buộc trong SQL Server......................................................................12 1.2.3. Tổng quan về Microsoft SQL Server 2008..................................................13 1.3. Tổng quan về tình hình nghiên cứu...............................................................17 1.3.1. Tình hình nghiên cứu ngoài nước..............................................................17 1.3.2. Tình hình nghiên cứu trong nước..............................................................17 Chương 2: PHÂN TÍCH, ĐÁNH GIÁ THỰC TRẠNG VẤN ĐỀ NGHIÊN CỨU ……………………......................................................................................19 2.1. Tổng quan về doanh nghiệp và tình hình hoạt động kinh doanh của doanh nghiệp……….........................................................................................................19 2.1.1. Quá trình thành lập.....................................................................................19 2.1.2. Cơ cấu tổ chức.............................................................................................20 2.1.3. Lĩnh vực hoạt động.....................................................................................22 2.1.4. Kết quả hoạt động kinh doanh trong 3 năm gần đây.................................22 2.2. Thực trạng vấn đề nghiên cứu.......................................................................23 2.2.1. Phân tích thực trạng vấn đề nghiên cứu....................................................23 2.2.2. Đánh giá......................................................................................................29 Chương 3: GIẢI PHÁP QUẢN TRỊ CƠ SỞ DỮ LIỆU BÁN HÀNG BẰNG SQL SERVER TẠI CÔNG TY TNHH INDO FONDER...................................30 3.1. Bài toán quản trị cơ sở dữ liệu bán hàng tại công ty TNHH Indo Fonder. 30 3.1.1. Mô tả bài toán..............................................................................................30 3.1.2. Xác định yêu cầu.........................................................................................31 3.2. Phân tích cơ sở dữ liệu bán hàng...................................................................32 3.2.1. Xác định các thực thể..................................................................................32 3.2.2. Xác định mối quan hệ.................................................................................32 3.2.3. Xác định thuộc tính cho tập thực thể..........................................................32 3.2.4. Xác định mối liên kết giữa các thực thể.....................................................32 3.2.5. Xây dựng mô hình ER dựa trên các tập thực thể.......................................33 3.2.6. Xây dựng mô hình quan hệ.........................................................................33 3.3. Cài đặt.............................................................................................................. 34 3.3.1. Kiểu dữ liệu của các thuộc tính trong bảng...............................................34 3.3.2. Nhập dữ liệu mẫu và thử nghiệm...............................................................35 3.3.3. Chạy thử các truy vấn và minh họa............................................................38 3.4. Thực hiện các thao tác quản trị.....................................................................40 3.4.1. Thêm thuộc tính cho bảng..........................................................................40 3.4.2. Tạo View......................................................................................................41 3.4.3. Tạo chỉ mục Index.......................................................................................44 3.4.4. Tạo thủ tục...................................................................................................45 3.4.5. Tạo trigger...................................................................................................47 3.4.6. Tạo và phân quyền người dùng..................................................................49 3.4.7. Toàn vẹn dữ liệu..........................................................................................50 3.4.8. Sao lưu và khôi phục dữ liệu......................................................................51 3.5. Đánh giá...........................................................................................................53 3.5.1. Ưu điểm.......................................................................................................53 3.5.2. Nhược điểm.................................................................................................53 3.6. Đánh giá tính khả thi......................................................................................54 3.7. Kiến nghị..........................................................................................................54 KẾT LUẬN DANH SÁCH TÀI LIỆU THAM KHẢO PHỤ LỤC DANH MỤC TỪ VIẾT TẮT STT 1 2 3 4 5 Từ viết tắt Nghĩa tiếng Việt CNTT CSDL HTTT TNHH TMĐT Công nghệ thông tin Cơ sở dữ liệu Hệ thống thông tin Trách nhiệm hữu hạn Thương mại điện tử Nghĩa tiếng Anh DANH MỤC BẢNG BIỂU, SƠ ĐỒ,HÌNH VẼ S Hình 2.1. Kết nối nhiều ứng dụng trên một máy tính với SQL Server.....................14 Hình 1.2. Mô hình mạng SQL-Server......................................................................15 Hình 1.3. Sơ đồ kết nối cơ sở dữ liệu trên một Desktop..........................................15 Hình 1.4. Mô hình kết nối ứng dụng.....................................................................16Y PHẦN 1: MỞ ĐẦU 1. Lý do chọn đề tài nghiên cứu Trong cuộc sống ngày nay, CNTT đã không còn quá mới mẻ đối với con người. Trải qua từng thời kì thì CNTT lại mang tính đột phá mới, thay thế những chiếc máy tính cồng kềnh là những chiếc laptop gọn nhẹ hay những dòng điện thoại thông minh, ... Không những thế, sự ảnh hưởng mạnh mẽ của mạng xã hội tới hoạt động sản xuất kinh doanh đòi hỏi doanh nghiệp có khối lượng thông tin, dữ liệu lưu trữ để đáp ứng nhu cầu sản xuất kinh doanh ngày càng phát triển của mình kèm theo đó là sự hỗ trợ đắc lực trong việc ra quyết của Ban Giám đốc. Chính vì thế, một hệ cơ sở dữ liệu hoàn thiện sẽ giúp cho con người có được những thông tin chính xác nhất và trong thời gian ngắn nhất. Hoạt động bán hàng là hoạt động hết dức quan trọng vì nó quyết định trực tiếp tới khách hàng, mang lại doanh thu chủ yếu trong doanh nghiệp. Hiện nay, các công ty lớn đang sử dụng rất nhiều hệ quản trị CSDL khác nhau như Access, My SQL, Oracle… Đặc điểm của các hệ quản trị là trích rút và lưu trữ thông tin từ cơ sở dữ liệu của công ty. Vì vậy, để hệ thống cơ sở dữ liệu của công ty được quản lý và hoạt động phát triển tốt hơn thì quản trị CSDL bán hàng là việc rất cần thiết, bắt buộc phải đầu tư. Công ty TNHH Indo Fonder được thành lập từ 2013, sau 4 năm đi vào hoạt động công ty đã đạt được những bước tiến rất nhanh và có chỗ đứng vững chắc trong thị trường phân phối thiết bị xây dựng trong thị trường khu vực Hà Nội nói chung và thị trường huyện Chương Mỹ nói riêng. Qua các năm thì doanh số và lợi nhuận của công ty đều tăng, đem lại niềm tin cho các thành viên trong công ty. Qua quá trình hình thành và phát triển thì công ty cũng ngày càng quan tâm hơn đến ứng dụng công nghệ thông tin vào việc giải quyết công việc của mình. Tuy nhiên, qua thời gian thực tập tại công ty em nhận thấy công ty có nhiều bất cập trong việc quản trị CSDL bán hàng của công ty. Điều này đòi hỏi công ty phải có giải pháp quản trị cơ sở dữ liệu bán hàng thích hợp nhất. Do hoạt động kinh doanh của công ty ngày càng mở rộng, các thông tin về hóa đơn, khách hàng, hoàng hóa ngày càng nhiều dẫn đễn sự hạn chế về việc lưu trữ và trích rút thông tin khó khăn. Do đó, để hạn chế những khó khăn trên, em đã lựa chọn đề tài khóa luận “Giải pháp quản trị cơ sở dữ liệu bán hàng bằng SQL Server tại Công ty TNHH Indo Fonder”. 2. Mục tiêu nghiên cứu đề tài Hệ thống hóa cơ sở lý luận về cơ sở dữ liệu, các mô hình cơ sở dữ liệu, cách thức quản trị cơ sở dữ liệu. Trên cơ sở nghiên cứu, phân tích thực trạng tình hình quản trị cơ sở dữ liệu bán hàng, cách thức tổ chức cơ sở dữ liệu, phân quyền sử dụng người quản trị CSDL, giải pháp quản trị cơ sở dữ liệu bán hàng bằng SQL Server tại công ty TNHH Indo Fonder. Từ đó đưa ra một số đề xuất, giải pháp để có thể tạo ra một hệ quản trị cơ sở dữ liệu bán hàng phù hợp và tối ưu mang tính thuận tiện nhất đối với hoạt động quản lý bán hàng, đem lại hiệu quả cao trong công việc. 3. Phạm vi nghiên cứu Đối tượng nghiên cứu: Cơ sở dữ liệu bán hàng tại công ty TNHH Indo Fonder. Phạm vi nghiên cứu: - Không gian: + Về mặt lý luận: Tiến hành nghiên cứu về dữ liệu, cơ sở dữ liệu bán hàng, quản trị CSDL bán hàng thông qua các tài liệu, các công trình nghiên cứu. + Về mặt thực tiễn: Đề tài nghiên cứu được đặt ra đó là quản trị CSDL bán hàng, thiết kế CSDL quản lý bán hàng, ứng dụng SQL Server trong quản trị CSDL bán hàng của doanh nghiệp. - Thời gian: đề tài sử dụng các số liệu liên quan của công ty các năm 2013, 2014 và 2015. Thời gian tiến hành nghiên cứu từ 20/2/2017 đến hết ngày 25/04/2017. 4. Phương pháp nghiên cứu đề tài Nghiên cứu tài liệu: Tài liệu của Công ty, tin tức trên các bài báo, tài liệu tham khảo và các giáo trình là nguồn cung cấp thông tin hữu ích, khá chính xác và đa dạng. Phỏng vấn trực tiếp: nhằm tìm kiếm thông tin sơ cấp chính xác và cụ thể nhất. Phương pháp này giúp tìm hiểu sâu và khai thác được tối đa những thông tin liên quan đến dữ liệu bán hàng và cung cấp dịch vụ của Công ty TNHH Indo Fonder. Quan sát thực tế: Phương pháp này cung cấp cái nhìn tổng quát về vấn đề cần nghiên cứu một cách thực tế nhất. Thống kê, so sánh đối chiếu: Bằng cách ghi chép lại thông tin từ điều tra trắc nghiệm, quan sát thực tế và phỏng vấn trực tiếp để đưa ra những đánh giá ban đầu, phương pháp này thực sự có hiệu quả khi việc thu thập thông tin là không dễ dàng. Phân tích, tổng hợp: Phương pháp này là bước cuối cùng trong việc thu thập thông tin, làm cho thông tin trở nên hữu ích và giá trị hơn. 5. Nội dung khóa luận tốt nghiệp Ngoài các mục lời cảm ơn, mục lục, danh mục bảng biểu, hình vẽ, tài liệu tham khảo và phụ lục, nội dung khóa luận được chia thành 3 phần chính: Phần 1: Mở đầu (Tổng quan về vấn đề nghiên cứu) Phần 2: Nội dung:  Chương 1: Cơ sở lý luận về giải pháp quản trị cơ sở dữ liệu bán hàng bằng SQL Server tại công ty trách nhiệm hữu hạn Indo Fonder  Chương 2: Phân tích, đánh giá thực trạng về quản trị cơ sở dữ liệu bán hàng tại công ty trách nhiệm hữu hạn Indo Fonder  Chương 3: Kết luận và đề xuất giải pháp quản trị cơ sở dữ liệu bán hàng bằng SQL Server tại công ty trách nhiệm hữu hạn Indo Fonder Phần 3: Kết luận PHẦN 2: NỘI DUNG CHƯƠNG 1: CƠ SỞ LÝ LUẬN CỦA VẤN ĐỀ NGHIÊN CỨU 1.1. Những khái niệm cơ bản 1.1.1. Khái niệm chung 1.1.1.1. Dữ liệu Trong máy tính, thuật ngữ dữ liệu được xem như là các đặc tính được biết đến mà có thể ghi lại và lưu trữ trên các thiết bị ghi nhớ của máy tính. Dữ liệu là những mô tả về sự vật, con người và sự kiện trong thế giới thực. Theo [1], Dữ liệu bao gồm các số, kí tự, văn bản, hình ảnh, đồ họa, âm thanh, đoạn phim,…có một giá trị nào đó đối với người sử dụng chúng và được lưu trữ, xử lý trong máy tính. Ví dụ: - Dữ liệu về khách: tên, địa chỉ, thẻ tín dụng - Dữ liệu về ô tô của khách: hãng xe, đời xe, năm sản xuất. - Dữ liệu về nhật ký sửa chữa: ngày phục vụ, tên thợ sửa chữa, số tiền thanh toán. Trong hoạt động kinh tế xã hội của con người, người ta thường chia ra hai loại dữ liệu: loại dữ liệu phản ánh cấu trúc nội bộ của cơ quan (nhân sự, nhà xưởng, thiết bị, … dữ liệu ít biến động) và loại dữ liệu phản ánh hoạt động của tổ chức (sản xuất, mua bám, giao dịch,…). Trong doanh nghiệp, không kể con người và thiết bị, dữ liệu cùng xử lý là 2 thành phần cơ bản của hệ thống: dữ liệu thường dùng để ghi nhận thực trạng. Có 2 phương pháp quản lý dữ liệu: Hệ thống quản lý bằng file và Hệ thống quản lý bằng CSDL. Một vấn đề quan trọng là các dữ liệu thường rất hiếm khi trực tiếp có ích cho những quyết định của người sử dụng chúng. Nói cách khác, người ra quyết định thường cần dùng thông tin là kết quả của quá trình xử lý và phân tích dữ liệu để đưa chúng về dạng có ý nghĩa hơn. Quá trình chuyển đổi dữ liệu thành thông tin có thể dựa trên các bảng tổng hợp dữ liệu, hoặc dựa trên báo cáo chi tiết, hoặc dựa trên các số liệu thống kê phức tạp từ các dữ liệu sẵn có. Bất cứ sử dụng phương pháp nào thì việc ra quyết định vẫn chính là dựa trên một vài dạng chuyển đổi dữ liệu. Nếu không có dữ liệu, ta sẽ không thể chuyển đổi được thành thông tin cần thiết. 1.1.1.2. Cơ sở dữ liệu Theo [2], Cơ sở dữ liệu được xác định như là một bộ sưu tập các dữ liệu có liên quan logic với nhau, nó được tổ chức, sắp xếp theo một cách nào đó và được các hệ ứng dụng của một đơn vị/cơ quan cụ thể nào đó sử dụng, truy xuất thông tin hoặc cập nhật dữ liệu. Có thể hiểu CSDL là một tập hợp dữ liệu có liên quan với nhau chứa thông tin về một tổ chức nào đó (trường đại học, công ty, …) được lưu trữ trên các thiết bị nhớ như băng từ, đĩa từ để đáp ứng nhu cầu khai thác thông tin đồng thời của nhiều người sử dụng, nhiều chương trình ứng dụng tại cùng thời điểm với nhiều mục đích khác nhau. CSDL được tổ chức có cấu trúc: Các dữ liệu lưu trữ có cấu trúc thành các bản ghi, các trường dữ liệu và các dữ liệu được lưu trữ có mối quan hệ với nhau. CSDL thường được sử dụng với những ứng dụng cài đặt riêng lẻ trong máy tính cá nhân, hoặc dưới dạng một CSDL tập trung trên mạng LAN, hoặc dưới dạng một CSDL phân tán trên mạng WAN. CSDL được các hệ ứng dụng khai thác bằng ngôn ngữ con dữ liệu hoặc bằng các chương trình ứng dụng để xử lý, tìm kiếm, tra cứu, sửa đổi, bổ sung hay loại bỏ. Đối tượng nghiên cứu CSDL là các thực thể và mối quan hệ giữa các thực thể. Các thành phần của môi trường sử dụng CSDL bao gồm: - Tệp và CSDL - Phần cứng và hệ điều hành - Cấu trúc dữ liệu và phương pháp truy xuất dữ liệu. Một số đặc tính của CSDL: - Tính tự mô tả: Hệ CSDL không chỉ chứa bản thân CSDL mà còn chứa định nghĩa đầy đủ ( mô tả ) của CSDL. Các định nghĩa được lưu trữ trong danh mục ( bảng ) chứa các thông tin về cấu trúc tập tin, kiểu và dạng thức lưu trữ của mỗi thành phần dữ liệu và những ràng buộc dữ liệu. - Tính độc lập: Vì định nghĩa cấu trúc CSDL được lưu trữ trong bảng nên khi có thay đổi nhỏ về cấu trúc ta ít phải sửa lại chương trình. - Tính trừu tượng: Hệ CSDL cho phép trình bày dữ liệu ở một mức trừu tượng cho phép, nhằm che bớt những chi tiết lưu trữ thật của dữ liệu.Trừu tượng hóa dữ liệu như là mô hình dữ liệu.( gồm có đối tượng, thuộc tính của đối tượng, mối liên hệ). - Tính nhất quán: lưu trưc dữ liệu thống nhất tránh được tình trạng trùng lặp thông tin. Có cơ chế điều khiển truy xuất dữ liệu hợp lý tránh được việc tranh chấp dữ liệu, bảo đảm dữ liệu luôn đúng tại mọi thời điểm. 1.1.1.3. Quản trị cơ sở dữ liệu Quản trị CSDL là quản lý một số lượng lớn dữ liệu, bao gồm cả việc lưu trữ và cung cấp cơ chế cho phép thao tác gồm: thêm, sửa, xóa dữ liệu và truy vấn dữ liệu. Quản trị CSDL giúp dữ liệu được lưu trữ một cách hiệu quả và có tổ chức, cho phép quản lý dữ liệu nhanh chóng và hiệu quả. Nếu tổ chức, đơn vị kinh doanh có hoạt động quản trị CSDL tốt thì năng suất HTTT sẽ hiệu quả và giảm thiểu rủi ro cho hệ thống. Mục đích của quản trị CSDL: tránh dư thừa, trùng lập dữ liệu, đảm bảo sự nhất quán trong CSDL, các dữ liệu lưu trữ có thể được chia sẻ, có thể thiết lập các chuẩn trên dữ liệu, duy trì tính toàn vẹn của dữ liệu và đảm bảo bảo mật dữ liệu. Các công việc cần thực hiện: - Theo dõi định kỳ, xử lý sự cố - Sao lưu - Điều chỉnh CSDL - Bảo mật - Phục hồi 1.1.1.4. Hệ quản trị cơ sở dữ liệu Hệ quản trị cơ sở dữ liệu DBMS (DataBaseManagement System): là một hệ thống gồm một CSDL và các thao tác trên CSDL. Đó là hệ thống chương trình, công cụ cho phép quản lý và tương tác với CSDL. Trên đó người dùng có thể định nghĩa, thao tác, và xử lí dữ liệu trong một CSDL để xuất ra những thông tin có nghĩa. Ví dụ : IMS , IDS, Access, SQL- Server…. 1.1.1.5. SQL Server SQL Server là một hệ quản trị cơ sở dữ liệu (Relational Database Management System (RDBMS) ) do Microsoft phát triển, hoạt động theo mô hình khách chủ cho phép đồng thời cùng lúc có nhiều người dùng truy xuất dữ liệu SQL Server sử dụng ngôn ngữ Transact-SQL (T-SQL) để truy vấn dữ liệu. TSQL là ngôn ngữ SQL mở rộng dựa trên SQL chuẩn của ISO và ANSI. Các câu lệnh T-SQL được chia làm 3 nhóm: các câu lệnh định nghĩa dữ liệu (DDL), các câu lệnh thao tác dữ liệu (DML), các câu lệnh điều khiển dữ liệu (DCL). T-SQL cung cấp các tính năng lập trình giúp thao tác với CSDL như là một ngôn ngữ lập trình. SQL Server sử dụng điển hình trong các hệ thống nhỏ đến trung bình chạy trên một hoặc nhiều máy chủ Windows. SQL Server quản lý truy cập và phân quyền người dùng, quản lý tập trung, có hỗ trợ xử lý giao dịch trực tuyến và xử lý phân tích trực tuyến, ứng dụng được cho thương mại điện tử và kho dữ liệu 1.1.2. Khái niệm liên quan trực tiếp tới vấn đề nghiên cứu 1.1.2.1. Hàng hóa Hàng hóa là sản phẩm sản xuất ra để bán theo quan hệ cung – cầu. Quá trình sản xuất và tiêu dùng ngày càng phát triển, sản xuất hàng hóa ngày càng đa dạng, phong phú. 1.1.2.2. Các mức độ của thiết kế cơ sở dữ liệu Thiết kế một CSDL được phân thành các mức: Thiết kế các thành phần dữ liệu mức khái niệm: là sự trừu tượng hóa của thế giới thực. Thiết kế các thành phần dữ liệu mức logic: là quá trình chuyển CSDL mức khái niệm sang mô hình Lược đồ quan hệ và chuẩn hóa các quan hệ. Thiết kế các thành phần dữ liệu mức vật lý: mức thấp nhất của kiến trúc một CSDL là cơ sở dữ liệu vật lý. CSDL vật lý là sự cài đặt cụ thể của CSDL mức khái niệm. 1.1.2.3. Thực thể và thuộc tính Thực thể là một đối tượng, một địa điểm, con người… trong thế giới thực được lưu trữ thông tin trong CSDL. Mỗi thực thể bao gồm một hoặc nhiều thuộc tính đặc trưng cho thực thể đó. Dữ liệu được biểu diễn như là một tập hợp các thực thể, mỗi thực thể được biểu diễn bởi một bảng (table). 1.1.2.4. Bảng Bảng là đối tượng được sử dụng để tổ chức và lưu trữ dữ liệu. Một cơ sở dữ liệu bao gồm nhiều bảng và mỗi bảng được xác định duy nhất bởi tên bảng. Một bảng bao gồm một tập các dòng và các cột: mỗi một dòng trong bảng biểu diễn cho một thực thể và mỗi một cột biểu diễn cho một tính chất của thực thể gồm thuôc tính và có kiểu dữ liệu nhất định Như vậy, liên quan đến mỗi một bảng bao gồm các yếu tố sau: • Tên của bảng: được sử dụng để xác định duy nhất mỗi bảngn trong cơ sở dữ liệu. • Cấu trúc của bảng: Tập các cột trong bảng. Mỗi một cột trong bảng được xác định bởi một tên cột và phải có một kiểu dữ liệu nào đó. Kiểu dữ liệu của mỗi cột qui định giá trị dữ liệu có thể được chấp nhận trên cột đó. • Dữ liệu của bảng: Tập các dòng (bản ghi) hiện có trong bảng. Mỗi bảng có một Khóa (key) – xác định tính duy nhất của bộ dữ liệu trong tập dữ liệu - khóa gồm một hoặc một vài thuộc tính của bảng. 1.1.2.5. Kiểu dữ liệu Mỗi cột trong bảng được quy định bởi một kiểu dữ liệu Kiểu dữ liệu cho phép xác định: loại dữ liệu của cột như dạng số, dạng kí tự, ngày tháng… và giới hạn miền giá trị cho cột 1.1.2.6. Mối quan hệ Mối quan hệ là mối liên kết giữa các tập thực thể (còn gọi là bảng). Các bảng trong một cơ sở dữ liệu không tồn tại độc lập mà có mối quan hệ mật thiết với nhau về mặt dữ liệu. Mối quan hệ này được thể hiện thông qua ràng buộc giá trị dữ liệu xuất hiện ở bảng này phải có xuất hiện trước trong một bảng khác. Mối quan hệ giữa các bảng trong cơ sở dữ liệu nhằm đàm bảo được tính đúng đắn và hợp lệ của dữ liệu trong cơ sở dữ liệu. Mối quan hệ giữa các bảng trong một cơ sở dữ liệu thể hiện đúng mối quan hệ giữa các thực thể trong thế giới thực. Phân loại: Quan hệ 1-1: là quan hệ giữa hai tập thực thể trong đó mỗi thực thể của tập cha chỉ có thể liên kết với nhiều nhất một thực thể của tập con, và ngược lại. Quan hệ 1-1 là quan hệ giữa hai tập thực thể trong đó mỗi thực thể của tập này có thể liên kết với duy nhất một thực thể của tập còn lại. Quan hệ 1-1 gọi là khả chuyển (transferable) nếu thực thể con có thể liên kết lại với một thực thể cha khác. Quan hệ 1-n (1-nhiều): là quan hệ giữa hai tập thực thể trong đó mỗi thực thể của tập này có thể liên kết với nhiều thực thể của tập còn lại. Quan hệ n-n (nhiều-nhiều): là quan hệ giữa hai tập thực thể trong đó một thực thể của tập này có thể liên kết với 0, 1 hoặc nhiều thực thể của tập kia, và ngược lại. Thường quan hệ n-n có thêm phần dữ liệu giao nhau để thêm thông tin cụ thể cho mối quan hệ. Quan hệ đệ quy: là quan hệ tồn tại giữa hai thực thể thuộc cùng một tập thực thể. 1.1.2.7. Quy tắc nghiệp vụ và Ràng buộc Quy tắc nghiệp vụ (Business Rule) là các thủ tục, nguyên tắc hay các chuẩn phải tuân theo. Các quy tắc này thể hiện trong cơ sở dữ liệu như là các ràng buộc (constraint). Ràng buộc (constraint) là những quy tắc cần tuân theo khi hập liệu vào CSDL để hạn chế các miền giá trị các thuộc tính Ràng buộc toàn vẹn (Integrity Constraint): là ràng buộc nhằm nhấn mạnh sự chính xác của dữ liệu nhập vào. Bao gồm 3 kiểu ràng buộc toàn vẹn: Ràng buộc NOT NULL, Ràng buộc CHECK, Ràng buộc sử dụng Trigger (Trigger là chương trình/macro tự động thực hiện khi có một sự kiện (bất thường) xảy ra trong CSDL) Ví dụ: Tuổi của nhân viên hưởng lương không vượt quá 65 tuổi -> ràng buộc của cột Tuổi < 65 1.1.2.8. Khóa chính và khóa ngoại Khóa chính: Khóa chính (Primary Key): Một hoặc một số thuộc tính để phân biệt mỗi bộ dữ liệu trong một quan hệ. Khi định nghĩa quan hệ hoặc bảng, luôn phải chỉ ra một/một số thuộc tính làm thuộc tính Khóa của quan hệ. Trong một cơ sở dữ liệu được thiết kế tốt, mỗi một bảng phải có một hoặc một tập các cột mà giá trị dữ liệu của nó xác định duy nhất một dòng trong một tập các dòng của bảng. Việc chọn khoá chính có vai trò quan trọng trong việc thiết kế và cài đặt các cơ sở dữ liệu quan hệ. Các dòng dữ liệu trong một bảng phải có giá trị khác nhau trên khoá. Khóa ngoại: Khi một quan hệ/bảng kết nối được với một quan hệ/bảng khác, luôn tồn tại một/một số thuộc tính đóng vai trò là cột dữ liệu chung kết nối hai quan hệ/hai bảng. Khóa ngoại (Foreign Key/Reference Key): là một/một số thuộc tính của một quan hệ R1 có quan hệ với quan hệ R2. Các thuộc tính khóa ngoài của R1 phải chứa các giá trị phù hợp với những giá trị trong R2. 1.1.2.9. Mô hình quan hệ dữ liệu Mô hình dữ liệu quan hệ được Codd đề xuất năm 1970 và đến nay trở thành mô hình được sử dụng phổ biến trong các hệ quản trị cơ sở dữ liệu thương mại. Nói một cách đơn giản, một cơ sở dữ liệu quan hệ là một cơ sở dữ liệu trong đó tất cả dữ liệu được tổ chức trong các bảng có mối quan hệ với nhau. Mỗi một bảng bao gồm các dòng và các cột: mỗi một dòng được gọi là một bản ghi (bộ) và mỗi một cột là một trường (thuộc tính). Hai hay nhiều bảng có thể có liên kết nếu chúng có một hay nhiều trường chung). 1.2. Một số cơ sở lý luận về giải pháp quản trị cơ sở dữ liệu bán hàng bằng SQL Server tại Công ty TNHH Indo Fonder 1.2.1. Kiểu dữ liệu trong SQL Server SQL Server cung cấp 6 loại kiểu dữ liệu:  Kiểu dữ liệu Exact Numeric (số chính xác, không sai số) trong SQL Server Kiểu dữ liệu Từ Tới bigint -9,223,372,036,854,775,808 9,223,372,036,854,775,8 07 int -2,147,483,648 2,147,483,647 smallint -32,768 32,767 tinyint 0 255 bit 0 1 decimal -10^38 +1 10^38 -1 numeric -10^38 +1 10^38 -1 money -922,337,203,685,477.5808 +922,337,203,685,477.58 07 smallmoney -214,748.3648 +214,748.3647  Kiểu dữ liệu Approximate Numeric trong SQL Server Kiểu dữ liệu Từ Tới float -1.79E + 308 1.79E + 308 real -3.40E + 38 3.40E + 38  Kiểu dữ liệu Date và Time trong SQL Server Kiểu dữ liệu Từ Tới datetime Jan 1, 1753 Dec 31, 9999 smalldatetime Jan 1, 1900 Jun 6, 2079 date Lưu giữ một date dạng June 30, 1991 time Lưu giữ một time dạng 12:30 P.M. Ghi chú: Ở đây, datetime có độ chính xác là 3.33 mili giây, trong khi smalldatetime có độ chính xác là 1 phút.  Kiểu dữ liệu Character String (kiểu chuỗi) trong SQL Kiểu dữ liệu Mô tả char Không chứa Unicode, độ dài tối đa là 8.000 ký tự (các ký tự không phải Unicode có độ dài cố định) varchar Không chứa Unicode, độ dài tối đa là 8.000 ký tự (dữ liệu không phải Unicode có độ dài có thể thay đổi) varchar(max) Không chứa Unicode, độ dài tối đa là 231 ký tự, dữ liệu không phải Unicode có độ dài có thể thay đổi (chỉ với SQL Server 2005) text Không chứa Unicode, độ dài tối đa là 2.147.483.647 ký tự, dữ liệu không phải Unicode có độ dài có thể thay đổi  Kiểu dữ liệu Unicode Character String (kiểu chuỗi có chứa Unicode) trong SQL Kiểu dữ liệu Mô tả nchar Độ dài tối đa là 4.000 ký tự (Unicode có độ dài cố định) nvarchar Độ dài tối đa là 4.000 ký tự (Unicode có độ dài có thể thay đổi) nvarchar(max) Độ dài tối đa là 231 ký tự, Unicode có độ dài có thể thay đổi (chỉ với SQL Server 2005) ntext Độ dài tối đa là 1.073.741.823 ký tự (Unicode có độ dài có thể thay đổi)  Kiểu dữ liệu Binary trong SQL Kiểu dữ liệu Mô tả binary Độ dài tối đa là 8.000 byte (dữ liệu binary có độ dài cố định ) varbinary Độ dài tối đa là 8.000 byte (dữ liệu binary có độ dài có thể thay đổi) varbinary(max) Độ dài tối đa là 231 byte, dữ liệu binary có độ dài có thể thay đổi (chỉ với SQL Server 2005) image Độ dài tối đa là 2.147.483.647 byte (dữ liệu binary có độ dài có thể thay đổi)  Các kiểu dữ liệu khác trong SQL Kiểu dữ liệu Mô tả sql_variant Lưu giữ các giá trị của các kiểu dữ liệu đa dạng được hỗ trợ bởi SQL Serverv, ngoại trừ text, ntext, và timestamp timestamp Lưu giữ một số duy nhất mà được cập nhật mỗi khi một hàng được cập nhật uniqueidentifier Lưu giữ một định danh chung (Globally Unique Identifier GUID) xml Lưu giữ dữ liệu XML. Bạn có thể lưu giữ xml trong một column hoặc một biến (chỉ với SQL Server 2005) cursor Tham chiếu tới một đối tượng con trỏ (Cursor) table Lưu giữ một tập hợp kết quả để xử lý vào lần sau 1.2.2. Ràng buộc trong SQL Server Dưới đây là các ràng buộc có sẵn và được sử dụng phổ biến trong SQL Server: Ràng buộc NOT NULL: bảo đảm một cột không thể có giá trị NULL. Theo mặc định, một cột có thể giữ các giá trị NULL. Nếu không muốn một cột mà có một giá trị NULL, thì cần định nghĩa ràng buộc NOT NULL trên cột này, để xác định rằng bây giờ NULL là không được chấp nhận bởi cột đó. Một NULL tương tự như không có dữ liệu nào, nó biểu diễn một dữ liệu không biết. Ràng buộc DEFAULT: cung cấp một giá trị mặc định cho cột khi không được xác định lệnh INSERT INTO không cung cấp một giá trị cụ thể. Ràng buộc UNIQUE: bảo đảm tất cả giá trị trong một cột là khác nhau. Ràng buộc PRIMARY Key trong SQL: Mỗi hàng/bản ghi được nhận diện một cách duy nhất trong một bảng. Một PRIMARY KEY là một trường trong một bảng mà nhận diện một cách duy nhất mỗi hàng/bản ghi trong một bảng dữ liệu. Các PRIMARY KEY phải chứa các giá trị duy nhất. Một cột là PRIMARY KEY không có giá trị NULL. Một bảng có thể chỉ có một PRIMARY KEY, mà gồm một trường đơn hay nhiều trường. Khi nhiều trường được sử dụng như là một PRIMARY KEY, chúng được gọi là một Composite Key. Nếu một bảng có một PRIMARY KEY được định nghĩa trên bất kỳ trường nào, thì không thể có hai bản ghi mà có cùng giá trị trong các trường đó. Ràng buộc FOREIGN Key trong SQL: Mỗi hàng/bản ghi được nhận diện một cách duy nhất trong bất kỳ bảng nào. Một FOREIGN KEY là một khóa được sử dụng để liên kết hai bảng với nhau. Đôi khi, nó còn được gọi như là một khóa tham chiếu. FOREIGN KEY là một cột hoặc một tổ hợp các cột có các giá trị so khớp với một PRIMARY KEY trong một bảng khác. Mối quan hệ giữa 2 bảng so khớp là PRIMARY KEY ở một trong hai bảng với một FOREIGN KEY trong bảng thứ hai. Ràng buộc CHECK: bảo đảm tất cả giá trị trong một cột thỏa mãn các điều kiện nào đó. Ràng buộc CHECK cho phép một điều kiện để kiểm tra giá trị đang được nhập vào một bản ghi. Nếu điều kiện được ước lượng là false, thì bản ghi vi phạm ràng buộc này và không được nhập vào trong bảng. Ràng buộc INDEX: Sử dụng để tạo và lấy dữ liệu từ Database một cách nhanh chóng. INDEX (chỉ mục) được sử dụng để tạo và lấy dữ liệu từ Database một các nhanh chóng. INDEX có thể được tạo bởi sử dụng một hay một nhóm các cột trong một bảng. Khi index được tạo, nó được gán một ROWID cho mỗi hàng trước khi nó sắp xếp dữ liệu. Các chỉ mục hợp lý sẽ làm tăng hiệu suất trong một Databse lớn, nhưng bạn cần cẩn thận trong khi tạo chỉ mục. Việc lựa chọn các trường phụ thuộc vào những gì bạn đang sử dụng trong các truy vấn SQL của bạn. 1.2.3.Tổng quan về Microsoft SQL Server 2008 1.2.3.1. Giới thiệu SQL Server 2008 SQL Server 2008 truy cập tới CSDL qua hệ thống mạng, hỗ trợ mô hình Client/Server, sử dụng Kho dữ liệu, tương thích với chuẩn ANSI/ISO SQL-92, hỗ trợ tìm kiếm full-text, trực tuyến (Books Online), hỗ trợ tìm kiếm nhiều kiểu dữ liệu mới: XML, pictures, video, …, hỗ trợ FileStream để thao tác với các đối tượng nhị phân (BLOB), Language-Interated Query và hỗ trợ doNET 3.5, … 1.2.3.2. Mô hình hoạt động  Mô hình Client/Server Nếu xét theo mô hình client/server, ứng dụng trao đổi với SQL Server theo sơ
- Xem thêm -

Tài liệu liên quan