SQLSERVER与C#中数据类型的对应关系
SQLSERVER与C#中数据类型的对应关系 ///<summary>
///数据库中与C#中的数据类型对照
///</summary>
///<paramname="type"></param>
///<returns></returns>
privatestringChangeToCSharpType(stringtype)
{
stringreval=string.Empty;
switch(type.ToLower())
{
case"int":
reval="Int32";
break;
case"text":
reval="String";
break;
case"bigint":
reval="Int64";
break;
case"binary":
reval="System.Byte[]";
break;
case"bit":
reval="Boolean";
break;
case"char":
reval="String";
break;
case"datetime":
reval="System.DateTime";
break;
case"decimal":
reval="System.Decimal";
break;
case"float":
reval="System.Double";
break;
case"image":
reval="System.Byte[]";
break;
case"money":
reval="System.Decimal";
break;
case"nchar":
reval="String";
break;
case"ntext":
reval="String";
break;
case"numeric":
reval="System.Decimal";
break;
case"nvarchar":
reval="String";
break;
case"real":
reval="System.Single";
break;
case"smalldatetime":
reval="System.DateTime";
break;
case"smallint":
reval="Int16";
break;
case"smallmoney":
reval="System.Decimal";
break;
case"timestamp":
reval="System.DateTime";
break;
case"tinyint":
reval="System.Byte";
break;
case"uniqueidentifier":
reval="System.Guid";
break;
case"varbinary":
reval="System.Byte[]";
break;
case"varchar":
reval="String";
break;
case"Variant":
reval="Object";
break;
default:
reval="String";
break;
}
returnreval;
}
我为何要找上面这篇文章呢。因为我在写程序时碰到了这样一件事:
昨天晚上写程序,程序如下:
using System;
using System.Data;
using System.Data.SqlClient; namespace GetStudent
{
/// <summary>
/// Class1 的摘要说明
/// </summary>
class Class1
{
static void Main(string[] args)
{ string connstr = "server=(local);Initial Catalog=BYSJ;User ID =SA;Password=;";
//SqlConnection conn = new SqlConnection(connstr);
SqlConnection conn = new SqlConnection();
conn.ConnectionString = connstr;
conn.Open();
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = "Select id, sName from student";
SqlDataReader reader = cmd.ExecuteReader();
string output;
while(reader.Read())
{
output = string.Format("学生 {0}\t 的学号是 {1}",reader.GetString(), reader.GetString());
Console.WriteLine(output);
}
reader.Close();
conn.Close();
}
}
} 但是发现编译过去了,但是却读不出数据来,而且有这样的提示:InvalidCastException。
我查了一下MSDN,发现这个出现的条件是指定的强制转换无效。然后发现要求:所检索的数据必须已经是字符串,所以我检查了一下数据库,把数据结构都改成了nvarchar,然后发现就可以了。真是经验啊。
SQLSERVER与C#中数据类型的对应关系的更多相关文章
- 数据库SQL Server与C#中数据类型的对应关系
ylbtech- .NET-Basic:数据库SQL Server与C#中数据类型的对应关系 数据库SQL SServer与C#中数据类型的对应关系 1.A,返回顶部 数据库 C#程序 int int ...
- SQL SERVER与C#中数据类型的对应关系
对应关系表 SQL Server2000 http://hovertree.com/menu/sqlserver/ C# CodeSmith 数据类型 取值范围 数据类型 取值范围 空值代替值 数据类 ...
- JDBC---java与数据库中数据类型的对应关系
基础数据类型 Java 类型 SQL 类型 int 或 java.lang.Integer INTEGER long 或 java.lang.Long BIGINT short 或 java.lang ...
- 数据库中字段的数据类型与JAVA中数据类型的对应关系
类型名称 显示长度 数据库类型 JAVA类型 JDBC类型索引(int) 描述 VARCHAR L+N VARCHAR java.lang.String 12 CHAR N ...
- Sql Server中的数据类型和Mysql中的数据类型的对应关系(转)
Sql Server中的数据类型和Mysql中的数据类型的对应关系(转):https://blog.csdn.net/lilong329329/article/details/78899477 一.S ...
- oracle中数据类型对应java类型
地址: http://otndnld.Oracle.co.jp/document/products/oracle10g/102/doc_cd/Java.102/B19275-03/datacc.htm ...
- B-Tree索引在sqlserver和mysql中的应用
在谈论数据库性能优化的时候,通常都会提到“索引”,但很多人其实并没有真正理解索引,也没有搞清楚索引为什么就能加快检索速度,以至于在实践中并不能很好的应用索引.事实上,索引是一种廉价而且十分有效的优化手 ...
- 解剖SQLSERVER 第三篇 数据类型的实现(译)
解剖SQLSERVER 第三篇 数据类型的实现(译) http://improve.dk/implementing-data-types-in-orcamdf/ 实现对SQLSERVER数据类型的解 ...
- 从SQLSERVER/MYSQL数据库中随机取一条或者N条记录
从SQLSERVER/MYSQL数据库中随机取一条或者N条记录 很多人都知道使用rand()函数但是怎麽使用可能不是每个人都知道 建立测试表 USE [sss] GO ,NAME ) DEFAULT ...
随机推荐
- gulp自己主动化任务脚本在HybridApp开发中的使用
眼下做前端开发的同学可能都熟悉grunt.fis之类的自己主动化构建工具.事实上在HybridApp开发中我们也能够使用这些工具来简化我们的工作.gulp就是一个比grunt,fis都先进的构建工具. ...
- vector中的resize与 reserve
void reserve (size_type n); reserver函数用来给vector预分配存储区大小,即capacity的值 ,但是没有给这段内存进行初始化.reserve 的参数n是推荐预 ...
- CopyU!下一次更新将增加对设备厂商及型号的识别!
CopyU!下一版本的更新将加入对设备厂商及型号的识别功能,当用户连接设备时,CopyU!将能够辨别出设备的详细型号等,能够在一定程度上帮助用户发现问题设备或仿冒设备. 敬请期待即将到来的新更新!
- 使用HttpURLConnection实现在android客户端和服务器之间传递对象
一般情况下,客户端和服务端的数据交互都是使用json和XML,相比于XML,json更加轻量级,并且省流量,但是,无论我们用json还是用xml,都需要我们先将数据封装成json字符串或者是一个xml ...
- asp.net下载的方法
public void DownLoad( ){ string filePath = Server.MapPath( @"\UserFile\" );//这里注意了,你得指明要下载 ...
- tinyxml_settattr
TiXmlString& TiXmlString::assign(const char* str, size_type len) { size_type cap = capacity(); * ...
- maven跳过单元测试
24.跳过单元测试 <plugin><groupId>org.apache.maven.plugins</groupId><artifactId>mav ...
- codeblocks 更改颜色主题
Code::Blocks是一款优秀的C/C++编辑器,但默认的颜色为白底黑字,并且没有自带更多的主题配置.因此,各种颜色主题需要手动配置. 首先关闭codeblocks软件. 下载文件colour_t ...
- 简明网络I/O模型---同步异步阻塞非阻塞之惑
转自:http://www.jianshu.com/p/55eb83d60ab1 网络I/O模型 人多了,就会有问题.web刚出现的时候,光顾的人很少.近年来网络应用规模逐渐扩大,应用的架构也需要随之 ...
- (转)CSS行高——line-height
原文地址:http://www.cnblogs.com/dolphinX/p/3236686.html 初入前端的时候觉得CSS知道display.position.float就可以在布局上游刃有余了 ...