T-SQL中的布尔值以及怎样在C#中将bit转换为bool

1. T-SQL中的布尔值
在T-SQL中,使用bit来表达布尔值。
(bit在SQL Server中并不一定存储为一位;在实际情况中,往往bit被存储为一个字节和多个位。)
在SQL Server Browser (2008)中可以直接使用True/False作为bit列的输入值,SQL Server会自动把输入的True/False转换为1/0。

2. 在C#中将bit转换为bool
在具体的实践过程中,我发现.NET 3.0/3.5的ADO可以自动将bit类型转换为True/False的形式而不需要任何额外的代码。同时,反向的,使用SqlParameter也可以直接将bool插入到SQL Server中而不需要额外的代码。
bit与bool之间的转换在.NET 3.0/3.5的ADO中似乎可以自动完成。

贴出一些我试验用的代码段:
试验的表结构:
CREATE TABLE BitTest
(
 Test BIT,
)

C#代码:
取出bit类型的数据
SqlConnection connection = new SqlConnection("Data Source=localhost;Initial Catalog=Test;Integrated Security=SSPI;");
SqlDataAdapter adapter = new SqlDataAdapter("SELECT * FROM BitTest", connection);
DataSet data = new DataSet();
adapter.Fill(data);
 

在显示数据时只需要使用ToString()即可
Console.WriteLine(data.Tables[0].Rows[0][0].ToString());

在插入数据时,SqlParameter可以自动完成bool到bit的转换
SqlCommand command = new SqlCommand("INSERT INTO BitTest ([Test]) VALUES (@test)", connection);
command.Parameters.Add(new SqlParameter("@test", false));
connection.Open();
command.ExecuteNonQuery();
connection.Close();

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值