Hiện nay tôi có bảng này trong DB của tôi:MySQL độc đáo cột chuỗi
CREATE TABLE `twMCUserDB` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`mc_userName` text NOT NULL,
`mc_userPass` text NOT NULL,
`tw_userName` text NOT NULL,
`tw_userPass` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=latin1;
Bây giờ những gì tôi muốn làm là cột mc_userName
sẽ là duy nhất để (giống như id). Nhưng mc_userName
phải là một chuỗi.
Bây giờ đã làm tôi đã cố gắng để làm cho nó cũng khóa chính, nhưng điều đó không làm việc ...
Vì vậy, câu hỏi của tôi đến với bạn là như sau:
Khi tôi thêm dữ liệu vào bảng, trước tiên tôi có phải kiểm tra xem mc_userName đã tồn tại chưa? Hoặc là có bất kỳ chức năng được xây dựng trong Mysql, mà tôi có thể sử dụng (như trong truy vấn chèn hoặc ở một nơi khác)
Làm thế nào tôi có thể thêm rằng UNIQUE để colum hơn? Tôi đang sử dụng Navicat làm trình soạn thảo cơ sở dữ liệu và phpmyadmin, nhưng không thể tìm thấy thứ gì có thể xử lý được ... – Mathlight
bạn có thể thử thay đổi bảng bằng cách chạy DDL này: 'ALTER TABLE twMCUserDB ADD UNIQUE tb_uq (mc_userName)' –
Điều đó trả về điều này: '[Err] 1170 - BLOB/TEXT cột 'mc_userName' được sử dụng trong đặc tả khóa không có độ dài khóa ' – Mathlight