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

Sử dụng ALTER để thả một cột nếu nó tồn tại trong MySQL

Đối với MySQL, không có: Yêu cầu tính năng MySQL .

Dù sao thì việc cho phép điều này được cho là một ý tưởng thực sự tồi:IF EXISTS cho biết rằng bạn đang chạy các hoạt động phá hoại trên cơ sở dữ liệu có (đối với bạn) cấu trúc không xác định. Có thể có những tình huống mà điều này có thể chấp nhận được đối với công việc cục bộ nhanh chóng và bẩn thỉu, nhưng nếu bạn muốn chạy một tuyên bố như vậy đối với dữ liệu sản xuất (trong quá trình di chuyển, v.v.), bạn đang chơi với lửa.

Nhưng nếu bạn nhấn mạnh, không khó để chỉ cần kiểm tra sự tồn tại trước tiên trong ứng dụng khách hoặc phát hiện lỗi.

MariaDB cũng hỗ trợ những thứ sau bắt đầu bằng 10.0.2:

DROP [COLUMN] [IF EXISTS] col_name 

tôi. đ.

ALTER TABLE my_table DROP IF EXISTS my_column;

Nhưng được cho là một ý tưởng tồi nếu chỉ dựa vào một tính năng không chuẩn được hỗ trợ bởi một trong số một số nhánh của MySQL.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Khoảng cách không gian Mysql sử dụng POINT - Không hoạt động

  2. Vấn đề Java + Mysql UTF8

  3. Bắt org.hibernate.exception.JDBCConnectionException:không thể thực hiện truy vấn ngay cả thông qua JNDI

  4. Định cấu hình nhóm kết nối GlassFish JDBC để xử lý chuyển đổi dự phòng Amazon RDS Multi-AZ

  5. Làm thế nào để khắc phục biểu tượng bên ngoài không được giải quyết do MySql Connector C ++?