Kết nối hệ cơ sở dữ liệu với hệ thống backend là điều bắt buộc phải làm trước khi viết API hoặc thực hiện một số thao tác liên quan tới hệ cơ sở dữ liệu, bài viết này mình sẽ đi từng bước giúp anh em kết nối PHP với SQL Server ở local.
1. Cài đặt SQL Server
Kết nối php với SQL server sẽ đi qua 2 bước, anh em cứ từ từ nha. Không có gì nóng vội, ta cứ cài đặt đã. Đầu tiên, anh em truy cập trang web của microsoft về SQL Server tại link này. Kéo xuống bên dưới chỗ phía cho developer.
Sau khi đã tải về file exe để cài đặt, anh em double click lên. Mở ra trình cài đặt của SQL server
Ở bước lựa chọn có 3 lựa chọn cho anh em cài đặt SQL Server
- 1. Basic: cài một phát xong luôn với tất cả thiết lập đều là thiết lập mặc định (khuyên dùng nếu không có gì đặc biệt)
- 2. Custom: Cho phép custom một số thiết lập default ban đầu
- 3. Download media: Tải về trước và cài đặt sau, tiết kiệm thời gian sau không cần phải tải nữa.
Không có gì thì anh em cứ chọn basic rồi next. Tới trình cài đặt.
Có thời gian thì đọc thêm license terms rồi next nha.
1 là đường dẫn mặc định cài SQL server, ấn vào 2 browser nếu anh em muốn thiết lập đường dẫn khác.
Xem thêm tuyển dụng PHP lương cao trên TopDev
2. Mở extension kết nối Php với SQL server
Để mở kết nối Php với SQL server, anh em cần chỉnh sửa file php.ini. File này mặc định sẽ comment một số extension kết nối tới hệ cơ sở dữ liệu
Anh em cài bản php nào sẽ mở kết nối tới bản php đó theo như đường dẫn dưới đây
Nếu anh em dùng Php XAMPP thì có thể đi thẳng tới php.ini thông qua lựa chọn dưới đây.
Sau khi đã đi tới thư mục có php.ini, anh em mở file lên và tìm tới dòng (trên windows)
extension=php_sqlsrv_72_ts.dll
Trên linux thì anh em tìm tới dòng này
extension=php_sqlsrv_72_nts.so
Sau khi đã mở comment các dòng này. Anh em tìm tới pdo, để PDO_SQLSRV có thể hoạt động, ta cần mở thêm pdo. Mở thêm comment của dòng này.
extension=php_pdo.dll
Trên linux
extension=pdo_sqlsrv.so
3. Code PHP kết nối với SQL server.
Sau khi đã mở extension php.ini, anh em lưu lại, nếu cần có thể start lại XAMPP. Lúc này anh em đã sẵn sàng để kết nối PHP với SQL server.
Trước khi làm gì với Database đều cần phải mở kết nối. Đoạn code dưới đây giúp mở kết nối từ Php
function OpenConnection() { $serverName = "tcp:myserver.database.windows.net,1433"; $connectionOptions = array("Database"=>"AdventureWorks", "Uid"=>"MyUser", "PWD"=>"MyPassword"); $conn = sqlsrv_connect($serverName, $connectionOptions); if($conn == false) die(FormatErrors(sqlsrv_errors())); return $conn; }
Phần serverName nếu anh em sử dụng local thì nó là localhost. Phần connectionOptions là các thông tin liên quan tới DB, Uid (tài khoản) và mật khẩu. Anh em chú ý là lưu ở array.
Sau khi đã mở kết nối tới database, anh em có thể thực hiện các câu truy vấn.
function ReadData() { try { $conn = OpenConnection(); $tsql = "SELECT [CompanyName] FROM SalesLT.Customer"; $getProducts = sqlsrv_query($conn, $tsql); if ($getProducts == FALSE) die(FormatErrors(sqlsrv_errors())); $productCount = 0; while($row = sqlsrv_fetch_array($getProducts, SQLSRV_FETCH_ASSOC)) { echo($row['CompanyName']); echo("<br/>"); $productCount++; } sqlsrv_free_stmt($getProducts); sqlsrv_close($conn); } catch(Exception $e) { echo("Error!"); } }
Câu truy vấn này thực hiện lấy companyName từ bảng Customer.
4. Tham khảo
- Why Php Laravel is so strong, so good?
- Step 3: Proof of concept connecting to SQL using PHP
- Connecting to SQL Server with PHP and ODBC Driver
Cảm ơn anh em đã đón đọc – Mong sẽ bổ ích cho anh em – Happy coding!
Tác giả: Kiên Nguyễn
Có thể bạn quan tâm:
- Cách sử dụng Transaction trong SQL hiệu quả
-
SQL Developer là gì? Làm thế nào để trở thành một SQL Developer?
- Format (Làm đẹp) code php trong VS Code
Truy cập ngay việc làm IT đãi ngộ tốt trên TopDev