Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 19 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
19
Dung lượng
3,14 MB
Nội dung
BỘ CÔNG THƯƠNG TRƯỜNG CAO ĐẲNG CÔNG THƯƠNG TP HỒ CHÍ MINH KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO ĐỀ TÀI : CÀI ĐẶT VÀ QUẢN TRỊ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU SQL SERVER VẤN ĐỀ: CHUYỂN ĐỔI GIỮA CÁC LOẠI CƠ SỞ DỮ LIỆU Tp. Hồ Chí Minh, tháng 8 năm 2014 NHÓM THỰC HIỆN: 1. NGUYỄN HUY HIỆP 2. NGUYỄN VĂN NHÀNG 3. NGUYỄN MINH TƯ 4. TRẦN MINH TRUNG GVHD : TRẦN ANH KHOA NĂM HỌC: 2013-2014 LỜI GIỚI THIỆU Có nhiều cách khác nhau để có thể kết xuất dữ liệu từ CSDL trong SQL Server sang các định dạng tiện dụng khác như .txt (thuần text), .csv (phân cách bằng dấy phẩy), .xls (excel), .xml (extensible markup language), có thể kể ra như SSIS, import/export wizard, bulk copy, bcp, replicate, Tùy theo đặc điểm của dữ liệu nguồn, định dạng dữ liệu đích mong muốn và khả năng tái sử dụng lại quá trình chuyển đổi dữ liệu mà chúng ta quyết định chọn công cụ nào. Nhưng trong bài tìm hiểu này, nhóm chúng em xin được phép trình bày về một bộ công cụ BCP đó là tiện ích nhỏ gọn, đơn giản nhưng cực kỳ hiệu quả có sẵn trong SQL Server để hổ trợ cho việc import và export dữ liệu. BCP là 1 tiện ích để thực hiện việc sao chép dữ liệu hàng loạt được tối ưu hóa để chuyên trị cho các dữ liệu có qui mô lớn. BCP có thể: • Sao chép dữ liệu từ SQL Server ra dữ liệu đích đến có định dạng do người dùng tùy biến (như dạng văn bản phân cách bằng tab, hay bằng dấu phẩy, dạng file excel, ). • Sao chép ngược lại dữ liệu từ các nguồn bên ngoài vào lại trong SQL Server. Để tìm hiểu kỹ hơn về các làm và chức năng, nhiệm vụ của bộ công cụ này, chúng em đã tiến hành tìm hiểu tổng quan về Import và Export, những điều căn bản nhất về nó, đồng thời cũng hiểu được cơ chế làm việc và công dụng của hai chức năng này. Vì thời gian quá ngắn chúng em tiếp cận ở mức độ tìm hiểu, một số vấn đề chưa được hiểu rõ, chúng em mong thầy đọc và góp ý, sữa chữa cho chúng em để bài tìm hiểu này của chúng em được hoàn thiện hơn, đồng thời chúng em được bổ sung thêm những kiến thức mới. Chúng em xin chân thành cảm ơn thầy! Nhóm thực hiện NHÓM 10 CHƯƠNG: CHUYỂN ĐỔI GIỮA CÁC LOẠI CƠ SỞ DỮ LIỆU I. GIỚI THIỆU VỀ IMPORT VÀ EXPORT DỮ LIỆU: Một trong những cách trao đỗi dữ liệu giữa các loại cơ sở dữ liệu với nhau là sử dụng tiện ích Import hay Export dữ liệu từ định dạng này sang định dạng khác. SQL Server 2000 cung cấp hai chức năng chính là Import dùng để nhập dữ liệu vào cơ sở dữ liệu SQL Server 2000 các loại cơ sở dữ liệu khác và Export dùng để xuất dữ liệu từ SQL Server 2000 ra các loại cơ sở dữ liệu khác. Tuy nhiên, tùy thuộc vào hệ thống cho phép ta Import hay Export dữ liệu Import dữ liệu và các đối tượng hai cơ sở dữ liệu với nhau ở mức độ nào đó. II. IMPORT CƠ SỞ DỮ LIỆU: Việc đầu tiên ta phải xác định cơ sở dữ liệu nguồn thuộc loại cơ sở dữ liệu nào để chọn và dĩ nhiên cơ sở dữ liệu đích chính là SQL Server 2000. 1. Import cơ sở dữ liệu từ SQL Server: Để thực hiện chức năng Import cơ sở dữ liệu, giả sử chúng ta tạo một cơ sở dữ liệu trên myDatabase với đối tượng Table có tên tblItems. Trong cơ sở dữ liệu này có Stored Procedure và một Trgger như sau: …Strore Procedure CREATE PROCEDURE spItems AS select * from tblItems …Trigger của tblItems CREATE TRIGGER [trgItem] ON [dbo].[tblItems] FOR INSERT, UPDATE, DELETE AS Print ‘Items’ a. Các bước Import giữa hai cơ sở dữ liệu: Giả sử cần Import cơ sở liệu Northwind từ SQL Server 2000. Trong cửa sổ SQL Server Enterprise Manager, kích chuột phải vào Database >All Task>Import Data. Hình 1.1 Hoặc từ menu Tool > Data Transformation > Import Data. Hình 1.2 Tiếp theo cần lựa chọn nguồn dữ liệu để Import. Hình 1.3 - Data Soure: Chọn loại trình điều khiển của cơ sở dữ liệu cần Import. Trong trường hợp này chúng ta chọn trình điều khiển Microsoft OLD DB provider for SQL Server. - Server: Là tên server cài đặt cơ sở dữ liệu SQL Server cần Import. Nếu nguồn dữ liệu nằm ngay tại máy thì chọn la local, nếu nằm trên SQL Server 200 khác thì cần đánh tên server hoặc địa chỉ Ip vào. - Chế độ xác thực(Authentication): Tùy thuộc vào cách xác thực của server nguồn. - Database: Chọn database cần Import trong từng trường hợp này chọn Northwind. Hình 1.4 Chọn Next để tiếp tục chọn thông tin của cơ sở dữ liệu đích. Trong mục Database ta chọn <new> để tạo một cơ sở dữ liệu mới. sau đó đánh tên cơ sở dữ liệu mới, giả sử là Northwind_COPY. Hình 1.5 Sau đó ấn Next. Hình 1.6 Có ba sự lựa chọn, ta sẽ tìm hiểu lần lượt từng lựa chọn một: Phương thức 1: (Copy table(s) and view(s) from the source database) Ở lựa chọn này ta sẽ nhận được danh sách các đối tượng Table và View của cơ sở dữ liệu Northwind. Muốn lựa chọn Table hay View nào cần Import ta kích vào Checkbox của từng đối tượng.(Hình 1.7) Nếu muốn đối tượng mà SQL Server 2000 sẽ sao chép có cấu trúc khác với các đối tượng Import, ta có thể chọn nút trên cột Transform.Ta có thể sửa được cấu trúc của bảng đích theo ý muốn.(Hình 1.8) Hình 1.7 Hình 1.8 Nếu muốn không Import một số cột dữ liệu nào đó trong bảng hoặc khi Import muốn thay đổi giá trị theo ý muốn thì kích vào mục Transformations. Hình 1.9 Và kích vào mục Transformation as it is copied to the destination. Hình 1.10 Ta có thể viết các lệnh theo ý muốn ở đây. Ví dụ ta muốn trường UniPrice giá tính bằng Đồng tức ta cần nhân trường này với tỉ giá USD/VND(16000). Function Main() DTSDestination("ProductID") = DTSSource("ProductID") DTSDestination("ProductName") = DTSSource("ProductName") DTSDestination("SupplierID") = DTSSource("SupplierID") DTSDestination("CategoryID") = DTSSource("CategoryID") DTSDestination("QuantityPerUnit") = DTSSource("QuantityPerUnit") DTSDestination("UnitPrice") = DTSSource("UnitPrice") *16000 DTSDestination("UnitsInStock") DTSDestination("UnitsOnOrder") = DTSSource("UnitsInStock") DTSDestination("ReorderLevel") = DTSSource("UnitsOnOrder") DTSDestination("Discontinued") = DTSSource("ReorderLevel") Main = DTSTransformStat_OK = DTSSource("Discontinued") End Function Phương thức 2: (Use a query to specify the the data to transfer) Với lựa chọn này của sổ kế tiếp sẽ như hình dưới và yêu cầu ta cung cấp phát biểu SQL. Hình 1.11 Hình 1.12 Có thể gõ trực tiếp câu lệnh SQL: Hoặc sử dụng công cụ Query Builder (hình trên). Sau khi thực hiện xong có thể nhấn nút Parse để kiểm tra cú pháp của phát biểu SQL. Ngoài ra ta cũng có thể nạp phát biểu SQL từ bên ngoài (tập tin dạng text ) bằng cách nhấn nút Browse. Phương thức 3: (Copy objects and data between SQL Server database) Với sự lựa chọn này cửa sổ kế tiếp sẽ như hình dưới: Yêu cầu ta chọn đối tượng muốn Import(mặc định là tất cả các đối tượng của cơ sở dữ liệu Import dang có). Select [Products].[ProductID], [Products].[ProductName], [Products].[UnitPrice] From [Products] Hình 1.13 Với phương thức này ta có thể chọn các tùy chọn như sau: Create destination object: Cho phép bạn tạo mới đối tượng và Import dữ liệu. o Nếu bạn muốn xóa đối tượng đang tồn tại trong cơ sở dữ liệu được Import thì bạn tùy chọn vào tùy chọn Drop destination objects first. o Chọn vào tùy chọn Include all dependent objects nếu bạn muốn Import tất cả các đối tượng khác có quan hệ. o Ngoài ra, nếu bạn chọn vào tùy chọn Include extenced propertise thì SQL Server 2000 sẽ Import những thuộc tính mở rộng khác. Copy data: Sao chép dữ liệu. o Chọn Replace existing data nếu bạn muốn xóa dữ liệu đang tồn tại trong những đối tượng cùng tên khi không chọn tùy chọn Drop destination objects first. o Append data: chèn thêm dữ liệu trường hợp không chọn tùy chọn Drop destination objects first. Copy all objects: Import tất cả các đối tượng của cơ sở dữ liệu cần Import vào cơ sở dữ liệu được Import. 2. Import dữ liệu từ Access: (Nguyễn Minh Tư) a. Các bước Import dữ liệu: Thông tin của cơ sở dữ liệu cần Export: o Data Source: chọn loại trình điều khiển cần Import, trong trường hợp này ta chọn trình MS Access. o Filename: là tên và đường dẫn của tập tin MS Access cần Import. o Nếu cơ sở dữ liệu Access có sử dụng username và password thì ta cần phải cung cấp giá trị cho hai text box này. Thông tin của cơ sở dữ liệu cần Import: o Destination: chọn trình điều khiển Microsoft OLE DB Provider For SQL Server. o Server: là tên server cài đặt cơ sở dữ liệu. o Database: tên cơ sở dữ liệu được Import. o Use windows authentication: sử dụng tài khoản của hệ điều hành để đăng nhập cơ sở dữ liệu myDatabases. Chọn phương thức để Import: o Đối với Import từ cơ sở dữ liệu của Access, ta có 2 lựa chọn: [...]... Ngoài cách sử dụng ImPort và Export trong từng cơ sở dữ liệu, bạn cũng có thể Import hay Export dữ liệu từ cửa sổ DTS Package Chẳng hạn, mốn tạo một Package để Export dữ liệu từ một cơ sở dữ liệu SQL Server có tên Database ra tập tin Excel, bạn có thể thao tác từng bước như sau: 1 Tạo kết nối cơ sở dữ liệu muốn Export Bạn chọn vào biểu thức Microsoft OLE DB Provider for SQL Server trong ngăn Connection... được Import( Destination) Microsoft Excel 97-20000 Chọn Next để chọn một trong hai phương thức Import là Copy table(s) and view(s) from the source database, bạn chọn Next để tiếp tục chọn các Sheet đang tồn tại trong tập tin Test.xls • Sau khi chọn tên Sheet của tập tin Excel, ta có thể thực hiện các bước kế tiếp như đã trình bày trong phần Import cơ sở dữ liệu SQL Server vào csdl SQL Server 2000 4 Import. .. tin cần Export: o Data Source: chọn loại trình điều khiển cần Import, trong trường hợp này ta chọn trình MS Excel o Filename: là tên và đường dẫn của tập tin MS Excel cần Import Thông tin của cơ sở dữ liệu được Import: o Destination: chọn trình điều khiển Microsoft OLE DB Provider For SQL Server o Server: là tên server cài đặt cơ sở dữ liệu được Import o Database: tên cơ sở dữ liệu được Import o... liệu vì chúng thường khác nhau và bạn phải khai báo lại sau khi thực hiện Import hay Export thành công • Trong trường hợp Import hay Export cơ sở dữ liệu SQL server với các loại cơ sở dữ liệu đa người dùng thì có thể kiểu dữ liệu tương đối giống nhau Tuy nhiên, nếu là cơ sở dữ liệu SQL server 2000 với nhau thì bạn sẽ được Import hay Export toàn bộ đối tượng cơ sở dữ liệu • ... Chọn Next để thực hiện các bước kế tiếp tương tự như trình bày ở phần trên • • III EXPORT CƠ SỞ DỮ LIỆU Export cơ sở dữ liệu cũng như Import cơ sở dữ liệu Đây là quá trình ngược lại với quá trình Import, các thao tác với Export cũng tương tự như Import IV XÂY DỰNG LỊCH TRÌNH IMPORT VÀ EXPORT DỮ LIỆU Quá trình Import và Export CSDL có thể cài đặt một lịch trình tự động theo một thời gian nhất định Theo... hợp Import từ cơ sở dữ liệu là access, chọn cơ sở dữ liệu cần Import là Northwind.mdb và không cần cung cấp Username và Password Nhấn Next • Chọn Next để chọn một trong hai phương thức Import là Copy table(s) and view(s) from the source database và User a query to specify the data to transfer Các bước tiếp theo tương tự như Import cơ sở dữ liệu từ SQL Server vào cơ sở dữ liệu SQL Server 2000 3 Import. .. vào bên trong vùng làm việc : Đặt tên trong phần New Connection là DatabaseExport vào chọn tên server, tên cơ sở dữ liệu là myDatabase, chọn username, password nếu sử dụng SQL server Authentication, chú ý rằng mặc định trình điều khiển ứng với kết nối này là biểu thức Microsoft OLE DB Provider for SQL server, nhấn OK để tạo đối tượng kêt nối cơ sở dữ liệu Export 2 Tạo kết nối cơ sở dữ liệu muốn Import: ... Chẳng hạn, trong cơ sở dữ liệu Access kiểu dữ liệu là Text nhưng đối với dữ liệu của SQL server thì chia ra làm nhiều loại như char, varchar, nchar và nvarchar Như vậy, sau khi Import dữ liệu từ cơ sở dữ liệu Asscess vào SQL server bạn phải khai báo lại dữ liệu cho từng cột dữ liệu cho phù hợp mặc dù hầu hết dữ liệu đều được Import thành công Đối với trường hợp Export từ cơ sở dữ liệu SQL server ra... chọn trình điều khiển Microsoft OLE DB Provider For SQL Server o Server: là tên server cài đặt cơ sở dữ liệu được Import o Database: tên cơ sở dữ liệu được Import o Use windows authentication: nếu sử dụng tài khoản của hệ điều hành để đăng nhập cơ sở dữ liệu myDatabases o User SQL Server Authentication: nếu sử dụng tài khoản của cơ sở dữ liệu SQL Server để đăng nhập cơ sỡ dữ liệu thì cần cung cấp Username... kiểu dữ liệu cho phù hợp với loại dữ liệu mà cơ sở dữ liệu được Import hỗ trợ Tuy nhiên, khi Import hay Export giữa hai cơ sở dữ liệu SQL server nói riêng và các loại cơ sở dữ liệu khác nói chung, bạn không khai báo lại dữ liệu bởi vì chúng cùng loại cơ sở dữ liệu Lưu ý : Khi bạn quyết định Import hay Export dữ liệu từ cơ sở dữ liệu SQL server vào cơ sở dữ liệu dạng tập tin như Access, Foxfro, Excel, . provider for SQL Server. - Server: Là tên server cài đặt cơ sở dữ liệu SQL Server cần Import. Nếu nguồn dữ liệu nằm ngay tại máy thì chọn la local, nếu nằm trên SQL Server 200 khác thì cần đánh tên server. Các bước Import giữa hai cơ sở dữ liệu: Giả sử cần Import cơ sở liệu Northwind từ SQL Server 2000. Trong cửa sổ SQL Server Enterprise Manager, kích chuột phải vào Database >All Task> ;Import. kế tiếp như đã trình bày trong phần Import cơ sở dữ liệu SQL Server vào csdl SQL Server 2000. 4. Import từ tập tin dạng Text: a. Các bước thực hiện: • Thông tin của tập tin cần Import o Data Source: