zoukankan      html  css  js  c++  java
  • C#中的类型和SQL Server中的类型对应关系

    SQL Server类型C#类型
    bit bool
    tinyint byte
    smallint short
    int int
    bigint long
    real float
    float double
    money decimal
    datetime DateTime
    char string
    varchar string
    nchar string
    nvarchar string
    text string
    ntext string
    image byte[]
    binary byte[]
    uniqueidentifier Guid
     
     

    相关代码如下:

     
       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:          }
  • 相关阅读:
    仰视源代码,实现strcmp
    Wicket实战(一)概述
    在弱网传输的情况下,是怎么做到节约流量的(面试小问题,Android篇)
    nRF52832之硬件I2C
    Android开源项目SlidingMenu的学习笔记(一)
    MVC设计模式
    报表应用结构优化之数据分库存储
    extern "C" 的含义:实现C++与C及其他语言的混合编程
    phpstorm改变文件编码由utf变为gbk
    mysql database 格式的查看和改变
  • 原文地址:https://www.cnblogs.com/chaosimple/p/2672813.html
Copyright © 2011-2022 走看看