em có CSDL : SACH( id, category_id, title, author, category)
Cho e hỏi có câu lệnh nào để gán giá trị cột “category_id” cho giá trị cột “category” mỗi khi nhập category vào thì cột “category_id” sẽ cho một giá trị id đã gán
em có CSDL : SACH( id, category_id, title, author, category)
Cho e hỏi có câu lệnh nào để gán giá trị cột “category_id” cho giá trị cột “category” mỗi khi nhập category vào thì cột “category_id” sẽ cho một giá trị id đã gán
Do chưa nghĩ ra nên mình sẽ góp ý theo hướng khác 
Tại sao lại thiết kế như vậy? Hầu hết việc vi phạm chuẩn hoá dữ liệu đều sớm muộn sẽ gây ra lỗi, hỏng hóc, hoặc để đảm bảo không gây thêm lỗi sẽ tiêu hao nhiều thời gian và chi phí kiểm thử, bảo trì.
Bảng SACH không cần có field category, chỉ cần category_id là foreign key, vì từ category_id sẽ có đầy đủ thông tin của category.
Có 2 tình huống trong table SACH của bạn:
1. Bạn ko hiểu các qui tắc chuẩn hóa, nên đã để sai cột category vào đây như bạn Trần Hoàn đã giải thích.
=> Giải pháp: bỏ cột category ra, khi cần query dữ liệu thì join SACH và CATEGORIES lại với nhau. Hoặc có thể tạo view nếu câu query đó thường được dùng.
2. Biết, nhưng có tình phi chuẩn vì mục đích nào đó, vd như tốc độ truy xuất!
=> Giải pháp: Viết trigger bắt before INSERT và before UPDATE để thêm giá trị cho cột category.
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?