GVKun编程网logo

数据库 SQL 语句的注释 (mysql,oracle,mssql)(sql数据库怎么注释)

4

最近很多小伙伴都在问数据库SQL语句的注释(mysql,oracle,mssql)和sql数据库怎么注释这两个问题,那么本篇文章就来给大家详细解答一下,同时本文还将给你拓展(转)C#数据类型映射(SQ

最近很多小伙伴都在问数据库 SQL 语句的注释 (mysql,oracle,mssql)sql数据库怎么注释这两个问题,那么本篇文章就来给大家详细解答一下,同时本文还将给你拓展(转)C# 数据类型映射 (SQLite,MySQL,MSSQL,Oracle)、C# 多数据库组件包,支持 MSSQL+Oracle+MySQL + 用户操作手册 | C/S 开发框架、C# 数据类型映射 (SQLite,MySQL,MSSQL,Oracle)、django 连接 mssql 数据库 (django 1.11.11 sql server 2008 R2)等相关知识,下面开始了哦!

本文目录一览:

数据库 SQL 语句的注释 (mysql,oracle,mssql)(sql数据库怎么注释)

数据库 SQL 语句的注释 (mysql,oracle,mssql)(sql数据库怎么注释)

mysql
# 到该行结束、-- 到该行结束 以及 /* 行中间或多个行 */ 的注释方格:
mysql> SELECT 1+1;     # 这个注释直到该行结束
mysql> SELECT 1+1;     -- 这个注释直到该行结束
mysql> SELECT 1 /* 这是一个在行中间的注释 */ + 1;
注意 -- (双长划) 注释风格要求在两个长划后至少有一个空格!

oralce,mssql
单行注释: --  多行注释:/**/
示例:
select * from tb_name; -- 查 xx 表的记录明细
select * from tb_name1;
/*
select * from tb_name2;
dbms_output.put_line(sqlerrm);
*/

(转)C# 数据类型映射 (SQLite,MySQL,MSSQL,Oracle)

(转)C# 数据类型映射 (SQLite,MySQL,MSSQL,Oracle)

一、C# vs SQLite: C#SQLite 字段名类型库类型GetFieldType(#)转换备注 F_BOOLboolBIT NOT NULLBoolean F_BOOL_NULLbool?BITBoolean F_SBYTEsbyteINT8 NOT NULLSBytesbyte_ F_SBYTE_NULLsbyte?INT8SBytesbyte_ F_BYTEbyteUINT8 NOT NULLByte F_BYTE_NULLbyte

一、c# vs sqlite:

C# SQLite

