C#中几种执行SQL的方法
C#中几种执行SQL的方法
1.不同的数据库
private InfoLightDBTools dbTools; //#ORACLE# this.dbTools = new InfoLightDBTools(clientInfo, dbName); private InfoLightDBTXTools dbTXTools; //#ORACLE# 要结合事务处理使用:BeginTransaction(),Commit(),Rollback(),EndTransaction() this.dbTXTools = new InfoLightDBTXTools(clientInfo, dbName); private InfoLightMSTools mdbtool; //#SQL SERVER#
2.SQL Server中执行方法
public DataTable GetManPowerData(string vLineName, string vShift) { DataTable dt = new DataTable(); ExecutionResult exeRes = new ExecutionResult(); List<SqlParameter> mParams; SqlParameter mLine_NameParam, mDNSParam; string sql = @"select * from manpower where lineid = (select ID from lines where line = @LINENAME AND (SMTCS IS NULL OR SMTCS = 'C')) and dns = @dns order by time1_start "; mParams = new List<SqlParameter>(); mLine_NameParam = new SqlParameter("@LINENAME", SqlDbType.VarChar, 20); mLine_NameParam.Value = vLineName; mParams.Add(mLine_NameParam); mDNSParam = new SqlParameter("@dns", SqlDbType.VarChar, 20); mDNSParam.Value = 0; mParams.Add(mDNSParam); exeRes = this.rMSDBTools.ExecuteQueryDS(sql, mParams); if (exeRes.Status) dt = ((DataSet)exeRes.Anything).Tables[0]; return dt; }
3.Oracle中执行方法
public DataTable getModel(string line_name) { DataTable dt = new DataTable(); ExecutionResult exeRes = new ExecutionResult(); DBParameter dbParam = new DBParameter(); string sql = @" SELECT DISTINCT T.MODEL_NAME FROM sfism4.R_LINE_MODEL_STATUS_T t WHERE T.LINE_NAME = :line_name "; dbParam.Clear(); dbParam.Add("line_name", OracleType.VarChar, line_name); exeRes = this.mdbtools.ExecuteQueryDS(sql, dbParam.GetParameters()); if (exeRes.Status) dt = ((DataSet)exeRes.Anything).Tables[0]; return dt; }
4.执行更新操作
public ExecutionResult DoDelete(string sap_plant, string wip_sn, string up_data1) { ExecutionResult exeRes = new ExecutionResult(); exeRes.Message = ""; DBParameter dbParam = new DBParameter(); #region sql string sql = @" DELETE SFISM4.U_UP2INTERFACE_TODOLIST_T A WHERE A.CUST_NO = :CUST_NO AND A.TYPE = 'IMS_STOP' AND A.JOB_STATUS = 'OK' AND A.WIP_SN = :WIP_SN AND A.UP_DATA1 = :UP_DATA1 "; #endregion #region Param dbParam.Clear(); dbParam.Add("CUST_NO", OracleType.NVarChar, sap_plant); dbParam.Add("WIP_SN", OracleType.NVarChar, wip_sn); dbParam.Add("UP_DATA1", OracleType.NVarChar, up_data1); #endregion try { exeRes = this.mdbtools.ExecuteUpdate(sql, dbParam.GetParameters()); } catch (Exception ex) { exeRes.Message += ex.Message; exeRes.Status = false; } return exeRes; }
本文来自博客园,作者:码农阿亮,转载请注明原文链接:https://www.cnblogs.com/wml-it/p/12975393.html
技术的发展日新月异,随着时间推移,无法保证本博客所有内容的正确性。如有误导,请大家见谅,欢迎评论区指正!
开源库地址,欢迎点亮:
GitHub:https://github.com/ITMingliang
Gitee: https://gitee.com/mingliang_it
GitLab: https://gitlab.com/ITMingliang
建群声明: 本着技术在于分享,方便大家交流学习的初心,特此建立【编程内功修炼交流群】,为大家答疑解惑。热烈欢迎各位爱交流学习的程序员进群,也希望进群的大佬能不吝分享自己遇到的技术问题和学习心得!进群方式:扫码关注公众号,后台回复【进群】。