DBHelper类

合集下载

SqlServerDBHelper类

SqlServerDBHelper类

SqlServerDBHelper类using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Data;using System.Data.SqlClient;namespace DAL{/// <summary>/// 连接数据库类/// </summary>public class SqlServerDBHelper{/// <summary>/// 连接数据库/// </summary>/// <returns></returns>public static SqlConnection GetConnection(){string conString = System.Configuration.ConfigurationManager.ConnectionStrings["connstring"].ToString();//定义连接数据库字符集 return new SqlConnection(conString);//返回连接数据库对象}/// <summary>/// ⽤数据填充的⽅法查询/// </summary>/// <param name="type"></param>/// <param name="sql"></param>/// <param name="pares"></param>/// <returns></returns>public DataSet GetDataSet(CommandType type, string sql, params SqlParameter[] pares){SqlConnection con = GetConnection();DataSet ds = new DataSet();SqlDataAdapter da = new SqlDataAdapter(sql, con);mandType = type;if (pares != null){foreach (SqlParameter pare in pares){da.SelectCommand.Parameters.Add(pare);}}da.Fill(ds);return ds;}public DataSet GetDataSet(string sql, params SqlParameter[] pares){return GetDataSet(CommandType.Text, sql, pares);}public SqlDataReader GetSqlDataReader(CommandType type, string sql,out SqlConnection con, params SqlParameter[] pares){con = GetConnection();SqlCommand cmd = new SqlCommand(sql, con);mandType = type;con.Open();if (pares != null){foreach (SqlParameter pare in pares){cmd.Parameters.Add(pare);}}return cmd.ExecuteReader(CommandBehavior.CloseConnection);}public SqlDataReader GetSqlDataReader(string sql,out SqlConnection con, params SqlParameter[] pares) {return GetSqlDataReader(CommandType.Text, sql,out con, pares);}public bool MidfyDB(CommandType type, string sql, params SqlParameter[] pares){bool falg = false;SqlConnection con = GetConnection();SqlCommand cmd = new SqlCommand(sql, con);mandType = type;if (pares != null){foreach (SqlParameter pare in pares){cmd.Parameters.Add(pare);}}SqlTransaction trans = null;try{con.Open();trans = con.BeginTransaction();cmd.Transaction = trans;cmd.ExecuteNonQuery();mit();falg = true;}catch (Exception e){trans.Rollback();throw e;}finally{con.Close();}return falg;}public bool MidfyDB(string sql, params SqlParameter[] pares){return MidfyDB(CommandType.Text, sql, pares);}/// <summary>/// 查询聚合函数类/// </summary>/// <param name="type">数据库操作的类型如:StoredProcedure(存储过程)、Text(⽂本)</param>/// <param name="sql">数据库操作字符集</param>/// <param name="paras">查询数据库时所⽤的参数</param>/// <returns>object(⼀般为单个值)</returns>public object GetScalar(CommandType type, string sql, params SqlParameter[] paras){SqlConnection con = GetConnection();//创建数据集对象SqlCommand cmd = new SqlCommand(sql, con);//操作数据库对象mandType = type;//数据库操作的类型//如果参数不为空if (paras != null){//遍历参数数组foreach (SqlParameter para in paras){cmd.Parameters.Add(para);//给操作数据库对象加上参数}}con.Open();//打开数据库连接object obj = cmd.ExecuteScalar();//返回⼀个⼀⾏⼀列的植con.Close();//关闭数据库连接return obj;}public object GetScalar(string sql, params SqlParameter[] paras){return GetScalar(CommandType.Text, sql, paras);}#region 数据填充DataTablepublic static DataTable DataFill(SqlCommand cmd){DataTable dt = new DataTable();cmd.Connection = GetConnection();SqlDataAdapter _da = new SqlDataAdapter(cmd);_da.Fill(dt);return dt;}#endregion//public DataTable DateTel(string sql)//{// SqlConnection con = GetConnection();// SqlCommand cmd = new SqlCommand(sql, con);// SqlDataAdapter da = new SqlDataAdapter(cmd);// DataTable dt = new DataTable();// da.Fill(dt);// return dt;//}internal DataSet GetDataSet(string sql, int UID){throw new NotImplementedException();}public static SqlCommand GetCommand(string text){SqlCommand cmdObject = new SqlCommand();mandText = text;return cmdObject;}public static void PreparedCommand(SqlCommand cmd, SqlParameter[] pars) {foreach (SqlParameter p in pars){cmd.Parameters.Add(p);}}}}。

C#OracleHelper帮助类

C#OracleHelper帮助类

C#OracleHelper帮助类using System;using System.Data;using System.Configuration;using System.Linq;using System.Web;using System.Xml.Linq;using Oracle.ManagedDataAccess.Client;public class OraDBHelper{public static OracleCommand cmd = null;public static OracleConnection conn = null;public static string connstr = ConfigurationManager.ConnectionStrings["defaultNew"].ConnectionString;public OraDBHelper(){ }#region建⽴Oracle数据库连接对象///<returns>返回⼀个数据库连接的OracleConnection对象</returns>public static OracleConnection init(){try{conn = new OracleConnection(connstr);if (conn.State != ConnectionState.Open){conn.Open();}}catch (Exception e){throw new Exception(e.Message.ToString());}return conn;}#endregion#region设置OracleCommand对象///<param name="cmd">OracleCommand对象</param>///<param name="cmdText">命令⽂本</param>///<param name="cmdType">命令类型</param>///<param name="cmdParms">参数集合</param>private static void SetCommand(OracleCommand cmd, string cmdText, CommandType cmdType, OracleParameter[] cmdParms) {cmd.Connection = conn;mandText = cmdText;mandType = cmdType;if (cmdParms != null){cmd.Parameters.AddRange(cmdParms);}}#endregion#region执⾏相应的Oracle sql语句,返回相应的DataSet对象///<param name="sqlstr">sql语句</param>///<returns>返回相应的DataSet对象</returns>public static DataSet GetDataSet(string sqlstr){DataSet set = new DataSet();try{init();catch (Exception e){throw new Exception(e.Message.ToString());}return set;}#endregion#region执⾏sql语句,返回DataSet对象///<param name="sqlstr">sql语句</param>///<param name="tableName">表名</param>///<returns>返回DataSet对象</returns>public static DataSet GetDataSet(string sqlstr, string tableName){DataSet set = new DataSet();try{init();OracleDataAdapter adp = new OracleDataAdapter(sqlstr, conn);adp.Fill(set, tableName);conn.Close();}catch (Exception e){throw new Exception(e.Message.ToString());}return set;}#endregion#region执⾏不带参数的sql语句,返回受影响的⾏数///<param name="cmdstr">增,删,改sql语句</param>///<returns>返回受影响的⾏数</returns>public static int ExecuteNonQuery(string cmdText){int count;try{init();cmd = new OracleCommand(cmdText, conn);count = cmd.ExecuteNonQuery();conn.Close();}catch (Exception ex){throw new Exception(ex.Message.ToString());}return count;}#endregion#region执⾏带参数的Oracle sql语句或存储过程,返回⾏数///<param name="cmdText">带参数的sql语句和存储过程名</param>///<param name="cmdType">命令类型</param>///<param name="cmdParms">参数集合</param>///<returns>返回受影响的⾏数</returns>public static int ExecuteNonQuery(string cmdText, CommandType cmdType, OracleParameter[] cmdParms) {int count;try{init();cmd = new OracleCommand();SetCommand(cmd, cmdText, cmdType, cmdParms);count = cmd.ExecuteNonQuery();cmd.Parameters.Clear();conn.Close();}catch (Exception ex){throw new Exception(ex.Message.ToString());#endregion#region执⾏不带参数sql语句,返回⼀个从数据源读取数据的OracleDataReader对象///<param name="cmdstr">相应的sql语句</param>///<returns>返回⼀个从数据源读取数据的OracleDataReader对象</returns>public static OracleDataReader ExecuteReader(string cmdText){OracleDataReader reader;try{init();cmd = new OracleCommand(cmdText, conn);reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);}catch (Exception ex){throw new Exception(ex.Message.ToString());}return reader;}#endregion#region执⾏带参数的sql语句或存储过程,返回⼀个从数据源读取数据的OracleDataReader对象///<param name="cmdText">sql语句或存储过程名</param>///<param name="cmdType">命令类型</param>///<param name="cmdParms">参数集合</param>///<returns>返回⼀个从数据源读取数据的OracleDataReader对象</returns>public static OracleDataReader ExecuteReader(string cmdText, CommandType cmdType, OracleParameter[] cmdParms) {OracleDataReader reader;try{init();cmd = new OracleCommand();SetCommand(cmd, cmdText, cmdType, cmdParms);reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);}catch (Exception ex){throw new Exception(ex.Message.ToString());}return reader;}#endregion#region执⾏不带参数sql语句,返回结果集⾸⾏⾸列的值object///<param name="cmdstr">相应的sql语句</param>///<returns>返回结果集⾸⾏⾸列的值object</returns>public static object ExecuteScalar(string cmdText){object obj;try{init();cmd = new OracleCommand(cmdText, conn);obj = cmd.ExecuteScalar();conn.Close();}catch (Exception ex){throw new Exception(ex.Message.ToString());}return obj;}#endregion#region执⾏带参数sql语句或存储过程,返回结果集⾸⾏⾸列的值object///<param name="cmdText">sql语句或存储过程名</param>///<param name="cmdType">命令类型</param>///<param name="cmdParms">返回结果集⾸⾏⾸列的值object</param>///<returns></returns>public static object ExecuteScalar(string cmdText, CommandType cmdType, OracleParameter[] cmdParms)try{init();cmd = new OracleCommand();SetCommand(cmd, cmdText, cmdType, cmdParms); obj = cmd.ExecuteScalar();conn.Close();}catch (Exception ex){throw new Exception(ex.Message.ToString());}return obj;}#endregion}。

android sqlite 插入数据的方法

android sqlite 插入数据的方法

android sqlite 插入数据的方法在 Android 中使用 SQLite 数据库进行数据插入的方法如下: 1. 创建一个继承自 `SQLiteOpenHelper` 的数据库辅助类,用于创建和管理数据库以及表结构。

在该类中,需要实现 `onCreate()` 方法来创建数据库和表,以及 `onUpgrade()` 方法来处理数据库版本升级。

```javapublic class DBHelper extends SQLiteOpenHelper {private static final String DATABASE_NAME = "mydatabase.db";private static final int DATABASE_VERSION = 1;public DBHelper(Context context) {super(context, DATABASE_NAME, null, DATABASE_VERSION); }@Overridepublic void onCreate(SQLiteDatabase db) {// 创建表结构String createTableQuery = "CREATE TABLE mytable (id INTEGER PRIMARY KEY, name TEXT)";db.execSQL(createTableQuery);}@Overridepublic void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {// 处理数据库版本升级if (oldVersion < 2) {// 执行相应的更新操作}}}```2. 在需要插入数据的地方,获取可写入的数据库实例,并使用`insert()` 方法插入数据。

```javaDBHelper dbHelper = new DBHelper(context);SQLiteDatabase db = dbHelper.getWritableDatabase();ContentValues values = new ContentValues();values.put("name", "John Doe");long newRowId = db.insert("mytable", null, values);if (newRowId != -1) {// 插入成功} else {// 插入失败}db.close();```在上述代码中,我们首先实例化了 `DBHelper` 类,并获取了可写入的数据库实例。

第1讲_Win三层架构数据库应用开发入门_3

第1讲_Win三层架构数据库应用开发入门_3

6利用MyDbHelper实现数据库管理在“ChA104_查询数据库”和“ChA105_插删改数据库”项目中,仔细对比代码会发现,无论是查询还是插删改,大部分代码都是相似的,这是违背面向对象编程思想的,我们需要将这些代码进行抽象,经过分析和归纳,将各种数据库操作抽象成一个类MyDbHelper。

6.1创建MyDbHelper在解决方案中添加一个“类库”的项目,项目名称为“MyDbHelper”,然后添加二个类文件:Encrypt.cs和SqlDbHelper.cs,如下图。

Encrypt.cs文件与“ChA103_加密配置”项目中的Encrypt.cs文件内容完全相同,只是命名空间的名称不同,你可以将那个文件用鼠标拖到“MyDbHelper”项目中,然后修改命名空间为“MyDbHelper”,也可添加类文件Encrypt.cs后,再复制文件中的内容。

SqlDbHelper.cs文件是我们抽象的关于SQL Server数据操作的方法类,包括了数据库连接、查询、执行命令等方法,代码如下。

///<summary>///得到当前连接对象///</summary>///<returns>连接对象</returns>static public SqlConnection GetConn(){if (_connStr == "")GetConnStr();var conn = new SqlConnection(_connStr);return conn;}public void OpenConnection(){_conn = GetConn();_conn.Open();}public void CloseConnection(){if (_conn.State != ConnectionState.Closed) _conn.Close();}//-------------- 执行命令 ----------------public bool ExecuteNonQuery(string strCmd) {var cmd = new SqlCommand(strCmd);try{OpenConnection();cmd.Connection = _conn;cmd.ExecuteNonQuery();return true;}catch (Exception){return false;}finally{CloseConnection();}}//-------------- 返回一个值 ----------------public object ExecuteScalar(string strCmd){var cmd = new SqlCommand(strCmd);try{OpenConnection();cmd.Connection = _conn;return cmd.ExecuteScalar();}catch (Exception)注意:SqlDbHelper类中在获取数据库连接时是采用从App.config或web.config文件中获取连接字符串的方式,而且连接字符串的名字指定为“ConnectionString”,为了支持加密连接字符串和不加密连接字符串两种方式,在App.config或web.config文件中,还需要在appSettingsa节定义一个ConnEncrypt的设置,App.config文件的设置参见如下:注意:这个App.config或web.config文件不是放在“MyDbHelper”项目中的,而是放在需要应用“MyDbHelper”这个类库的项目中。

使用DBHelper

使用DBHelper

使用DBHelper处女作代码o(∩_∩)o...哈哈!使用DBHelper完成数据层的访问及执行public class DBHelper{private static string connString;static DBHelper(){connString = ConfigurationManager.ConnectionStrings["MySchoolConnectio nString"].ToString();}public SqlConnection GetConnection(bool hasOpen){SqlConnection conn = new SqlConnection(connString);if (hasOpen)conn.Open();return conn;}public DataSet GetDataSet(string sql, CommandType cmdType, string dsName){DataSet ds = new DataSet();SqlConnection conn = new SqlConnection(connString);SqlDataAdapter objAdapter = new SqlDataAdapter(sql, conn);mandType = cmdType;objAdapter.Fill(ds, dsName);conn.Close();conn.Dispose();return ds;}public SqlDataReader GetReader(string sql, CommandType cmdType, params SqlParameter[] sqlParams){SqlCommand cmd = new SqlCommand();mandType = cmdType;mandText = sql;if (sqlParams != null)cmd.Parameters.AddRange(sqlParams);SqlConnection conn = GetConnection(true);cmd.Connection = conn;returncmd.ExecuteReader(CommandBehavior.CloseConnection);}public int ExecuteSql(string sql, CommandType cmdType, params SqlParameter[] sqlParams){int ret = 0;SqlCommand cmd = new SqlCommand();mandType = cmdType;mandText = sql;if (sqlParams != null)cmd.Parameters.AddRange(sqlParams);SqlConnection conn = GetConnection(true);cmd.Connection = conn;try{ret = (int)cmd.ExecuteNonQuery();}finally{conn.Close();}return ret;}}调用DBHelper:public class GradeService{#region Private Members//从配置文件中读取数据库连接字符串private readonly string connString = ConfigurationManager.ConnectionStrings["MySchoolConnectio nString"].ToString();private readonly string dboOwner = ConfigurationManager.ConnectionStrings["DataBaseOwner"].T o String();#endregion#region Public Methods/// <summary>/// 获得全部年级信息/// <returns>年级数据集</returns>public DataSet GetAllGrades(){DBHelper dbHelper = new DBHelper();returndbHelper.GetDataSet(dboOwner+".usp_SelectGradesAll",Comm andType.StoredProcedure,"grade");}/// <summary>/// 根据年级名称获得年级ID/// </summary>/// <param name="gradeName">年级名称</param>/// <returns>年级ID</returns>public int GetGradeIDByGradeName(string gradeName){int number = 0;DBHelper dbHelper = new DBHelper();SqlParameter sqlParams = new SqlParameter("@GradeName", SqlDbType.NVarChar, 50);sqlParams.Value = gradeName;SqlDataReader objReader =dbHelper.GetReader(dboOwner + ".usp_SelectGradeByGradeName", CommandType.StoredProcedure, sqlParams);if (objReader.Read())number = Convert.ToInt32(objReader["GradeID"]);objReader.Close();objReader.Dispose();return number;}/// 新增年级/// </summary>public void AddGrade(DataSet dsGrade){DBHelper dbHelper = new DBHelper();SqlParameter[] sqlParams= new SqlParameter[1];sqlParams[0] = new SqlParameter("@GradeName", SqlDbType.NVarChar, 50);//sqlParams[1] = new SqlParameter("@GradeID", SqlDbType.Int);sqlParams[0].Value = dsGrade.Tables["Grade"].Rows[0]["GradeName"];//sqlParams[1].Value = 0;dbHelper.ExecuteSql(dboOwner + ".usp_SelectGradeByGradeName",CommandType.StoredProcedure, sqlParams);}#endregion}。

DBHelper帮助类

DBHelper帮助类
public static DataTable ExecuteAsDataTable(string CommandText, params Parameter[] Params)
{
DataTable dataTable = null;
try
//:@在这里处理异常
throw new Exception(ex.Message);
//:$
}
}
/// <summary>
/// 执行指定sql语句,并返回DataTable对象
/// </summary>
/// <param name="CommandText">sql语句</param>
/// <param name="Params">参数列表</param>
/// <returns></returns>
}
/// <summary>
/// 获取一个数据库连接对象
/// </summary>
/// <returns></returns>
public static SqlConnection GetSqlConnection()
}
finally
{
try
{
_sCon.Close();
}
catch (Exception ex2)
DBHelper.Parameter[] sps = new DBHelper.Parameter[] {
new DBHelper.Parameter("@PageIndex",pageIndex)

使用T4模板,自动生成Dapper实体类

使用T4模板,自动生成Dapper实体类

使⽤T4模板,⾃动⽣成Dapper实体类⼯具类DbHelper.ttinclude:<#@ assembly name="System.Core.dll" #><#@ assembly name="System.Data.dll" #><#@ assembly name="System.Data.DataSetExtensions.dll" #><#@ assembly name="System.Xml.dll" #><#@ import namespace="System" #><#@ import namespace="System.Xml" #><#@ import namespace="System.Linq" #><#@ import namespace="System.Data" #><#@ import namespace="System.Data.SqlClient" #><#@ import namespace="System.Collections.Generic" #><#@ import namespace="System.IO" #><#+public class DbHelper{public static List<DbTable> GetDbTables(string connectionString, string database){string sql = $@"SELECT as TableName ,prop.value as TableRemarkfrom {database}.sys.objects objleft join {database}.sys.extended_properties prop on prop.major_id=obj.object_id and prop.minor_id=0where obj.type='U' and <>'sysdiagrams' order by ";DataTable dt = GetDataTable(connectionString, sql);return dt.Rows.Cast<DataRow>().Select(row => new DbTable{TableName = row.Field<string>("TableName"),TableRemark = row.Field<string>("TableRemark")??""}).ToList();}public static List<DbColumn> GetDbColumns(string connectionString, string database, string tableName){#region SQLstring sql = $@"WITH indexCTE AS(SELECTic.column_id,ic.object_idFROM {database}.sys.indexes idxINNER JOIN {database}.sys.index_columns ic ON idx.index_id = ic.index_id AND idx.object_id = ic.object_idWHERE idx.object_id =OBJECT_ID('{tableName}') AND idx.is_primary_key=1)selectCAST(CASE WHEN indexCTE.column_id IS NULL THEN 0 ELSE 1 END AS BIT) IsPrimaryKey,CAST(CASE WHEN colm.default_object_id !=0 or colm.is_identity=1 THEN 1 ELSE 0 END AS BIT) IsDefaultKey, ColumnName, ColumnType,colm.is_nullable IsNullable,prop.value Remarkfrom {database}.sys.columns colminner join {database}.sys.types systype on colm.system_type_id=systype.system_type_id and er_type_id=er_type_id left join {database}.sys.extended_properties prop on colm.object_id=prop.major_id and colm.column_id=prop.minor_idleft join indexCTE ON colm.column_id=indexCTE.column_id AND colm.object_id=indexCTE.object_idwhere colm.object_id=OBJECT_ID('{tableName}')order by colm.column_id";#endregionDataTable dt = GetDataTable(connectionString, sql);return dt.Rows.Cast<DataRow>().Select(row => new DbColumn(){IsPrimaryKey = row.Field<bool>("IsPrimaryKey"),IsDefaultKey = row.Field<bool>("IsDefaultKey"),ColumnName = row.Field<string>("ColumnName"),ColumnType = row.Field<string>("ColumnType"),IsNullable = row.Field<bool>("IsNullable"),Remark = row.Field<string>("Remark")??"",}).ToList();}public static DataTable GetDataTable(string connectionString, string commandText, params SqlParameter[] parms) {using (SqlConnection connection = new SqlConnection(connectionString)){SqlCommand command = connection.CreateCommand();mandText = commandText;command.Parameters.AddRange(parms);SqlDataAdapter adapter = new SqlDataAdapter(command);DataTable dt = new DataTable();adapter.Fill(dt);return dt;}}}/// <summary>/// 表结构/// </summary>public sealed class DbTable{/// <summary>/// 表名称/// </summary>public string TableName { get; set; }/// <summary>/// 表描述/// </summary>public string TableRemark { get; set; }}/// <summary>/// 表字段结构/// </summary>public sealed class DbColumn{/// <summary>/// 是否主键/// </summary>public bool IsPrimaryKey { get; set; }/// <summary>/// 是否默认值/// </summary>public bool IsDefaultKey { get; set; }/// <summary>/// 字段名称/// </summary>public string ColumnName { get; set; }/// <summary>/// 字段类型/// </summary>public string ColumnType { get; set; }/// <summary>/// 是否允许空/// </summary>public bool IsNullable { get; set; }/// <summary>/// 描述/// </summary>public string Remark { get; set; }/// <summary>/// 数据库类型对应的C#类型/// </summary>public string CSharpType{get{return SqlServerDbTypeMap.MapCsharpType(ColumnType); }}/// <summary>////// </summary>public Type CommonType{get{return SqlServerDbTypeMap.MapCommonType(ColumnType); }}}/// <summary>///ORM 类型转换/// </summary>public class SqlServerDbTypeMap{public static string MapCsharpType(string dbtype){if (string.IsNullOrEmpty(dbtype)) return dbtype;dbtype = dbtype.ToLower();string csharpType = "object";switch (dbtype){case "bigint": csharpType = "long"; break;case "binary": csharpType = "byte[]"; break;case "bit": csharpType = "bool"; break;case "char": csharpType = "string"; break;case "date": csharpType = "DateTime"; break;case "datetime": csharpType = "DateTime"; break;case "datetime2": csharpType = "DateTime"; break;case "datetimeoffset": csharpType = "DateTimeOffset"; break; case "decimal": csharpType = "decimal"; break;case "float": csharpType = "double"; break;case "image": csharpType = "byte[]"; break;case "int": csharpType = "int"; break;case "money": csharpType = "decimal"; break;case "nchar": csharpType = "string"; break;case "ntext": csharpType = "string"; break;case "numeric": csharpType = "decimal"; break;case "nvarchar": csharpType = "string"; break;case "real": csharpType = "Single"; break;case "smalldatetime": csharpType = "DateTime"; break;case "smallint": csharpType = "short"; break;case "smallmoney": csharpType = "decimal"; break;case "sql_variant": csharpType = "object"; break;case "sysname": csharpType = "object"; break;case "text": csharpType = "string"; break;case "time": csharpType = "TimeSpan"; break;case "timestamp": csharpType = "byte[]"; break;case "tinyint": csharpType = "byte"; break;case "uniqueidentifier": csharpType = "Guid"; break;case "varbinary": csharpType = "byte[]"; break;case "varchar": csharpType = "string"; break;case "xml": csharpType = "string"; break;default: csharpType = "object"; break;}return csharpType;}public static string MapDBType(string dbtype){if (string.IsNullOrEmpty(dbtype)) return dbtype;dbtype = dbtype.ToLower();string csharpType = "object";switch (dbtype){case "bigint": csharpType = "DbType.Int64"; break;case "binary": csharpType = "DbType.Binary"; break;case "bit": csharpType = "DbType.Boolean"; break;case "char": csharpType = "DbType.String"; break;case "date": csharpType = "DbType.DateTime"; break;case "datetime": csharpType = "DbType.DateTime"; break;case "datetime2": csharpType = "DbType.DateTime2"; break;case "datetimeoffset": csharpType = "DbType.DateTimeOffset"; break; case "decimal": csharpType = "DbType.Decimal"; break;case "float": csharpType = "DbType.Double"; break;case "image": csharpType = "DbType.Binary"; break;case "int": csharpType = "DbType.Int32"; break;case "money": csharpType = "DbType.Currency"; break;case "nchar": csharpType = "DbType.StringFixedLength"; break; case "ntext": csharpType = "DbType.String"; break;case "numeric": csharpType = "DbType.Decimal"; break;case "nvarchar": csharpType = "DbType.String"; break;case "real": csharpType = "DbType.Single"; break;case "smalldatetime": csharpType = "DbType.DateTime"; break; case "smallint": csharpType = "DbType.Int16"; break;case "smallmoney": csharpType = "DbType.Decimal"; break;case "sql_variant": csharpType = "DbType.Object"; break;case "sysname": csharpType = "DbType.Object"; break;case "text": csharpType = "DbType.String"; break;case "time": csharpType = "DbType.DateTime"; break;case "timestamp": csharpType = "DbType.Binary"; break;case "tinyint": csharpType = "DbType.Byte"; break;case "uniqueidentifier": csharpType = "DbType.Guid"; break;case "varbinary": csharpType = "DbType.Binary"; break;case "varchar": csharpType = "DbType.AnsiString"; break;case "xml": csharpType = "DbType.Xml"; break;default: csharpType = "DbType.Object"; break;}return csharpType;}public static Type MapCommonType(string dbtype){if (string.IsNullOrEmpty(dbtype)) return Type.Missing.GetType(); dbtype = dbtype.ToLower();Type commonType = typeof(object);switch (dbtype){case "bigint": commonType = typeof(long); break;case "binary": commonType = typeof(byte[]); break;case "bit": commonType = typeof(bool); break;case "char": commonType = typeof(string); break;case "date": commonType = typeof(DateTime); break;case "datetime": commonType = typeof(DateTime); break;case "datetime2": commonType = typeof(DateTime); break;case "datetimeoffset": commonType = typeof(DateTimeOffset); break; case "decimal": commonType = typeof(decimal); break;case "float": commonType = typeof(double); break;case "image": commonType = typeof(byte[]); break;case "int": commonType = typeof(int); break;case "money": commonType = typeof(decimal); break;case "nchar": commonType = typeof(string); break;case "ntext": commonType = typeof(string); break;case "numeric": commonType = typeof(decimal); break;case "nvarchar": commonType = typeof(string); break;case "real": commonType = typeof(Single); break;case "smalldatetime": commonType = typeof(DateTime); break; case "smallint": commonType = typeof(short); break;case "smallmoney": commonType = typeof(decimal); break;case "sql_variant": commonType = typeof(object); break;case "sysname": commonType = typeof(object); break;case "text": commonType = typeof(string); break;case "time": commonType = typeof(TimeSpan); break;case "timestamp": commonType = typeof(byte[]); break;case "tinyint": commonType = typeof(byte); break;case "uniqueidentifier": commonType = typeof(Guid); break;case "varbinary": commonType = typeof(byte[]); break;case "varchar": commonType = typeof(string); break;case "xml": commonType = typeof(string); break;default: commonType = typeof(object); break;}return commonType;}}#>新建⽂本模板Model.tt:<#@ template debug="false" hostspecific="false" language="C#" #><#@ output extension=".cs" #><#@ assembly name="System.Core.dll" #><#@ assembly name="System.Data.dll" #><#@ assembly name="System.Data.DataSetExtensions.dll" #><#@ assembly name="System.Xml.dll" #><#@ import namespace="System" #><#@ import namespace="System.Xml" #><#@ import namespace="System.Linq" #><#@ import namespace="System.Data" #><#@ import namespace="System.Data.SqlClient" #><#@ import namespace="System.Collections.Generic" #><#@ import namespace="System.IO" #><#@ include file="DbHelper.ttinclude" #>using Dapper.Contrib.Extensions;using System;//------------------------------------------------------------------------------//⽣成时间 <#=DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")#>//------------------------------------------------------------------------------namespace mis{<#foreach(var dbTable in DbHelper.GetDbTables(config.ConnectionString, config.DbDatabase)){#>/// <summary>/// <#=dbTable.TableRemark.Replace("\r\n", " ")#>/// </summary>[Table("<#= dbTable.TableName #>")]public class <#= dbTable.TableName #>{<# foreach(DbColumn column in DbHelper.GetDbColumns(config.ConnectionString, config.DbDatabase, dbTable.TableName)){#>/// <summary>/// <#=column.Remark.Replace("\r\n", " ")#>/// </summary><#if (column.IsPrimaryKey) { if (column.IsDefaultKey)#>[Key] <#else#>[ExplicitKey] <#}#>public <#= column.CSharpType#><# if(monType.IsValueType && column.IsNullable){#>?<#}#> <#=column.ColumnName#> {get;set;}<#}#>}<#}#>}<#+public class config{public static readonly string DbDatabase="MIS";public static readonly string ConnectionString=$"Data Source=123.56.253.200;Initial Catalog={DbDatabase};User ID=sa;pwd=zxhd@123"; }#>。

安卓命名规范

安卓命名规范

标识符命名法驼峰(Camel)命名法:又称小驼峰命名法,除首单词外,其余所有单词的第一个字母大写。

英文缩写原则:1 较短的单词可通过去掉“元音”形成缩写2 较长的单词可取单词的头几个字母形成缩写3 此外还有一些约定成俗的英文单词缩写.下面为常见的英文单词缩写:程序中使用单词缩写原则:不要用缩写,除非该缩写是约定俗成的。

命名规范:1 包(packages): 采用反域名命名规则,全部使用小写字母。

一级包名为com,二级包名为xx(可以是公司或则个人的随便),三级包名根据应用进行命名,四级包名为模块名或层2 类(classes):名词,采用大驼峰命名法,尽量避免缩写,除非该缩写是众所周知的,比如HTML,URL,如果类名称中包含单词缩写,则单词缩写的每个字母均应大写。

Adapter类 Adp或者Adapte 为后缀标识新闻详情适配器NewtDetailAdp或则直接 NewDetailAdapter解析类 Hlr为后缀标识首页解析类HomePosterHlr公共方法类 Tools或Manager为后缀标识线程池管理类:ThreadPoolManager日志工具类:LogTools数据库类以DBHelper后缀标识新闻数据库:NewDBHelper Service类以Service为后缀标识时间服务TimeServiceBroadcastReceive类以Broadcast为后缀标识时间通知TimeBroadcastContentProvider 以Provider为后缀标识直接写的共享基础类以Base开头BaseActivity,BaseFragment3 接口(interface):命名规则与类一样采用大驼峰命名法,多以able或ible结尾,如interface Runna ble ;interface Accessible 。

5 变量(variables)采用小驼峰命名法。

类中控件名称必须与xml布局id保持一致。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

ing System;ing System.Collections.Generic;ing System.Linq;ing System.Text;ing System.Data.SqlClient;ing System.Collections;ing System.Data;ing System.Configuration;ing System.Web;10.11.12.public sealed class SqlHelper13.{14.15.public static string connectionString = ConfigurationManager.ConnectionStrings["db_JXCconn"].ConnectionString;16.17.public SqlHelper()18. {19. }20.21. #region 公用方法22.public static int GetMaxID(string FieldName, string TableName)23. {24.string strsql = "select max(" + FieldName + ")+1 from " + TableName;25.object obj = SqlHelper.GetSingle(strsql);26.if (obj == null)27. {28.return 1;29. }30.else31. {32.return int.Parse(obj.ToString());33. }34. }35.36.public static bool Exists(string strSql)37. {38.object obj = SqlHelper.GetSingle(strSql);39.int cmdresult;40.if ((Object.Equals(obj, null)) || (Object.Equals(obj, System.DBNull.Value)))41. {42. cmdresult = 0;43. }44.else45. {46. cmdresult = int.Parse(obj.ToString());47. }48.if (cmdresult == 0)49. {50.return false;51. }52.else53. {54.return true;55. }56. }57.58.public static bool Exists(string strSql, params SqlParameter[] cmdParms)59. {60.object obj = SqlHelper.GetSingle(strSql, cmdParms);61.int cmdresult;62.if ((Object.Equals(obj, null)) || (Object.Equals(obj, System.DBNull.Value)))63. {64. cmdresult = 0;65. }66.else67. {68. cmdresult = int.Parse(obj.ToString());69. }70.if (cmdresult == 0)71. {72.return false;73. }74.else75. {76.return true;77. }78. }79. #endregion80.81. #region 执行简单SQL语句82./// <summary>83./// 执行SQL语句,返回影响的记录数84./// </summary>85./// <param name="SQLString">SQL语句</param>86./// <returns>影响的记录数</returns>87.public static int ExecuteSql(string SQLString)88. {ing (SqlConnection connection = new SqlConnection(connectionString))90. {ing (SqlCommand cmd = new SqlCommand(SQLString, connection))92. {93.try94. {95. connection.Open();96.int rows = cmd.ExecuteNonQuery();97.return rows;98. }99.catch (System.Data.SqlClient.SqlException E)100. {101. connection.Close();102.throw new Exception(E.Message);103. }104. }105. }106. }107.108./// <summary>109./// 执行SQL语句,返回影响的记录数适用于select语句110./// </summary>111./// <param name="SQLString">SQL语句</param>112./// <returns>影响的记录数</returns>113.public static int ExecuteSql2(string SQLString)114. {ing (SqlConnection connection = new SqlConnection(connectio nString))116. {ing (SqlCommand cmd = new SqlCommand(SQLString, connect ion))118. {119.try120. {121. connection.Open();122.int rows = Convert.ToInt32(cmd.ExecuteScalar());123.return rows;124. }125.catch (System.Data.SqlClient.SqlException E)126. {127. connection.Close();128.throw new Exception(E.Message);129. }130. }131. }132. }133.134./// <summary>135./// 执行多条SQL语句,实现数据库事务。

136./// </summary>137./// <param name="SQLStringList">多条SQL语句</param>138.public static void ExecuteSqlTran(ArrayList SQLStringList) 139. {ing (SqlConnection conn = new SqlConnection(connectionString))141. {142. conn.Open();143. SqlCommand cmd = new SqlCommand();144. cmd.Connection = conn;145. SqlTransaction tx = conn.BeginTransaction();146. cmd.Transaction = tx;147.try148. {149.for (int n = 0; n < SQLStringList.Count; n++)150. {151.string strsql = SQLStringList[n].ToString(); 152.if (strsql.Trim().Length > 1)153. {154. mandText = strsql;155. cmd.ExecuteNonQuery();156. }157. }158. mit();159. }160.catch (System.Data.SqlClient.SqlException E)161. {162. tx.Rollback();163.throw new Exception(E.Message);164. }165. }166. }167.168./// <summary>169./// 执行带一个存储过程参数的的SQL语句。

170./// </summary>171./// <param name="SQLString">SQL语句</param>172./// <param name="content">参数内容,比如一个字段是格式复杂的文章,有特殊符号,可以通过这个方式添加</param>173./// <returns>影响的记录数</returns>174.public static int ExecuteSql(string SQLString, string content) 175. {ing (SqlConnection connection = new SqlConnection(connectio nString))177. {178. SqlCommand cmd = new SqlCommand(SQLString, connection); 179. System.Data.SqlClient.SqlParameter myParameter = new Syst em.Data.SqlClient.SqlParameter("@content", SqlDbType.VarChar);180.181. myParameter.Value = content;182. cmd.Parameters.Add(myParameter);183.try184. {185. connection.Open();186.int rows = cmd.ExecuteNonQuery();187.return rows;188. }189.catch (System.Data.SqlClient.SqlException E)190. {191.throw new Exception(E.Message);192. }193.finally194. {195. cmd.Dispose();196. connection.Close();197. }198. }199. }200.201./// <summary>202./// 向数据库里插入图像格式的字段(和上面情况类似的另一种实例)203./// </summary>204./// <param name="strSQL">SQL语句</param>205./// <param name="fs">图像字节,数据库的字段类型为image的情况</param> 206./// <returns>影响的记录数</returns>207.public static int ExecuteSqlInsertImg(string strSQL, byte[] fs) 208. {ing (SqlConnection connection = new SqlConnection(connectio nString))210. {211. SqlCommand cmd = new SqlCommand(strSQL, connection); 212. System.Data.SqlClient.SqlParameter myParameter = new Syst em.Data.SqlClient.SqlParameter("@fs", SqlDbType.Binary);213. myParameter.Value = fs;214. cmd.Parameters.Add(myParameter);215.try216. {217. connection.Open();218.int rows = cmd.ExecuteNonQuery();219.return rows;220. }221.catch (System.Data.SqlClient.SqlException E)222. {223.throw new Exception(E.Message);224. }225.finally226. {227. cmd.Dispose();228. connection.Close();229. }230. }231. }232.233./// <summary>234./// 执行一条计算查询结果语句,返回查询结果(object)。

相关文档
最新文档