MySqlDbType tiny(4)不存在

时间:2018-07-03 18:59:35

标签: mysql vb.net winforms

我正在向MySqlCommand添加参数,并且有一列声明为Tiny(4),但是MySqlDbType中不存在该类型。 另外,我代码中的数据是字符串“ 0”或“ 1”。

 If ActiveModifChk.Checked Then
        ActiveStr = "1"
 Else
        ActiveStr = "0"
 End If

 cmd.Parameters.Add("@isActive", MySqlDbType.Int16).Value = ActiveStr

我应该使用什么MySqlDbType?

1 个答案:

答案 0 :(得分:1)

根据MySqlDbType enumeration reference,根据有符号或无符号定义使用MySqlDbType.ByteMySqlDbType.UByte处理tinyint数据类型:

// signed 8-bit
cmd.Parameters.Add("@isActive", MySqlDbType.Byte).Value = sbyte.Parse(ActiveStr);

// unsigned 8-bit
cmd.Parameters.Add("@isActive", MySqlDbType.UByte).Value = byte.Parse(ActiveStr);

如果您只是传递“零”或“一个”(类似于truefalse条件),请使用MySqlDbType.Bit并将bit数据类型定义为相应的参数/列。