Tôi đang đặt một biến và sau đó tôi muốn sử dụng lệnh USE
để thay đổi cơ sở dữ liệu. Thật không may USE
không đánh giá biến.Cơ sở dữ liệu thay đổi MySQL với giá trị biến
SET @con="testDB";
Query OK, 0 rows affected (0.00 sec)
select @con;
+--------+
| @con |
+--------+
| testDB |
+--------+
1 row in set (0.00 sec)
use @con;
ERROR 1049 (42000): Unknown database '@con'
Vì vậy, giá trị của biến không được đánh giá khi tôi cố kết nối. Bất kỳ ý tưởng?
Tôi nghĩ rằng bạn muốn ": =" thay vì "=" khi sử dụng SET – keyser
Đó là cùng nếu tôi sử dụng: = hoặc chỉ =, có nghĩa là sử dụng vẫn cố gắng để đánh giá chuỗi @con – bioShark
Yup. Chỉ cần tìm thấy điều này: "Bạn cũng có thể gán giá trị cho biến người dùng trong các câu lệnh khác ngoài SET. Trong trường hợp này, toán tử gán phải là: = và không = vì sau này được coi là toán tử so sánh = trong câu lệnh không SET : ". Xin lỗi tôi không thể giúp đỡ. – keyser