繁体   English   中英

布尔值保存为mysql中的tinyint(1)

[英]Boolean save as tinyint(1) in mysql

我用一些布尔字段制作了表格。

CREATE TABLE PM_ADMIN_LIST(
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(250) NOT NULL,
password VARCHAR(250) NOT NULL,
mail VARCHAR(250) NOT NULL,
added_time INT,
super_admin VARCHAR(250) NOT NULL,
last_time INT,
last_ip VARCHAR(250),
see_user_per BOOLEAN DEFAULT FALSE,
change_user_per BOOLEAN DEFAULT FALSE,
see_people_per BOOLEAN DEFAULT FALSE,
change_people_per BOOLEAN DEFAULT FALSE,
add_people_per BOOLEAN DEFAULT FALSE,
remove_people_per BOOLEAN DEFAULT FALSE,
see_album_per BOOLEAN DEFAULT FALSE,
add_album_per BOOLEAN DEFAULT FALSE,
change_album_per BOOLEAN DEFAULT FALSE,
remove_album_per BOOLEAN DEFAULT FALSE,
see_music_per BOOLEAN DEFAULT FALSE,
add_music_per BOOLEAN DEFAULT FALSE,
change_music_per BOOLEAN DEFAULT FALSE,
remove_music_per BOOLEAN DEFAULT FALSE,
admin_per BOOLEAN DEFAULT FALSE,
yahoo_per BOOLEAN DEFAULT FALSE,
status_per BOOLEAN DEFAULT FALSE,
pm_per BOOLEAN DEFAULT FALSE,
ip_blocking_per BOOLEAN DEFAULT FALSE
);

但是当我在phpmyadmin中检查它时, BOOLEAN字段是tinyint(1)并且它们默认为0 我可以让1TRUE 但是当我在我的PHP代码中使用===时,它们无法转换。 (我应该在ifforwhile使用==并且我认为它可以在我的系统中产生一些错误。)

那么,我该如何解决呢? 我应该如何从mysql默认获得BOOLEAN?

从数据库中获取数据时,通常不会在PHP中获取任何字符串。 这些类型仅在数据库端使用。

该字段是TINYINT因为MySQL根本不包含BOOLEAN字段。

MySQL中没有'boolean'类型。 你可以在PHP中使用== check。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM