Trên bảng của bạn cl56-goldeng.users , trường email đã được chỉ định khi tạo để không cho phép nhiều hơn 1 giá trị giống nhau được phép vào đó. Điều này được thực hiện bằng cách sử dụng UNIQUE định danh khi tạo bảng trong MySQL. Bạn có thể xem thêm về số nhận dạng DUY NHẤT tại liên kết này.
Bạn có 2 lựa chọn mà bạn có thể thực hiện.
- Đầu tiên là loại bỏ ràng buộc duy nhất trên
emailđồng ruộng. Điều này hoàn toàn phụ thuộc vào logic của bạn trong mã của bạn, nhưng xem như email thì hầu như luôn là duy nhất, điều này không được đề xuất.
Bạn có thể thả một khóa duy nhất bằng cách chạy lệnh:alter table [table-name] drop index [unique-key-index-name];
- Thứ hai, sẽ là sử dụng
NULLthay vì một chuỗi rỗng. Giả định của tôi là bạn đang đặt một chuỗi trống khi email của người dùng không tồn tại. Trong trường hợp này, tốt hơn là sử dụngNULLvà sau đó kiểm tra điều đó khi truy xuất dữ liệu từ cơ sở dữ liệu.
Bạn có thể chèn một NULL giá trị bằng cách sử dụng NULL mã định danh trong MySQL của bạn tuyên bố, như vậy:
INSERT INTO users (firstName,lastName,email)
VALUES ('Bob','Ross',NULL);
Và sau đó kiểm tra NULL giá trị bằng bất kỳ ngôn ngữ nào mà bạn đang truy cập dữ liệu này.