Hướng dẫn pdo php extension ubuntu
Thứ tư, 25/03/2020 | 00:00 GMT+7 Show Một giao dịch MySQL là một group các lệnh SQL liên quan đến logic được thực thi trong database như một đơn vị duy nhất. Các giao dịch được sử dụng để thực thi tuân theo ACID (Tính nguyên tử, tính nhất quán, tính cách ly và độ bền) trong một ứng dụng. Đây là một bộ tiêu chuẩn chi phối độ tin cậy của các hoạt động xử lý trong database . Tính nguyên tử đảm bảo sự thành công của các giao dịch liên quan hoặc thất bại hoàn toàn nếu xảy ra lỗi. Tính nhất quán đảm bảo tính hợp lệ của dữ liệu được gửi đến database theo logic nghiệp vụ đã xác định. Cách ly là việc thực hiện chính xác các giao dịch đồng thời đảm bảo các tác động của các client khác nhau kết nối với database không ảnh hưởng đến nhau. Độ bền đảm bảo các giao dịch liên quan đến lôgic vẫn ở trong database vĩnh viễn. Các câu lệnh SQL được phát hành thông qua một giao dịch phải thành công hoặc thất bại hoàn toàn. Nếu bất kỳ truy vấn nào không thành công, MySQL sẽ khôi phục các thay đổi và chúng không bao giờ được commit với database . Một ví dụ điển hình để hiểu cách giao dịch MySQL hoạt động là một trang web thương mại điện tử. Khi khách hàng đặt hàng, ứng dụng sẽ chèn các bản ghi vào một số bảng, chẳng hạn như: Một trường hợp sử dụng khác là trong một ứng dụng ngân hàng. Khi khách hàng chuyển tiền, một vài giao dịch sẽ được gửi đến database . Tài khoản của người gửi được ghi nợ và account của bên nhận được ghi có. Hai giao dịch phải được commit đồng thời. Nếu một trong số chúng không thành công, database sẽ trở lại trạng thái ban đầu và không có thay đổi nào được lưu vào đĩa. Trong hướng dẫn này, bạn sẽ sử dụng Phần mở rộng PDO PHP , cung cấp giao diện để làm việc với database bằng PHP, để thực hiện các giao dịch MySQL trên server Ubuntu 18.04. Yêu cầuTrước khi bắt đầu, bạn cần những thứ sau:
Bước 1 - Tạo database mẫu và bảngTrước tiên, bạn sẽ tạo một database mẫu và thêm một số bảng trước khi bắt đầu làm việc với các giao dịch MySQL. Đầu tiên, đăng nhập vào server MySQL của bạn với quyền root :
Khi được yêu cầu , hãy nhập password root MySQL của bạn và nhấn
Bạn sẽ thấy kết quả sau:
Tạo một user được gọi là
Cấp đầy đủ các quyền cho user của bạn đối với database
Cuối cùng, reload các quyền MySQL:
Bạn sẽ thấy kết quả sau khi bạn đã tạo user của bạn :
Với database và user tại chỗ, bây giờ bạn có thể tạo một số bảng để chứng minh cách hoạt động của các giao dịch MySQL. Đăng xuất khỏi server MySQL:
Sau khi hệ thống đăng xuất bạn, bạn sẽ thấy kết quả sau:
Sau đó, đăng nhập bằng thông tin đăng nhập của
Nhập password cho Chuyển sang
Bạn sẽ thấy kết quả sau khi nó được chọn:
Tiếp theo, tạo bảng
Lệnh này tạo một bảng Trường Cuối cùng, bạn sử dụng Khi bạn đã tạo bảng
Tiếp theo, thêm một số mục vào bảng
Bạn sẽ thấy kết quả tương tự như sau sau mỗi thao tác
Sau đó, xác minh dữ liệu đã được thêm vào bảng sản phẩm:
Bạn sẽ thấy danh sách bốn sản phẩm mà bạn đã chèn:
Tiếp
theo, bạn sẽ tạo một bảng
Như trong bảng Vì cột Sau khi chạy lệnh trước đó để tạo bảng
Bạn sẽ thêm ba khách hàng mẫu vào bảng. Chạy các lệnh sau:
Khi khách hàng đã được thêm vào, bạn sẽ thấy kết quả giống như sau :
Sau đó, xác minh dữ liệu trong bảng
Bạn sẽ thấy danh sách ba khách hàng:
Tiếp theo, bạn sẽ tạo một bảng
Bạn sử dụng cột Bạn sẽ thấy kết quả sau:
Vì đơn đặt hàng
của một khách hàng có thể chứa nhiều mặt hàng, bạn cần tạo một bảng Để tạo bảng
Bạn sử dụng Công cụ lưu trữ Đầu ra của bạn sẽ xác nhận việc tạo bảng:
Hiện tại, bạn sẽ không thêm bất kỳ dữ liệu nào vào các bảng Đăng xuất khỏi server MySQL:
Lược đồ database của bạn hiện đã hoàn tất và bạn đã điền vào nó một số bản ghi. Đến đây bạn sẽ tạo một lớp PHP để xử lý các kết nối database và các giao dịch MySQL. Bước 2 - Thiết kế một lớp PHP để xử lý các giao dịch MySQLTrong bước này, bạn sẽ tạo một lớp PHP sẽ sử dụng PDO (PHP Data Objects) để xử lý các giao dịch MySQL. Lớp sẽ kết nối với database MySQL của bạn và chèn dữ liệu nguyên tử vào database . Lưu file lớp trong folder root của web server Apache của bạn. Để thực hiện việc này, hãy tạo file
Sau
đó, thêm mã sau vào file . Thay thế /var/www/html/DBTransaction.php
Về phía đầu của Lưu ý: Vì ta đang trình diễn các giao dịch MySQL ở quy mô nhỏ ở đây, ta đã khai báo các biến database trong lớp Tiếp theo, bạn đặt hai thuộc tính cho lớp PDO:
Bây giờ hãy thêm mã sau vào file của bạn để tạo các phương thức cho lớp của bạn: /var/www/html/DBTransaction.php
Lưu file bằng cách nhấn Để làm việc với các giao dịch MySQL, bạn tạo ba phương thức chính trong lớp
Lớp Lớp Bước 3 - Tạo tập lệnh PHP để sử dụng lớp giao dịch DBT Bạn sẽ tạo một tập lệnh PHP sẽ triển khai lớp Các truy vấn SQL này sẽ ảnh hưởng đến các Bạn đang tạo một đơn đặt hàng cho khách hàng Tạo file
Sau đó, thêm mã sau vào file : /var/www/html/orders.php
Bạn đã tạo một tập lệnh PHP khởi tạo một version của lớp Trong tập lệnh này, bạn bao gồm file Tiếp theo, thêm đoạn mã sau vào để hoàn
thành tập lệnh /var/www/html/orders.php
Lưu file bằng cách nhấn Bạn chuẩn bị lệnh để chèn vào bảng đơn hàng thông qua phương Khi bạn có Cuối cùng, bạn gọi phương thức Đến đây bạn sẽ chạy tập lệnh Bạn sẽ thấy xác nhận profile đã được gửi thành công: Tập lệnh PHP của bạn đang hoạt động như mong đợi và đơn đặt hàng cùng với các sản phẩm đơn đặt hàng được liên kết đã được gửi đến database một cách nguyên tử. Bạn đã chạy file Bước 4 - Xác nhận các mục nhập trong database của bạnTrong bước này, bạn sẽ kiểm tra xem giao dịch bắt đầu từ cửa sổ trình duyệt cho đơn đặt hàng của khách hàng có được đăng lên bảng database như mong đợi hay không. Để thực hiện việc này, hãy đăng nhập lại vào database MySQL của bạn:
Nhập password cho Chuyển sang database
Đảm bảo database được thay đổi trước khi tiếp tục bằng cách xác nhận kết quả sau:
Sau đó, ra lệnh sau để truy xuất bản ghi từ bảng
Điều này sẽ hiển thị kết quả sau chi tiết đơn đặt hàng của khách hàng:
Tiếp theo, truy xuất các bản ghi từ bảng
Bạn sẽ thấy kết quả tương tự như sau với danh sách các sản phẩm từ đơn đặt hàng của khách hàng:
Đầu ra xác nhận giao dịch
đã được lưu vào database và lớp Kết luậnTrong hướng dẫn này, bạn đã sử dụng PHP PDO để làm việc với các giao dịch MySQL. Mặc dù đây không phải là một bài báo kết luận về việc thiết kế một phần mềm thương mại điện tử, nhưng nó đã cung cấp một ví dụ để sử dụng các giao dịch MySQL trong các ứng dụng của bạn. Để tìm hiểu thêm về mô hình MySQL ACID, hãy xem xét truy cập InnoDB và hướng dẫn Mô hình ACID từ trang web MySQL chính thức. Truy cập trang nội dung MySQL của ta để biết thêm các hướng dẫn, bài viết và Q&A liên quan. Tags: Các tin liên quan
Cách triển khai ứng dụng PHP với Kubernetes trên Ubuntu 18.04 |