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

MySQL thêm cột nếu không tồn tại

Nếu máy chủ của bạn không cấp cho bạn quyền tạo hoặc chạy các thủ tục, tôi nghĩ rằng tôi đã tìm thấy một cách khác để thực hiện việc này bằng cách sử dụng PREPARE / EXECUTE và truy vấn lược đồ:

SET @s = (SELECT IF(
    (SELECT COUNT(*)
        FROM INFORMATION_SCHEMA.COLUMNS
        WHERE table_name = 'table_name'
        AND table_schema = DATABASE()
        AND column_name = 'col_name'
    ) > 0,
    "SELECT 1",
    "ALTER TABLE table_name ADD col_name VARCHAR(100)"
));

PREPARE stmt FROM @s;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Gettext hoặc bản dịch cơ sở dữ liệu

  2. Làm thế nào để xây dựng các liên kết tiếp theo và liên kết trước đó với php?

  3. Kết nối các ứng dụng ODBC với MySQL

  4. Lưu trữ hiệu quả dữ liệu chuỗi thời gian:mySQL hoặc tệp phẳng? Nhiều bảng (hoặc tệp) hoặc truy vấn với điều kiện WHERE?

  5. Tìm kiếm mysql trong PHP nhiều bảng bằng cách sử dụng một từ khóa