2010-09-09 34 views
6

Tôi đang sử dụng bảng MySQL bên dưới. Tôi muốn thêm một trường có tên là 'subcheck' sẽ là giá trị có/không được xác định bởi đầu vào biểu mẫu HTML TYPE = CHECKBOX. "Loại" nào tôi nên cung cấp cho trường mới này?Tôi nên sử dụng trường MySQL nào cho giá trị Có/Không có Hộp kiểm?

Cảm ơn trước,

John

`submission` (
    `submissionid` int(11) unsigned NOT NULL auto_increment, 
    `loginid` int(11) NOT NULL, 
    `title` varchar(1000) NOT NULL, 
    `slug` varchar(1000) NOT NULL, 
    `url` varchar(1000) NOT NULL, 
    `displayurl` varchar(1000) NOT NULL, 
    `datesubmitted` timestamp NOT NULL default CURRENT_TIMESTAMP, 
    PRIMARY KEY (`submissionid`) 
) 

Trả lời

14

Bạn có thể sử dụng TINYINT(1) (BOOL/BOOLEAN chỉ là alias cho TINYINT(1)).

Một tùy chọn khác là lưu trữ Y/N trong một CHAR(1).

Tôi muốn giới thiệu TINYINT(1) vì nó sẽ cung cấp cho bạn các tùy chọn di động tốt nhất.

2

một boolean - 1 cho có, 0 cho không.

(giá trị của hộp kiểm sẽ cần phải là 1 hoặc 0 tất nhiên).

Di động nhiều hơn có/không có imo. hiệu quả quá

0

Tôi muốn giới thiệu một TINYINT(1) cho mục đích này. Nó lưu trữ 1 hoặc 0, để cho biết có hoặc không. Nó chiếm rất ít không gian và được hỗ trợ tốt hơn trên các công cụ SQL khác với các kiểu bool thông thường.

1

Tôi sẽ sử dụng numeric(1) not null default 0 trong đó 0 cho biết false1 cho biết true.

2

Cá nhân tôi thích một enum hoặc đặt kiểu dữ liệu trong MySQL cho việc này. Nó giữ dữ liệu dễ đọc.

Các vấn đề liên quan