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

Thêm một cột mới trong tất cả các bảng mysql

Không, thực sự không có cách nào để thêm một trường vào nhiều bảng cùng một lúc. Bạn sẽ cần phải viết một kịch bản cho nó. Tuy nhiên, nó không phải là một kịch bản khó viết:

SHOW TABLES đơn giản truy vấn sẽ cung cấp cho bạn danh sách các bảng mà sau đó bạn có thể lặp lại trong PHP.

Trong vòng lặp, một SHOW COLUMNS FROM tablename truy vấn sẽ cung cấp cho bạn các trường trong bảng hiện tại, bạn có thể sử dụng các trường này để kiểm tra xem nó đã có practiceId chưa và sau đó thêm nó nếu cần.

Để thêm trường, hãy sử dụng tên bảng ALTER TABLE tablename ADD COLUMN practiceId INT (Tôi đã giả định là INT , nhưng hãy thay thế bằng tuy nhiên trường của bạn cần được xác định nếu bạn đang sử dụng kiểu dữ liệu khác)

Để thêm chỉ mục trên cột mới, bạn cũng có thể sử dụng ALTER TABLE hoặc sử dụng CREATE INDEX . Để tạo khóa ngoại, hãy sử dụng ALTER TABLE với ADD FOREIGN KEY đối số (Nhưng tôi tin rằng điều này chỉ hoạt động với các bảng InnoDB).

Tham khảo:




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm thế nào để khớp một địa chỉ ip trong mysql?

  2. Hiệu suất REGEXP (so sánh với LIKE và =)

  3. Làm thế nào để chọn từ hai bảng trong MySQL ngay cả khi không phải tất cả các hàng trong một bảng đều có câu trả lời chính trong bảng kia?

  4. Có cách nào để trích xuất văn bản khớp với một biểu thức chính quy từ một cột trong MySQL không?

  5. Thông báo lỗi MYSQL DBDump