C#程序中从数据库取数据时需注意数据类型之间的对应,int16int32int64

摘要:
RoutedEventArgse){using(SqlConnectionconn=newSqlConnection(“DataSource=.;UserID=sa;Password=123”){conn.Open();

 private void btn2_Click(object sender, RoutedEventArgs e)
        {
            using (SqlConnection conn = new SqlConnection("Data Source=.;Initial Catalog=Test20140531;User ID=sa;Password=123"))
            {
                conn.Open();
                using (SqlCommand cmd2 = conn.CreateCommand())
                {
                    cmd2.CommandText = "select * from T_Student";
                    using (SqlDataReader reader = cmd2.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            //string Name=reader.GetString(1);
                            //MessageBox.Show("姓名为:" + Name);


                            //int Age = reader.GetInt32(2);
                            //MessageBox.Show("所有人的年龄为:"+Age);


                            long Id = reader.GetInt64(0);
                            MessageBox.Show("Id值分别为:" + Id);
                            
                        }
                    }
                }
            }

        }


在C#程序中从数据库取数据时需注意数据类型之间的对应:(例如)

数据库中的数据类型        C#程序中数据类型
    nvarchar                  string             (nvarchar与varchar区别就是前者可含中文)   
    smallint                  int16
    int                       int32
    bigint                    int64               (bigint数据范围较大,有可能int存储不下,所以C#中用long存储,才不报错)
这四种是我遇到的,所以写下来,至于其他类型各位可以利用上述C#代码调试出来!
上述代码中Id,我在Microsoft SQL Server 2008中设置为bigint类型,在C#中用long类型接收,其执行结果截图如下:

C#程序中从数据库取数据时需注意数据类型之间的对应,int16int32int64第1张

更多知识分享:微笑空间站    

免责声明:文章转载自《C#程序中从数据库取数据时需注意数据类型之间的对应,int16int32int64》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇C#中Array与ArrayList的区别与开发团队高效协作的8个小技巧下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

【S4 导数据】S/4HANA导数,只会LSMW远远不够(转)

http://mp.weixin.qq.com/s/MY9wwPfm7UTsvdLv3umycA 不少小伙伴都已经开始使用S/4 HANA了,不管是哪个版本,都会发现原本玩得精熟的LSMW有点变样了。 一些原先在ECC下生效的BADI或是程序突然不管用了,啥情况?看完你就知道了。 关于LSMW  LSMW是什么? LSMW的全称是Legacy System...

Opentelemetry Collector的配置和使用

Collector的配置和使用 目录 Collector的配置和使用 Collector配置 Receivers Processors Exporters Service Extensions 使用环境变量 Collector的使用 部署到Kubernetes 部署Prometheus operator 使用Makefile 配置OpenT...

HTTP详解--请求、响应、缓存

1. HTTP请求格式              做过Socket编程的人都知道,当我们设计一个通信协议时,“消息头/消息体”的分割方式是很常用的,消息头告诉对方这个消息是干什么的,消息体告诉对方怎么干。HTTP协议传输的消息也是这样规定的,每一个HTTP包都分为HTTP头和HTTP体两部分,消息体是可选的,而消息头是必须的。每当我们打开一个网页,在上面点...

【封装那些事】 未利用封装

未利用封装 客户代码使用显式类型检查(使用一系列if-else或switch语句检查对象的类型),而不利用出层次结构内已封装的类型变化时,将导致这种坏味。 为什么要利用封装? 一种臭名昭著的坏味是,在客户代码中使用条件语句(if-else或switch语句)来显式地检查类型,并根据类型执行相应的操作。我们这里讨论的是:要检查的类型都封装在了层次结构中,但...

ADODB——RecordSet对象

转自网友,看着挺全就转了,供大家学习研究。 Recordset 对象的属性1、CursorType 属性 AdOpenForwardOnly: 仅向前游标,默认值。除了只能在记录中向前滚动外,与静态游标相同。当只需要在记录集中单向移动时,使用它可提高性能。(顾名思义,这种游标只能向前移动。然而,由于这种游标功能有限,将它用于系统资源时是非常有效的。) Ad...

数据加工ETL

ETL,是英文 Extract-Transform-Load 的缩写,用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程。 ETL工具或类ETL的数据集成同步工具或语言,企业生产中工具也非常之多,主流的etl工具有Sqoop、DataX、Canal、flume、Logstash、kettle、Dat...