Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

tạo cơ sở dữ liệu với pdo trong php

Có hai vấn đề lớn ở đây. Đầu tiên là trẻ vị thành niên. Những dòng mã này sẽ không bao giờ hoạt động:

$db->bindParam(1,`account`);
$db->bindParam(1,'$dbb'); //line 17

Điều này là do cả hai người trong số họ đang cố gắng gọi bindParam dưới dạng chuỗi . Điều này là không thể. bindParam cần một tham chiếu đến một biến. Đây là lý do tại sao bạn gặp lỗi "không thể chuyển tham số 2 bằng tham chiếu":bạn chỉ có thể chuyển biến bằng cách tham khảo.

Tuy nhiên, cả hai đều hoạt động:

$db->bindParam(1, $dbb); // call bindParam on a variable
$db->bindValue(1, 'account'); // call bindValue on a string literal

Tuy nhiên, vấn đề cơ bản hơn là sự hiểu biết của bạn về các tuyên bố đã chuẩn bị. Ý tưởng của các tuyên bố chuẩn bị là không thay thế đơn giản các chuỗi thành một chuỗi khác. Về cơ bản, nó là về việc tách cấu trúc của truy vấn khỏi dữ liệu. Tên của bảng được coi là một phần của cấu trúc của truy vấn, không phải là một phần của dữ liệu. Bạn cần đặt tên bảng trong truy vấn ban đầu. Mã đầu tiên của bạn là cách để làm điều đó.

$db = $conn->prepare( 'CREATE SCHEMA IF NOT EXISTS account');



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm thế nào để sử dụng mysqli_query () trong PHP?

  2. Quản lý MySQL với phpMyAdmin trên Ubuntu 10.10 (Maverick)

  3. Làm cách nào để truy xuất các hàng duy nhất dựa trên kết hợp giá trị cột?

  4. Có cách nào trong MySQL để đảo ngược trường boolean với một truy vấn không?

  5. PHP:Hiển thị hộp thoại xác nhận có / không