Tôi gặp một chút rắc rối khi chèn vào cơ sở dữ liệu sqlite3 với pdo. Bạn sẽ phải tha thứ cho sự thiếu hiểu biết của tôi với PDO, có vẻ như nước ngoài đến từ giao diện cơ sở dữ liệu của Python.Làm cách nào để chèn vào PDO (sqllite3)?
Vì vậy, đây là vấn đề của tôi. Tôi có một chèn đơn giản:
$dbh = new PDO('sqlite:vets.db');
$count = $dbh->exec("INSERT INTO vets(name,email,clinic,streetname,citystatezip,link,phone,fax,animal,region,visible) VALUES ($name,$email,$clinic,$streetname,$citystatezip,$link,$phone,$fax,$animal,$region,$visible)");
$dbh = null;
Tôi chỉ muốn thực thi lệnh SQL đó trên cơ sở dữ liệu của mình và được thực hiện với nó. Mặc dù thực thi tập lệnh này không gây ra lỗi, nhưng nó không bao giờ cập nhật cơ sở dữ liệu. Tôi đã thử tất cả các loại quyền trên cơ sở dữ liệu chính nó, thậm chí đã làm cho nó 777 nhưng nó không tạo sự khác biệt.
Ai đó có thể giúp tôi không?
giống như một sidenote (có thể không liên quan đến vấn đề của bạn), bạn có nghĩ về việc thoát khỏi dữ liệu mà bạn đang tiêm trong truy vấn không? (xem PDO :: trích dẫn); hoặc sử dụng các câu lệnh chuẩn bị (xem PDO :: chuẩn bị + PDO :: thi hành). Bạn đã thử kiểm tra không có lỗi SQL? (xem http://php.net/manual/fr/pdo.errorinfo.php) –
Bạn đã có các truy vấn thành công khác với bộ điều hợp PDL sqlite chưa? – sixthgear
Ngoài ra, bạn xuất hiện không có dấu ngoặc kép trong câu lệnh SQL của bạn xung quanh mỗi giá trị. (Trừ khi tất nhiên các báo giá được chứa trong mỗi biến) – sixthgear