C#中的类型和SQL Server中的类型对应关系

 

SQL Server类型C#类型
bitbool
tinyintbyte
smallintshort
intint
bigintlong
realfloat
floatdouble
moneydecimal
datetimeDateTime
charstring
varcharstring
ncharstring
nvarcharstring
textstring
ntextstring
imagebyte[]
binarybyte[]
uniqueidentifierGuid
 
 
相关代码如下:
 
   1:  // SqlDbType转换为C#数据类型
   2:      public static Type SqlType2CsharpType(SqlDbType sqlType)
   3:      {
   4:          switch (sqlType)
   5:          {
   6:                 case SqlDbType.BigInt:
   7:                   return typeof(Int64);
   8:                 case SqlDbType.Binary:
   9:                   return typeof(Object);
  10:                 case SqlDbType.Bit:
  11:                   return typeof(Boolean);
  12:                 case SqlDbType.Char:
  13:                   return typeof(String);
  14:                 case SqlDbType.DateTime:
  15:                   return typeof(DateTime);
  16:                 case SqlDbType.Decimal:
  17:                   return typeof(Decimal);
  18:                 case SqlDbType.Float:
  19:                   return typeof(Double);
  20:                 case SqlDbType.Image:
  21:                   return typeof(Object);
  22:                 case SqlDbType.Int:
  23:                   return typeof(Int32);
  24:                 case SqlDbType.Money:
  25:                   return typeof(Decimal);
  26:                 case SqlDbType.NChar:
  27:                   return typeof(String);
  28:                 case SqlDbType.NText:
  29:                   return typeof(String);
  30:                 case SqlDbType.NVarChar:
  31:                   return typeof(String);
  32:                 case SqlDbType.Real:
  33:                   return typeof(Single);
  34:                 case SqlDbType.SmallDateTime:
  35:                   return typeof(DateTime);
  36:                 case SqlDbType.SmallInt:
  37:                   return typeof(Int16);
  38:                 case SqlDbType.SmallMoney:
  39:                   return typeof(Decimal);
  40:                 case SqlDbType.Text:
  41:                   return typeof(String);
  42:                 case SqlDbType.Timestamp:
  43:                   return typeof(Object);
  44:                 case SqlDbType.TinyInt:
  45:                   return typeof(Byte);
  46:                 case SqlDbType.Udt://自定义的数据类型
  47:                   return typeof(Object);
  48:                 case SqlDbType.UniqueIdentifier:
  49:                   return typeof(Object);
  50:                 case SqlDbType.VarBinary:
  51:                   return typeof(Object);
  52:                 case SqlDbType.VarChar:
  53:                   return typeof(String);
  54:                 case SqlDbType.Variant:
  55:                   return typeof(Object);
  56:                 case SqlDbType.Xml:
  57:                   return typeof(Object);
  58:                 default:
  59:                   return null;
  60:          }
  61:      } 
 
   1:          // sql server数据类型(如:varchar)转换为SqlDbType类型
   2:          public static SqlDbType SqlTypeString2SqlType(string sqlTypeString)
   3:          {
   4:              SqlDbType dbType = SqlDbType.Variant;//默认为Object
   5:   
   6:              switch (sqlTypeString)
   7:              {
   8:                  case "int":
   9:                      dbType = SqlDbType.Int;
  10:                      break;
  11:                  case "varchar":
  12:                      dbType = SqlDbType.VarChar;
  13:                      break;
  14:                  case "bit":
  15:                      dbType = SqlDbType.Bit;
  16:                      break;
  17:                  case "datetime":
  18:                      dbType = SqlDbType.DateTime;
  19:                      break;
  20:                  case "decimal":
  21:                      dbType = SqlDbType.Decimal;
  22:                      break;
  23:                  case "float":
  24:                      dbType = SqlDbType.Float;
  25:                      break;
  26:                  case "image":
  27:                      dbType = SqlDbType.Image;
  28:                      break;
  29:                  case "money":
  30:                      dbType = SqlDbType.Money;
  31:                      break;
  32:                  case "ntext":
  33:                      dbType = SqlDbType.NText;
  34:                      break;
  35:                  case "nvarchar":
  36:                      dbType = SqlDbType.NVarChar;
  37:                      break;
  38:                  case "smalldatetime":
  39:                      dbType = SqlDbType.SmallDateTime;
  40:                      break;
  41:                  case "smallint":
  42:                      dbType = SqlDbType.SmallInt;
  43:                      break;
  44:                  case "text":
  45:                      dbType = SqlDbType.Text;
  46:                      break;
  47:                  case "bigint":
  48:                      dbType = SqlDbType.BigInt;
  49:                      break;
  50:                  case "binary":
  51:                      dbType = SqlDbType.Binary;
  52:                      break;
  53:                  case "char":
  54:                      dbType = SqlDbType.Char;
  55:                      break;
  56:                  case "nchar":
  57:                      dbType = SqlDbType.NChar;
  58:                      break;
  59:                  case "numeric":
  60:                      dbType = SqlDbType.Decimal;
  61:                      break;
  62:                  case "real":
  63:                      dbType = SqlDbType.Real;
  64:                      break;
  65:                  case "smallmoney":
  66:                      dbType = SqlDbType.SmallMoney;
  67:                      break;
  68:                  case "sql_variant":
  69:                      dbType = SqlDbType.Variant;
  70:                      break;
  71:                  case "timestamp":
  72:                      dbType = SqlDbType.Timestamp;
  73:                      break;
  74:                  case "tinyint":
  75:                      dbType = SqlDbType.TinyInt;
  76:                      break;
  77:                  case "uniqueidentifier":
  78:                      dbType = SqlDbType.UniqueIdentifier;
  79:                      break;
  80:                  case "varbinary":
  81:                      dbType = SqlDbType.VarBinary;
  82:                      break;
  83:                  case "xml":
  84:                      dbType = SqlDbType.Xml;
  85:                      break;
  86:              }
  87:              return dbType;
  88:          }
 
   1:          // sql server中的数据类型,转换为C#中的类型类型
   2:          public static Type SqlTypeString2CsharpType(string sqlTypeString)
   3:          {
   4:              SqlDbType dbTpe = SqlTypeString2SqlType(sqlTypeString);
   5:   
   6:              return SqlType2CsharpType(dbTpe);
   7:          }
   8:   
   9:          // 将sql server中的数据类型,转化为C#中的类型的字符串
  10:          public static string SqlTypeString2CsharpTypeString(string sqlTypeString)
  11:          {
  12:              Type type = SqlTypeString2CsharpType(sqlTypeString);
  13:   
  14:              return type.Name;
  15:          }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值