2009-03-18 42 views

Trả lời

6

Bắt đầu với MySQL 5.0.2 bạn có thể viết thủ tục được lưu trữ được liên kết với TRIGGER, có thể kiểm tra cột mới mỗi lần chèn hàng và tự động sao chép giá trị của cột khác vào cột mới nếu không có giá trị nào được cung cấp cho cột mới.

+0

Cảm ơn đã nhận xét. Tôi đã suy nghĩ ban đầu cũng như muốn tránh xa họ. Vì điều này không quan trọng đối với các nhu cầu trước mắt của tôi, tôi sẽ giả định rằng nó không thể có trong MySQL theo mặc định. Cảm ơn bạn lần nữa! –

1

tạo chế độ xem và bạn có thể chọn cùng một cột hai lần và đặt tên cho nó khác nhau, khi đó ứng dụng có thể sử dụng chế độ xem thay vì sử dụng bảng trực tiếp.

2

Kể từ 20101212 mysql không hỗ trợ mặc định 2 cột dấu thời gian, có nghĩa là bạn không thể thực hiện 'đã tạo' và 'được cập nhật' trên cùng một bảng.

Nếu đây là những gì bạn đang cố gắng làm, sau đó kích hoạt với proc được lưu trữ là cách để đi.

3

Bạn có thể sử dụng lệnh sau đây để thực hiện công việc của mình.

  1. Lệnh này sẽ được sử dụng để thêm cột mới trong bảng của bạn. Hãy nhớ loại dữ liệu từ nơi bạn muốn sao chép để sử dụng các kiểu dữ liệu đó trong cột mới.

    ALTER TABLE table_name ADD new_column_name VARCHAR(60); 
    

2: Lệnh này để sao chép dữ liệu từ tên cột cũ sang tên cột mới.

UPDATE table_name SET new_column_name = old_column_name; 

Sau đó, nếu bạn muốn xóa cột trước, Sau đó, bạn có thể sử dụng lệnh sau

ALTER TABLE table_name DROP COLUMN old_column_name; 
Các vấn đề liên quan