III.11 MỘT SỐ HÀM TRONG PHP HỔ TRỢ CHO CƠ SƠ DỮ LIỆU ORACLE

Một phần của tài liệu Phân tích thiết kế hệ thống kinh doanh thuốc thú y và thủy sản của công ty TNHH Quốc Minh (Trang 38 - 41)

ORACLE

Như đã đề cập ở trên, PHP là một ngôn ngữ lập trình hỗ trợ rất nhiều hệ cơ sở dữ liệu. Tuy nhiên, trong khuôn khổ của đồ án chỉ có thể trình bày các vấn đề của PHP liên quan đến hệ quản trị cơ sơ dữ liệu Oracle. PHP hỗ trợ từ phiên bản Oracle 7 trở về sau. Nhằm đáp ứng theo yêu cầu của đồ án, hệ cơ sở dữ liệu Oracle được sử dụng ở đây là Oracle 8i. PHP có sự hỗ trợ mở rộng cho phiên bản Oracle 8i nhờ nó sử dụng Oracle8 Call- Interface. Sự mở rộng này thì linh hoạt hơn nhiều so với sự mở rộng trong Oracle chuẩn. Nó hỗ trợ thêm về các vấn đề ràng buộc các biến cục bộ và toàn cục trong PHP đến liên quan đến Oracle, hỗ trợ đầy đủ các kiểu dữ liệu LOB, FILE và ROWID của Oracle và cho phép sử dụng các biến định nghĩa từ người dùng.

PHP cung cấp cho người lập trình với hệ cơ sở dữ liệu Oracle một số lượng lớn các hàm định nghĩa sẵn, phần sau đây sẽ đề cập đến một số hàm thường xuyên sử dụng.

OCILogon(): thiết lập một kết nối với Oracle. Cú pháp:

int OCILogon ( string username, string password [, string db])

Hàm này trả về một đặc điểm nhận dạng kết nối cần thiết cho hầu hết các cuộc gọi OCI khác. Tùy chọn tham số thứ ba có thể chứa tên thể hiện của Oracle cục bộ hoặc tên khai báo trong tệp tnsnames.ora mà bạn muốn kết nối. Nếu tham số thứ ba không được xác định PHP sử dụng các biến môi trường ORACLE_SID hoặc TWO_TASK để xác định cơ sở dữ liệu để kết nối.

OCINLogon(): thiết lập một kết nối mới với Oracle. Cú pháp:

int OCINLogon ( string username, string password [, string db])

OCIPLogon(): kết nối đến cơ sở dữ liệu Oracle sử dụng một kết nối bền bỉ. Cú pháp:

OCILogoff(): ngắt kết nối với Oracle. Cú pháp:

bool OCILogOff ( int connection)

OCIParse(): Phân tích cú pháp một truy vấn và trả về một lệnh. Cú pháp:

int OCIParse ( int conn, string query)

Hàm này trả về nhận dạng lệnh nếu query hợp lệ hoặc FALSE nếu query sai. Đối số

query trong hàm có thể là bất kỳ câu lệnh SQL nào hoặc khối PL/SQL.

OCIExecute(): Thực thi một lệnh Cú pháp:

int OCIExecute ( int statement [, int mode])

OCIExecute thực thi lệnh sau khi nó được phân tích cú pháp bằng hàm OCIParse(). Tùy chọn mode cho phép nhận biết kiểu thực hiện (mặc định là

OCI_COMMIT_ON_SUCCESS). Nếu không muốn lệnh tự động commit thì nhận dạng là OCI_DEFAULT.

Hàm này trả về TRUE nếu thành công hoặc FALSE nếu thất bại.

OCICommit(): Hoàn thành các giao dịch chưa hoàn tất. Cú pháp:

bool OCICommit ( int connection)

Hàm này trả về TRUE nếu thành công hoặc FALSE nếu thất bại.

OCIRollback()

Cú pháp:

bool OCIRollback ( int connection) Quay lại các thao tác đã đi qua.

Hàm này trả về TRUE nếu thành công hoặc FALSE nếu thất bại.

OCIFetch()

Hàm này mang hàng kế tiếp vào trong vùng nhớ đệm kết quả (cho câu lệnh SELECT). Cú pháp:

bool OCIFetch ( int statement)

OCIFetchInto()

Cú pháp:

int OCIFetchInto ( int stmt, array &result [, int mode])

Hàm này mang hàng kế tiếp vào trong mảng result (cho câu lệnh SELECT). Nó sẽ ghi đè lên nội dung trước đó trong result.

Tham số mode cho phép thay đổi đối xử mặc định. Bạn có thể nhận biết nhiều hơn một cờ bằng cách đơn giản là cộng thêm vào nó vào.

Ví dụ: OCI_ASSOC+OCI_RETURN_NULLS Một vài cờ cần biết:

OCI_ASSO: trả về một mảng liên kết.

OCI_NUM: trả về một mảng số bắt đầu với số 0 (zero). OCI_RETURN_NULLS: trả về các cột rỗng.

OCI_RETURN_LOBS: : trả về giá trị của một LOB.

OCIFetchStatement()

Cú pháp:

int OCIFetchStatement ( int stmt, array & variable)

Hàm này mang tất cả các hàng từ kết quả vào trong mảng được định nghĩa. Nó còn trả về số hàng đã lấy được.

OCIResult()

Cú pháp:

mixed OCIResult ( int statement, mixed column)

Hàm OCIResult() trả về giá trị cột của hàng đã lấy. Nó còn trả về mọi thứ như chuỗi ngoại trừ các kiểu trừu tượng (như FILEs, LOBs và ROWIDs).

OCIRowCount()

Cú pháp:

int OCIRowCount ( int statement)

Hàm này trả về số hàm làm ảnh hưởng, ví dụ như thực hiện lệnh cập nhật. Đây là hàm không báo cho bạn biết số hàng mà bạn đã chọn lựa (select).

OCINumCols(): trả về số cột trong lệnh. Cú pháp:

int OCINumCols ( int stmt)

OCIFreeStatement()

Cú pháp:

bool OCIFreeStatement ( int stmt)

Hàm này có chức năng giải phóng tài nguyên liên kết với các lệnh. Hàm này trả về TRUE nếu thành công hoặc FALSE nếu thất bại.

OCIError()

Cú pháp:

array OCIError ( [int stmt|conn|global])

Hàm này trả về lỗi cuối cùng mà nó tìm thấy. Nếu không có lỗi hàm sẽ trả về giá trị FALSE. Hàm sẽ trả về lỗi như một mảng liên kết. Trong mảng này, code chỉ ở chỗ mã nguồn bị lỗi của oracle và message là chuỗi lỗi của oracle.

Một phần của tài liệu Phân tích thiết kế hệ thống kinh doanh thuốc thú y và thủy sản của công ty TNHH Quốc Minh (Trang 38 - 41)

Tải bản đầy đủ (DOC)

(107 trang)
w