查询数据库中的表,返回字段相对应的数据类型!

上周的时候,项目相关的数据库底层做了一些改动,比如某一张表的一个字段的data type从bit变成int ,牵连着我的code当然也要做一些改动!不巧的是,old version和new version的数据库是并存的,就是说有可能数据库A中的data type依旧是bit, 但是数据库B的data type却被update成了int。这就需要我去查询数据库中的表,返回字段相对应的数据类型喽。

最开始是想直接找一条Sql语句去query,但是找了半天无果!

只好用C# Code去解决!

想法:利用最简单的“select * from [table]”,获取DataReader,这个DataReader中肯定包含了table的filed信息,包括column name,column data type.....

 

返回的HashTable 对象包含了table的column name(key)和column data type(value)。

但是需要传个Sql语句string进去!

比如Hashtable Override_ListingTable = GetTableDataType("select top (1) * from [Relevance].Override_Listings");

接下来要判断DB是old还是new,直接用Override_ListingTable["fieldName"]就OK了!

 

当然,要是知道Sql语句直接去query table的字段的data type就更方便了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值