Đối với PDO, bạn KHÔNG nên thực thi USE dbname
trực tiếp.
Tôi nghĩ điều gì đang xảy ra khi bạn có nhiều phiên bản PHP script và khi mỗi phiên bản thực thi USE dbname
mà không có PDO biết về việc nó đang xảy ra, và điều này gây ra toàn bộ mớ hỗn độn.
Thay vào đó, bạn nên chỉ định dbname trong chuỗi kết nối PDO của mình như 'mysql:host=localhost;dbname=testdb'
. Điều đó có nghĩa là bạn không thể thực sự chuyển đổi giữa các cơ sở dữ liệu sau khi tạo lớp Model của mình. Bạn nên biết trước tên cơ sở dữ liệu của mình và sử dụng nó trong phương thức khởi tạo Mô hình.
Đọc thêm trong tài liệu PDO .