KẾT NỐI VÀO ORACL3
KẾT NỐI VÀO ORACLE - Bài 4: Sử dụng công cụ SQL*PlusTác giả: www.oravn.comĐây là một trong những công cụ giúp thao tác với Oracle Database, mặc định nó được cài cùng với các tiện ích khác khi các bạn cài Oracle server hoặc client. Bài này tôi sẽ giới thiệu với các bạn công cụ SQL*Plus với giao diện window và ở mode command line và các lệnh thông thường thao tác, định dạng dữ liệu trong công cụ này.1. SQL*Plus với giao diện window: click chọn Start/Programs/oracle_home/Application Development/SQL Plus a) Kết nối: có thể nhập đầy đủ connect string trong trường username hoặc từng giá trị vào trường tương ứng trong hộp thoại logon. Khi kết nối thành công, bạn sẽ vào được cửa sổ chính với con trỏ ở dấu nhắc SQL>. Từ đây, các bạn có thể thực thi các lệnh SQL để truy cập dữ liệu và kết nối với nhiều database khác. Trên một máy có thể run nhiều cửa sổ SQL*Plus kết nối cùng một user hoặc khác user đến một hoặc nhiều database khác nhau. Bất tiện của công cụ này là bạn không di chuyển bằng phím mũi tên ngược lại để sửa lổi những từ phía trước được. b) Định biến môi trường: các bạn có thể định cách hiển thị trên SQL*Plus bằng các biến môi trường. Các bạn chọn Options/Environment hoặc set trong file oracle_home/sqlplus/admin/glogin.sql 2. SQL*Plus Worksheet: click chọn Start/Programs/oracle_home/Application Development/SQLPlus Worksheet Với công cụ này bạn có thể soạn thảo các câu lệnh truy vấn. Phần trên như là editor, các bạn có thể gõ nhiều câu lệnh cùng lúc cách nhau bằng dấu chấm phẩy, và di chuyển tới lui dễ dàng khi cần chỉnh sửa. Click nút 'Execute' trên toolbar hoặc ấn phím F5 để thực thi. Tất cả các câu lệnh đã thực thi được lưu lại trong history giúp thực thi lại dễ dàng. Click Worksheet/Commands History để xem lại những câu lệnh đã thực thi.3. SQL*Plus ở command mode: Các bạn có thể cung cấp chuổi kết nối như thông số truyền (ví dụ: sqlplus scott/tiger@edudb) hoặc với option “/nolog” như hình trên, để chạy tiện ích SQL*Plus nhưng chưa kết nối với database. Nếu chỉ gõ sqlplus ở cửa sổ command, nó sẽ run interactive, tức bạn phải cung cấp username, password từng bước. 4. Khai báo biến: Các bạn có thể khai báo biến để lưu dữ liệu tạm thời hoặc để truyền giá trị cho các câu lệnh truy vấn trong môi trường SQL*Plus. a) Lệnh DEFINE: với lệnh này bạn có thể khai báo một biến mới hoặc xem tất cả các biến môi trường hiện có. Biến được khai báo sẽ tồn tại cho đến khi bạn thoát khỏi SQL*Plus.vd: SQL> define -- xem tất cả các biến môi trường hiện có SQL> define fname=scott -- khai báo biến FNAME mang giá trị là 'scott' SQL> select * from employees where first_name = '&fname'; -- nó sẽ thay giá trị ‘scott’ vào vị trí tên biến khi thực thi, các bạn sẽ thấy: old 1: select * from employees where first_name = '&fname' new 1: select * from employees where first_name = 'scott' *** Lưu ý: kiểu dữ liệu của biến khai báo bằng lệnh DEFINE chỉ duy nhất là kiểu CHAR b) Lệnh ACCEPT: lệnh này sẽ đọc user input rồi gán cho biến. Với ACCEPT các bạn có thể chỉ ra kiểu dữ liệu cho biến khai báo là NUMBER, DATE hoặc CHAR (độ dài tối đa cho biến kiểu CHAR là 240 byte) cú pháp: ACCEPT variable [datatype] [format format_string] [prompt text] [hide] vd: SQL> accept fname prompt ‘Nhap ten nhan vien can tim: ’ -- nó sẽ dừng chờ bạn nhập giá trị cho biến. SQL> select * from employees where first_name = '&fname'; SQL> accept password char prompt 'Nhap password: ' hide -- với option HIDE khi bạn nhập nó sẽ hiện các dấu '*' c) Sử dụng dấu '&' (biến thay thế) Nếu có nhu cầu truyền giá trị cho các câu lệnh SQL thực thi một lần các bạn có thể sử dụng biến thay thế. Dấu ‘&’ là ký tự mặc định cho phép người dùng nhập một giá trị thay nhưng không khai báo biến trước bằng lệnh DEFINE và ACCEPT. Bạn có thể sử dụng biến thay thế bất kỳ đâu trong câu lệnh SQL và trong các lệnh của SQL*Plus. Hai dấu '&' thì tương đương với lệnh DEFINE vd: SQL> select * from &&table; -- nó sẽ dừng cho bạn nhập giá trị biến table Enter value for table: SQL> define -- biến TABLE được khai báo như các biến khai báo bằng lệnh DEFINE DEFINE TABLE = "departments" (CHAR) 5. Các lệnh thường sử dụng: - CONNECT connection_string: kết nối với database - DISCONNECT: kết thúc một session và ngưng kết nối - EDIT: hiệu chỉnh câu lệnh SQL thực thi ngay trước đó - COLUMN [column [option]]: kiểm soát hiển thị của một cột. Các bạn gõ lệnh này trước các câu lệnh truy vấn. Option của lệnh này rất nhiều, các bạn xem thêm trong phần trợ giúp. vd: COLUMN last_name HEADING 'Employee|name' FORMAT A15 -- hiển thị tiêu đề cột là Employee name trên hai dòng, độ rộng cột là 15 ký tự COLUMN salary JUSTIFY LEFT FORMAT $999,990.00 NULL '0.0' -- hiển thị giá trị cột bên lề trái có dấu '$' và dấu phân cách hàng ngàn, hàng đơn vị, thay giá trị NULL bằng 0.0 COLUMN last_name CLEAR -- bỏ định dạng trên cột last_name - SET VERIFY on|OFF: bật, tắt việc hiển thị thay thế giá trị cho biến - SET PAGESIZE value: định số dòng hiển thị kết quả trước khi lập lại tiêu đề cột - SET LINESIZE value: định số ký tự trên một dòng - SET LONG value: định độ rộng tối đa để hiển thị giá trị kiểu LONG - UNDEFINE: loại bỏ biến được khai báo bằng lệnh DEFINE or ACCEPT - START filename: chạy một script file. Có thể dùng dấu '@' thay lệnh START - SPOOL filename: ghi kết quả của các câu lệnh thực thi ra file - SPOOL OFF: ngưng việc ghi ra file - EXIT: thoát SQL*Plus . KẾT NỐI VÀO ORACLE - Bài 4: Sử dụng công cụ SQL*PlusTác giả: www.oravn.comĐây