字段名 类型 库类型 GetFieldType(#) 转换 备注

F_BOOL bool BIT NOT NULL Boolean    

F_BOOL_NULL bool? BIT Boolean    

F_SBYTE sbyte INT8 NOT NULL SByte sbyte_  

F_SBYTE_NULL sbyte? INT8 SByte sbyte_  

F_BYTE byte UINT8 NOT NULL Byte    

F_BYTE_NULL byte? UINT8 Byte    

F_SHORT short INT16 NOT NULL Int16    

F_SHORT_NULL short? INT16 Int16    

F_USHORT ushort UINT16 NOT NULL UInt16 ushort_  

F_USHORT_NULL ushort? UINT16 UInt16 ushort_  

F_INT int INT32 NOT NULL Int32    

F_INT_NULL int? INT32 Int32    

F_UINT uint UINT32 NOT NULL UInt32 uint_  

F_UINT_NULL uint? UINT32 UInt32 uint_  

F_LONG long INT64 NOT NULL Int64    

F_LONG_NULL long? INT64 Int64    

F_ULONG ulong UINT64 NOT NULL UInt64 ulong_  

F_ULONG_NULL ulong? UINT64 UInt64 ulong_  

F_FLOAT float FLOAT NOT NULL Double   不转兼容

F_FLOAT_NULL float? FLOAT Double   不转兼容

F_DOUBLE double DOUBLE NOT NULL Double    

F_DOUBLE_NULL double? DOUBLE Double    

F_DECIMAL decimal DECIMAL NOT NULL Decimal   存取不一:: [-79228162514264300000000000000] != [-79228162514264337593543950335]

F_DECIMAL_NULL decimal? DECIMAL Decimal   存取不一:: [-79228162514264300000000000000] != [-79228162514264337593543950335]

F_CHAR char TEXT NOT NULL String    

F_CHAR_NULL char? TEXT String    

F_STRING string TEXT NOT NULL String    

F_STRING_NULL string TEXT String    

F_DATETIME DateTime TEXT NOT NULL String    

F_DATETIME_NULL DateTime? TEXT String    

           

二、 C# vs MySQL:

C# MySQL

字段名 类型 库类型 GetFieldType(#) 转换 备注

F_BOOL bool BOOL NOT NULL Boolean    

F_BOOL_NULL bool? BOOL NULL Boolean    

F_SBYTE sbyte TINYINT NOT NULL SByte sbyte_  

F_SBYTE_NULL sbyte? TINYINT NULL SByte sbyte_  

F_BYTE byte TINYINT UNSIGNED NOT NULL Byte    

F_BYTE_NULL byte? TINYINT UNSIGNED NULL Byte    

F_SHORT short SMALLINT NOT NULL Int16    

F_SHORT_NULL short? SMALLINT NULL Int16    

F_USHORT ushort SMALLINT UNSIGNED NOT NULL UInt16 ushort_  

F_USHORT_NULL ushort? SMALLINT UNSIGNED NULL UInt16 ushort_  

F_INT int INT NOT NULL Int32    

F_INT_NULL int? INT NULL Int32    

F_UINT uint INT UNSIGNED NOT NULL UInt32 uint_  

F_UINT_NULL uint? INT UNSIGNED NULL UInt32 uint_  

F_LONG long BIGINT NOT NULL Int64    

F_LONG_NULL long? BIGINT NULL Int64    

F_ULONG ulong BIGINT UNSIGNED NOT NULL UInt64 ulong_  

F_ULONG_NULL ulong? BIGINT UNSIGNED NULL UInt64 ulong_  

F_FLOAT float FLOAT NOT NULL Single   极值溢出

F_FLOAT_NULL float? FLOAT NULL Single   极值溢出

F_DOUBLE double DOUBLE NOT NULL Double    

F_DOUBLE_NULL double? DOUBLE NULL Double    

F_DECIMAL decimal DECIMAL NOT NULL Decimal   极值溢出

F_DECIMAL_NULL decimal? DECIMAL NULL Decimal   极值溢出

F_CHAR char CHARACTER NOT NULL String   中文报错

F_CHAR_NULL char? CHARACTER NULL String   中文报错

F_STRING string VARCHAR(50) NOT NULL String    

F_STRING_NULL string VARCHAR(50) NULL String    

F_DATETIME DateTime DATETIME NOT NULL DateTime    

F_DATETIME_NULL DateTime? DATETIME NULL DateTime    

           

三、 C# vs MSSQL:

C# MSSQL

字段名 类型 库类型 GetFieldType(#) 转换 备注

F_BOOL bool bit NOT NULL Boolean    

F_BOOL_NULL bool? bit NULL Boolean    

F_SBYTE sbyte smallint NOT NULL Int16 sbyte_short  

F_SBYTE_NULL sbyte? smallint NULL Int16 sbyte_short  

F_BYTE byte tinyint NOT NUL; Byte    

F_BYTE_NULL byte? tinyint NULL Byte    

F_SHORT short smallint NOT NULL Int16    

F_SHORT_NULL short? smallint NULL Int16    

F_USHORT ushort int NOT NULL Int32 ushort_int  

F_USHORT_NULL ushort? int NULL Int32 ushort_int  

F_INT int int NOT NULL Int32    

F_INT_NULL int? int NULL Int32    

F_UINT uint bigint NOT NULL Int64 uint_long  

F_UINT_NULL uint? bigint NULL Int64 uint_long  

F_LONG long bigint NOT NULL Int64    

F_LONG_NULL long? bigint NULL Int64    

F_ULONG ulong real NOT NULL Single ulong_float  

F_ULONG_NULL ulong? real NULL Single ulong_float  

F_FLOAT float real NOT NULL Single    

F_FLOAT_NULL float? real NULL Single    

F_DOUBLE double float NOT NULL Double    

F_DOUBLE_NULL double? float NULL Double    

F_DECIMAL decimal decimal NOT NULL Decimal   极值溢出

F_DECIMAL_NULL decimal? decimal NULL Decimal   极值溢出

F_CHAR char char(1) NOT NULL String    

F_CHAR_NULL char? char(1) NULL String    

F_STRING string varchar(50) NOT NULL F_STRING:    

F_STRING_NULL string varchar(50) NULL String    

F_DATETIME DateTime datetime NOT NULL DateTime  

F_DATETIME_NULL DateTime? datetime NULL DateTime    

           

四、C# vs Oracle:

C# Oracle

字段名 类型 库类型 GetFieldType(#) 转换 备注

F_BOOL bool CHAR(1) NOT NULL String bool_string  

F_BOOL_NULL bool? CHAR(1) String bool_string  

F_SBYTE sbyte NUMBER(3) NOT NULL Int16 sbyte_short  

F_SBYTE_NULL sbyte? NUMBER(3) Int16 sbyte_short  

F_BYTE byte NUMBER(3) NOT NULL Int16 byte_short  

F_BYTE_NULL byte? NUMBER(3) Int16 byte_short  

F_SHORT short NUMBER(5) NOT NULL Int32 short_int  

F_SHORT_NULL short? NUMBER(5) Int32 short_int  

F_USHORT ushort NUMBER(5) NOT NULL Int32 ushort_int  

F_USHORT_NULL ushort? NUMBER(5) Int32 ushort_int  

F_INT int NUMBER(10) NOT NULL Int64 int_long  

F_INT_NULL int? NUMBER(10) Int64 int_long  

F_UINT uint NUMBER(10) NOT NULL Int64 uint_long  

F_UINT_NULL uint? NUMBER(10) Int64 uint_long  

F_LONG long NUMBER(19) NOT NULL Decimal long_decimal  

F_LONG_NULL long? NUMBER(19) Decimal long_decimal  

F_ULONG ulong NUMBER(19) NOT NULL Decimal ulong_decimal  

F_ULONG_NULL ulong? NUMBER(19) Decimal ulong_decimal  

F_FLOAT float BINARY_FLOAT NOT NULL Single    

F_FLOAT_NULL float? BINARY_FLOAT Single    

F_DOUBLE double BINARY_DOUBLE NOT NULL Double   极值溢出

F_DOUBLE_NULL double? BINARY_DOUBLE Double   极值溢出

F_DECIMAL decimal DECIMAL(33,3) NOT NULL Decimal    

F_DECIMAL_NULL decimal? DECIMAL(33,3) Decimal    

F_CHAR char CHAR(1) NOT NULL String    

F_CHAR_NULL char? CHAR(1) String    

F_STRING string VARCHAR(50) NOT NULL String   不允许空字符

F_STRING_NULL string VARCHAR(50) String   不允许空字符

F_DATETIME DateTime TIMESTAMP NOT NULL DateTime   大值读取报错

F_DATETIME_NULL DateTime? TIMESTAMP DateTime   大值读取报

 

C# 多数据库组件包,支持 MSSQL+Oracle+MySQL + 用户操作手册 | C/S 开发框架

C# 多数据库组件包,支持 MSSQL+Oracle+MySQL + 用户操作手册 | C/S 开发框架

  C# 多数据库组件包支持 MSSQL+Oracle+MySQL + 用户操作手册 | C/S 框架网

C#多数据库组件包支持MSSQL+Oracle+MySQL+用户操作手册|C/S框架网
 
 

我们在开发软件过程中,特别是基于数据管理应用相关的系统,一般采用一种数据库,如 Microsoft SQL Server,超大型系统有的使用 Oracle,部分 Web 系统采用开源的 MySQL 等,由于各种业务场景以及用户需求,促使我们的数据库系统部署在不同类型的数据库服务器上。若开发的系统能支持多种数据库的快速切换,可以为我们减少很多烦恼,同时提高系统的适应性、兼容性以及可扩展性。

 
C/S 框架网为广大用户定制开发一套基于 C# 语言的多数据库组件包,以及用户操作手册。
 

C# 语言多数据库组件包 (支持 MSSQL+Oracle+MySQL)
 
CSFramework.DB.realease.rar
 
下载链接: https://pan.baidu.com/s/1bmzNVwQ4-F2svTLByIPaQA 密码:fy9s
 
贴图图片
 

 
《CSFramework.DB 用户操作手册》.pdf
 
下载链接: https://pan.baidu.com/s/1rauYthmGjHQ5T8IeLuG0Ww 密码:1fsu
 

基于C#语言多数据库组件包及用户操作手册
 
 


C# Code:

/// <summary>
/// IDatabase 数据库接口
/// </summary>
public interface IDatabase : IAdoFactory
{
   int DefaultPort { get; }
   
   int CommandTimeout { get; }
   
   int ConnectionTimeout { get; }
   
   Type DateTimeType { get; }
   
   DateTime GetServerTime();
   
   String ConnectionString { get; set; }
   
   DbTransaction TransBegin();
   
   void TransCommit(DbTransaction trans, bool closeConnection = false);
   
   void TransRollback(DbTransaction trans, bool closeConnection = false);
   
   DataSet GetDataSet(string SQL);
   
   DataSet GetDataSet(DbCommand cmd);
   
   DataSet GetDataSet(string text, CommandType type, IDataParameter[] paras);
   
   DataTable GetTable(string SQL, string tableName = "");
   
   DataTable GetTable(DbCommand cmd, string tableName = "");
   
   DataRow GetDataRow(string SQL);
   
   int ExecuteSQL(string SQL);
   
   int ExecuteCommand(DbCommand cmd);
   
   object ExecuteScalar(string SQL);
   
   object ExecuteScalar(DbCommand cmd);
   
   DbDataReader ExecuteReader(string SQL);
   
   DbDataReader ExecuteReader(DbCommand cmd);
   
   List<T> ExecuteReader<T>(string SQL, Func<DbDataReader, T> action) where T : new();
   
   List<T> ExecuteReader<T>(DbCommand cmd, Func<DbDataReader, T> action) where T : new();
   
   T ExecuteReader<T>(DbCommand cmd) where T : new();
   
   T ExecuteReader<T>(string SQL) where T : new();
   
   int ExecuteTrans(DbTransaction trans, string SQL);
   
   void Close(DbConnection connection);
}

// 来源:C/S 框架网 (www.csframework.com) QQ:23404761



C# Code:

/// <summary>
/// ADO (ActiveX Data Object) ADO.NET 活动数据对象工厂
/// </summary>
public interface IAdoFactory
{
   string BuildConnectionString(string server, int port, string dbName, string uid, string pwd, int timeout = 10);
   
   CommandHelper CreateSqlProc(string spName);
   
   CommandHelper CreateCommand(string commandText);
   
   /// <summary>
   /// DbCommand 的参数符号,@,?
   /// </summary>
   string ParamSymboName { get; }
   
   DbParameter CreateTimestampParameter(string parameterName, string fieldName);
   
   DbConnection CreateConnection();
   
   DbConnection CreateConnection(string connectionString);
   
   DbCommand CreateCommand(string commandText, CommandType commandType);
   
   DbParameter CreateParameter(string parameterName, object parameterValue);
   
   DbCommandBuilder CreateCommandBuilder();
   
   DbDataAdapter CreateDataAdapter();
   
   DbDataAdapter CreateDataAdapter(AdapterRowUpdatingEvent eventHandler);
   
}

// 来源:C/S 框架网 (www.csframework.com) QQ:23404761

 
 

C# Code:


/// <summary>
/// 数据库对象工厂
/// </summary>
public static class DatabaseFactory
{
   /// <summary>
   /// 创建数据库(使用 DataProviderFactory 创建数据存取基础组件,通用版)
   /// </summary>
   /// <param name="providerType"> 数据库类型 </param>
   /// <param name="connectionString"> 数据库连接字符串 </param>
   /// <returns></returns>
   public static IDatabase CreateMDB(DatabaseType providerType, string connectionString)
   {
      return new DatabaseMDB(providerType, connectionString);
   }
   
   /// <summary>
   /// 创建 SQL Server 数据库
   /// </summary>
   /// <param name="connectionString"> 数据库连接字符串 </param>
   /// <returns></returns>
   public static IDatabase CreateSqlDatabase(string connectionString)
   {
      return new DatabaseMSSQL(connectionString);
   }
   
   /// <summary>
   /// 创建 MySQL 数据库
   /// </summary>
   /// <param name="connectionString"> 数据库连接字符串 </param>
   /// <returns></returns>
   public static IDatabase CreateMySqlDatabase(string connectionString)
   {
      return new DatabaseMySQL(connectionString);
   }
   
   /// <summary>
   /// 创建 Oracle 数据库
   /// </summary>
   /// <param name="connectionString"> 数据库连接字符串 </param>
   /// <returns></returns>
   public static IDatabase CreateOracleDatabase(string connectionString)
   {
      return new DatabaseOracle(connectionString);
   }
   
   /// <summary>
   /// 创建数据库
   /// </summary>
   /// <param name="dbType"> 数据库类型 </param>
   /// <param name="connectionString"> 数据库连接字符串 </param>
   /// <returns></returns>
   public static IDatabase CreateDatabase(DatabaseType dbType, string connectionString)
   {
      if (dbType == DatabaseType.SqlServer)
      return new DatabaseMSSQL(connectionString);
      if (dbType == DatabaseType.MySQL)
      return new DatabaseMySQL(connectionString);
      if (dbType == DatabaseType.Oracle)
      return new DatabaseOracle(connectionString);
      throw new Exception ("未支持的数据库类型!");
   }
   
   /// <summary>
   /// 创建数据库
   /// </summary>
   /// <param name="dbType"> 数据库类型 </param>
   /// <param name="connectionString"> 数据库连接字符串 </param>
   /// <returns></returns>
   public static IDatabase CreateDatabase(string dbType, string connectionString)
   {
      DatabaseType databaseType;
      if (!Enum.TryParse<DatabaseType>(dbType, true, out databaseType))
      throw new Exception ("不支持的数据库类型!");
      
      if (databaseType == DatabaseType.SqlServer)
      return new DatabaseMSSQL(connectionString);
      if (databaseType == DatabaseType.MySQL)
      return new DatabaseMySQL(connectionString);
      if (databaseType == DatabaseType.Oracle)
      return new DatabaseOracle(connectionString);
      throw new Exception ("未支持的数据库类型!");
   }
   
   /// <summary>
   /// ADO 组件工厂
   /// </summary>
   /// <param name="dbType"> 数据库类型 </param>
   /// <param name="connectionString"> 数据连接字符串 </param>
   /// <returns></returns>
   public static IAdoFactory GetADOFactory(DatabaseType dbType, string connectionString)
   {
      return CreateDatabase(dbType, connectionString);
   }
}

// 来源:C/S 框架网 (www.csframework.com) QQ:23404761

 
相关文章:
 
如何使用多数据库 IDatabase 接口以及数据访问层应用
 
http://www.csframework.com/archive/1/arc-1-20181217-2511.htm
 
 

 
本文转自: http://www.csframework.com/archive/1/arc-1-20181217-2510.htm
 

C# 数据类型映射 (SQLite,MySQL,MSSQL,Oracle)

C# 数据类型映射 (SQLite,MySQL,MSSQL,Oracle)

 MSSQL

SQLITE

一、C# vs SQLite:

C# SQLite 字段名 类型 库类型 GetFieldType(#) 转换 备注 F_BOOL bool BIT NOT NULL Boolean     F_BOOL_NULL bool? BIT Boolean     F_SBYTE sbyte INT8 NOT NULL SByte sbyte_   F_SBYTE_NULL sbyte? INT8 SByte sbyte_   F_BYTE byte UINT8 NOT NULL Byte     F_BYTE_NULL byte? UINT8 Byte     F_SHORT short INT16 NOT NULL Int16     F_SHORT_NULL short? INT16 Int16     F_USHORT ushort UINT16 NOT NULL UInt16 ushort_   F_USHORT_NULL ushort? UINT16 UInt16 ushort_   F_INT int INT32 NOT NULL Int32     F_INT_NULL int? INT32 Int32     F_UINT uint UINT32 NOT NULL UInt32 uint_   F_UINT_NULL uint? UINT32 UInt32 uint_   F_LONG long INT64 NOT NULL Int64     F_LONG_NULL long? INT64 Int64     F_ULONG ulong UINT64 NOT NULL UInt64 ulong_   F_ULONG_NULL ulong? UINT64 UInt64 ulong_   F_FLOAT float FLOAT NOT NULL Double   不转兼容 F_FLOAT_NULL float? FLOAT Double   不转兼容 F_DOUBLE double DOUBLE NOT NULL Double     F_DOUBLE_NULL double? DOUBLE Double     F_DECIMAL decimal DECIMAL NOT NULL Decimal   存取不一:<F_DECIMAL>: [-79228162514264300000000000000] != [-79228162514264337593543950335] F_DECIMAL_NULL decimal? DECIMAL Decimal   存取不一:<F_DECIMAL>: [-79228162514264300000000000000] != [-79228162514264337593543950335] F_CHAR char TEXT NOT NULL String     F_CHAR_NULL char? TEXT String     F_STRING string TEXT NOT NULL String     F_STRING_NULL string TEXT String     F_DATETIME DateTime TEXT NOT NULL String     F_DATETIME_NULL DateTime? TEXT String                

二、 C# vs MySQL:

C# MySQL 字段名 类型 库类型 GetFieldType(#) 转换 备注 F_BOOL bool BOOL NOT NULL Boolean     F_BOOL_NULL bool? BOOL NULL Boolean     F_SBYTE sbyte TINYINT NOT NULL SByte sbyte_   F_SBYTE_NULL sbyte? TINYINT NULL SByte sbyte_   F_BYTE byte TINYINT UNSIGNED NOT NULL Byte     F_BYTE_NULL byte? TINYINT UNSIGNED NULL Byte     F_SHORT short SMALLINT NOT NULL Int16     F_SHORT_NULL short? SMALLINT NULL Int16     F_USHORT ushort SMALLINT UNSIGNED NOT NULL UInt16 ushort_   F_USHORT_NULL ushort? SMALLINT UNSIGNED NULL UInt16 ushort_   F_INT int INT NOT NULL Int32     F_INT_NULL int? INT NULL Int32     F_UINT uint INT UNSIGNED NOT NULL UInt32 uint_   F_UINT_NULL uint? INT UNSIGNED NULL UInt32 uint_   F_LONG long BIGINT NOT NULL Int64     F_LONG_NULL long? BIGINT NULL Int64     F_ULONG ulong BIGINT UNSIGNED NOT NULL UInt64 ulong_   F_ULONG_NULL ulong? BIGINT UNSIGNED NULL UInt64 ulong_   F_FLOAT float FLOAT NOT NULL Single   极值溢出 F_FLOAT_NULL float? FLOAT NULL Single   极值溢出 F_DOUBLE double DOUBLE NOT NULL Double     F_DOUBLE_NULL double? DOUBLE NULL Double     F_DECIMAL decimal DECIMAL NOT NULL Decimal   极值溢出 F_DECIMAL_NULL decimal? DECIMAL NULL Decimal   极值溢出 F_CHAR char CHARACTER NOT NULL String   中文报错 F_CHAR_NULL char? CHARACTER NULL String   中文报错 F_STRING string VARCHAR(50) NOT NULL String     F_STRING_NULL string VARCHAR(50) NULL String     F_DATETIME DateTime DATETIME NOT NULL DateTime     F_DATETIME_NULL DateTime? DATETIME NULL DateTime                

三、 C# vs MSSQL:

C# MSSQL 字段名 类型 库类型 GetFieldType(#) 转换 备注 F_BOOL bool bit NOT NULL Boolean     F_BOOL_NULL bool? bit NULL Boolean     F_SBYTE sbyte smallint NOT NULL Int16 sbyte_short   F_SBYTE_NULL sbyte? smallint NULL Int16 sbyte_short   F_BYTE byte tinyint NOT NUL; Byte     F_BYTE_NULL byte? tinyint NULL Byte     F_SHORT short smallint NOT NULL Int16     F_SHORT_NULL short? smallint NULL Int16     F_USHORT ushort int NOT NULL Int32 ushort_int   F_USHORT_NULL ushort? int NULL Int32 ushort_int   F_INT int int NOT NULL Int32     F_INT_NULL int? int NULL Int32     F_UINT uint bigint NOT NULL Int64 uint_long   F_UINT_NULL uint? bigint NULL Int64 uint_long   F_LONG long bigint NOT NULL Int64     F_LONG_NULL long? bigint NULL Int64     F_ULONG ulong real NOT NULL Single ulong_float   F_ULONG_NULL ulong? real NULL Single ulong_float   F_FLOAT float real NOT NULL Single     F_FLOAT_NULL float? real NULL Single     F_DOUBLE double float NOT NULL Double     F_DOUBLE_NULL double? float NULL Double     F_DECIMAL decimal decimal NOT NULL Decimal   极值溢出 F_DECIMAL_NULL decimal? decimal NULL Decimal   极值溢出 F_CHAR char char(1) NOT NULL String     F_CHAR_NULL char? char(1) NULL String     F_STRING string varchar(50) NOT NULL F_STRING:     F_STRING_NULL string varchar(50) NULL String     F_DATETIME DateTime datetime NOT NULL DateTime   必须介于 1/1/1753 12:00:00 AM 12/31/9999 11:59:59 PM 之间。 F_DATETIME_NULL DateTime? datetime NULL DateTime                

四、C# vs Oracle:

C# Oracle 字段名 类型 库类型 GetFieldType(#) 转换 备注 F_BOOL bool CHAR(1) NOT NULL String bool_string   F_BOOL_NULL bool? CHAR(1) String bool_string   F_SBYTE sbyte NUMBER(3) NOT NULL Int16 sbyte_short   F_SBYTE_NULL sbyte? NUMBER(3) Int16 sbyte_short   F_BYTE byte NUMBER(3) NOT NULL Int16 byte_short   F_BYTE_NULL byte? NUMBER(3) Int16 byte_short   F_SHORT short NUMBER(5) NOT NULL Int32 short_int   F_SHORT_NULL short? NUMBER(5) Int32 short_int   F_USHORT ushort NUMBER(5) NOT NULL Int32 ushort_int   F_USHORT_NULL ushort? NUMBER(5) Int32 ushort_int   F_INT int NUMBER(10) NOT NULL Int64 int_long   F_INT_NULL int? NUMBER(10) Int64 int_long   F_UINT uint NUMBER(10) NOT NULL Int64 uint_long   F_UINT_NULL uint? NUMBER(10) Int64 uint_long   F_LONG long NUMBER(19) NOT NULL Decimal long_decimal   F_LONG_NULL long? NUMBER(19) Decimal long_decimal   F_ULONG ulong NUMBER(19) NOT NULL Decimal ulong_decimal   F_ULONG_NULL ulong? NUMBER(19) Decimal ulong_decimal   F_FLOAT float BINARY_FLOAT NOT NULL Single     F_FLOAT_NULL float? BINARY_FLOAT Single     F_DOUBLE double BINARY_DOUBLE NOT NULL Double   极值溢出 F_DOUBLE_NULL double? BINARY_DOUBLE Double   极值溢出 F_DECIMAL decimal DECIMAL(33,3) NOT NULL Decimal     F_DECIMAL_NULL decimal? DECIMAL(33,3) Decimal     F_CHAR char CHAR(1) NOT NULL String     F_CHAR_NULL char? CHAR(1) String     F_STRING string VARCHAR(50) NOT NULL String   不允许空字符 F_STRING_NULL string VARCHAR(50) String   不允许空字符 F_DATETIME DateTime TIMESTAMP NOT NULL DateTime   大值读取报错 F_DATETIME_NULL DateTime? TIMESTAMP DateTime   大值读取报错            

附、类型转换:

using System;
using System.Collections.Generic;
using System.Text; namespace vJine.Core.ORM { public class TypeConverter { public class sbyte_ /*: IConverter<sbyte>*/ { public static sbyte CONV_Q(object V) { return (sbyte)V; } } public class ushort_ /*: IConverter<ushort>*/ { public static ushort CONV_Q(object V) { return (ushort)V; } } public class uint_ /*: IConverter<uint>*/ { public static uint CONV_Q(object V) { return (uint)V; } } public class ulong_ /*: IConverter<ulong>*/ { public static ulong CONV_Q(object V) { return (ulong)V; } } public class bool_string /*: IConverter<bool>*/ { public static object CONV_I(object V) { if ((bool)V == true) { return "1"; } else { return "0"; } } public static bool CONV_Q(object V) { if ((string)V == "1") { return true; } else { return false; } } } public class sbyte_short /*: IConverter<sbyte>*/ { public static object CONV_I(object V) { return Convert.ToInt16(V); } public static sbyte CONV_Q(object V) { return Convert.ToSByte(V); } } public class byte_short /*: IConverter<byte>*/ { public static object CONV_I(object V) { return Convert.ToInt16(V); } public static byte CONV_Q(object V) { return Convert.ToByte(V); } } public class short_int /*: IConverter<short>*/ { public static object CONV_I(object V) { return Convert.ToInt32(V); } public static short CONV_Q(object V) { return Convert.ToInt16(V); } } public class ushort_int /*: IConverter<ushort>*/ { public static object CONV_I(object V, string Name) { return Convert.ToInt32(V); } public static ushort CONV_Q(object V, string Name) { return Convert.ToUInt16(V); } } public class int_long /*: IConverter<int>*/ { public static object CONV_I(object V) { return Convert.ToInt64(V); } public static int CONV_Q(object V) { return Convert.ToInt32(V); } } public class uint_long /*: IConverter<uint>*/ { public static object CONV_I(object V) { return Convert.ToInt64(V); } public static uint CONV_Q(object V) { return Convert.ToUInt32(V); } } public class long_decimal /*: IConverter<long>*/ { public static object CONV_I(object V) { return decimal.Parse(V.ToString()); } public static long CONV_Q(object V) { return long.Parse(V.ToString()); } } public class ulong_float /*: IConverter<ulong>*/ { public static object CONV_I(object V) { return Convert.ToSingle(V); } public static ulong CONV_Q(object V) { return Convert.ToUInt64(V); } } public class ulong_decimal /*: IConverter<ulong>*/ { public static object CONV_I(object V) { return decimal.Parse(V.ToString()); } public static ulong CONV_Q(object V) { return ulong.Parse(V.ToString()); } } public class float_double /*: IConverter<float>*/ { public static object CONV_I(object V) { return Convert.ToDouble(V); } public static float CONV_Q(object V) { return Convert.ToSingle(V); } } public class char_string /*: IConverter<char>*/ { public static object CONV_I(object V) { if (V is Char) { return V; } else if (V is string) { string chars = (string)V; if (chars == "") { return ''\0''; } else { return chars[0]; } } else { throw new OrmException("Fail To Convert String[{0}] To Char", V); } } public static char CONV_Q(object V) { return ((string)V)[0]; } } public class DateTime_ /*: IConverter<DateTime>*/ { public static object CONV_I(object V) { return V; } public static DateTime CONV_Q(object V) { return (DateTime)V; } } } }
View Code

 

django 连接 mssql 数据库 (django 1.11.11 sql server 2008 R2)

django 连接 mssql 数据库 (django 1.11.11 sql server 2008 R2)

 

模块使用的是 pcodbc+django-pyodbc-azure

1 pip install django-pyodbc-azure 
2 pip install pyodbc

版本分别为

pyodbc==4.0.26

django-pyodbc-azure==2.1.0.0

创建数据库连接

DATABASES = {
    ''default'': {
        ''ENGINE'': ''sql_server.pyodbc'',
        ''HOST'': ''127.0.0.1'',
        ''PORT'': '''',
        ''NAME'': ''test'',
        ''USER'': ''sa'',
        ''PASSWORD'': ''123'',
        ''OPTIONS'': {
            ''driver'': ''ODBC Driver 13 for SQL Server'',
            ''MARS_Connection'': True,
        }
    }
}

# set this to False if you want to turn off pyodbc''s connection pooling
# 不想用pyodbc连接就把这句加上?
DATABASE_CONNECTION_POOLING = False

在对应的 app/models.py 添加 model 

from django.db import models

# Create your models here.
class userinfo(models.Model):
    #如果没有models.AutoField,默认会创建一个id的自增列
    name = models.CharField(max_length=30)
    email = models.EmailField()
    memo = models.TextField()

项目文件下目录下执行

python manage.py makemigrations
python manage.py migrate

报错

django.db.utils.InterfaceError: (''IM002'', ''[IM002] [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 (0) (SQLDriverConnect)'')

原因是未安装 ODBC 驱动

前往微软官网下载驱动

https://www.microsoft.com/zh-CN/download/details.aspx?id=53339

Microsoft® ODBC Driver 13.1 for SQL Server

如果下载其他版本 ''driver'': 字段要自行修改 

再次执行

1 python manage.py makemigrations
2 python manage.py migrate

查看数据库

如出现以上表说明连接成功

 

关于数据库 SQL 语句的注释 (mysql,oracle,mssql)sql数据库怎么注释的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于(转)C# 数据类型映射 (SQLite,MySQL,MSSQL,Oracle)、C# 多数据库组件包,支持 MSSQL+Oracle+MySQL + 用户操作手册 | C/S 开发框架、C# 数据类型映射 (SQLite,MySQL,MSSQL,Oracle)、django 连接 mssql 数据库 (django 1.11.11 sql server 2008 R2)等相关知识的信息别忘了在本站进行查找喔。

本文标签: