Mysql存储布尔值,读取为true或false
我想创建一个包含布尔值的列,我不想使用Mysql存储布尔值,读取为true或false,mysql,sql,extjs,Mysql,Sql,Extjs,我想创建一个包含布尔值的列,我不想使用TINYINT(0)并将0存储为false,将1存储为true,而是希望将“true”或“false”值存储为VARCHAR值 我这样做是因为我在使用Extjs,我在动态创建组合框,我需要这些布尔值用作参数,如下所示: function createComboBox(editable) { var combo = new Ext.form.ComboBox({ typeAhead: true, mode: 'local', force
TINYINT(0)
并将0存储为false,将1存储为true,而是希望将“true”或“false”值存储为VARCHAR
值
我这样做是因为我在使用Extjs,我在动态创建组合框,我需要这些布尔值用作参数,如下所示:
function createComboBox(editable) {
var combo = new Ext.form.ComboBox({
typeAhead: true,
mode: 'local',
forceSelection: true,
triggerAction: 'all',
emptyText: 'Select item...',
selectOnFocus: true,
//...other settings
editable: editable // true or false
});
return combo;
};
和可编辑将是“真”或“假”(不带引号)
我应该只使用
varchar
列并删除Extjs中的引号吗?有更好的方法吗?您可以使用ENUM('true','false')作为列数据类型。使用int并将其转换为布尔值(但可能实际上并不需要):
我的东西
MySQL
没有boolean
数据类型:下面是一个很好的答案:
var boolValue = !!intValue;