C#实现连接数据库
C#实现连接数据库
一、Oracle
查询
public static DataTable QueryData() { DataTable dtResult = new DataTable(); try { using (OracleConnection oc = new OracleConnection(HttpContext.Current.Session["DBName"].ToString().Trim())) { oc.Open(); string sql = @" SELECT * FROM DUAL "; OracleDataAdapter oaCmd = new OracleDataAdapter(sql, oc); //oaCmd.SelectCommand.Parameters.Add("fDate", OracleType.VarChar, 50).Value = DateTime.Now.ToString("yyyy/MM/dd") + " " + "00:00:00"; //oaCmd.SelectCommand.Parameters.Add("eDate", OracleType.VarChar, 50).Value = DateTime.Now.ToString("yyyy/MM/dd") + " " + "23:59:59"; oaCmd.Fill(dtResult); oc.Close(); } } catch (Exception ex) { } return dtResult; }
更新
public static void DoInser(string login_user, string login_db) { try { //string strDBXMLFile = HttpContext.Current.Server.MapPath(HttpContext.Current.Request.ApplicationPath.ToString()) + @"\DB.XML"; //DataSet dsXML = new DataSet(); //dsXML.ReadXml(strDBXMLFile); //DataTable dtAEPDB = dsXML.Tables["DB_NAME"]; //DB 链接 string s = "Data Source=(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = ip地址 )(PORT =端口)))(CONNECT_DATA = (SID=SID号)(SERVER = DEDICATED)));uid = 用户名; password=密码;Connection Lifetime=60;Max Pool Size=50;Min Pool Size=0;Pooling=true"; using (OracleConnection oc = new OracleConnection(s)) { oc.Open(); string sql = @" INSERT INTO 表名 (栏位1, 栏位2, 栏位3,....) VALUES (栏位1值, 栏位2值, 栏位3值, ....) "; OracleCommand oaCmd = new OracleCommand(sql, oc); //oaCmd.Parameters.Add("参数", OracleType.VarChar, 30).Value = ""; oaCmd.CommandType = CommandType.Text; oaCmd.ExecuteNonQuery(); oc.Close(); } } catch (Exception ex) { } }
二、SQLServer
查询
public static DataTable QueryData() { DataTable dtResult = new DataTable(); try { using (SqlConnection sqlConnection = new SqlConnection(HttpContext.Current.Session["DBName"].ToString().Trim())) { sqlConnection.Open(); string sql = @" SELECT * FROM DUAL "; SqlDataAdapter sqlDa = new SqlDataAdapter(sql, sqlConnection); sqlDa.SelectCommand.Parameters.Add("fDate", SqlDbType.VarChar, 50).Value = DateTime.Now.ToString("yyyy/MM/dd") + " " + "00:00:00"; sqlDa.SelectCommand.Parameters.Add("eDate", SqlDbType.VarChar, 50).Value = DateTime.Now.ToString("yyyy/MM/dd") + " " + "23:59:59"; sqlDa.Fill(dtResult); sqlConnection.Close(); } } catch (Exception ex) { } return dtResult; }
更新
public static void DoInser(string login_user, string login_db) { try { string s = "数据库链接"; using (SqlConnection sqlConnection = new SqlConnection(s)) { sqlConnection.Open(); string sql = @" INSERT INTO 表名 (栏位1, 栏位2, 栏位3,....) VALUES (栏位1值, 栏位2值, 栏位3值, ....) "; SqlDataAdapter sqlDa = new SqlDataAdapter(sql, sqlConnection); sqlDa.InsertCommand.Parameters.Add("参数", SqlDbType.VarChar, 30).Value = ""; SqlCommand cmd = new SqlCommand(); cmd.CommandType = CommandType.Text; cmd.ExecuteNonQuery(); sqlConnection.Close(); } } catch (Exception ex) { } }
工具类
public DataTable ExecuteQuery(string sqlStr) //用于查询;其实是相当于提供一个可以传参的函数,到时候写一个sql语句,存在string里,传给这个函数,就会自动执行。 { SqlConnection con = new SqlConnection("MySqlCon"); con.Open(); SqlCommand cmd = new SqlCommand(); cmd.Connection = con; cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; DataTable dt = new DataTable(); SqlDataAdapter msda; msda = new SqlDataAdapter(cmd); msda.Fill(dt); con.Close(); return dt; } public int ExecuteUpdate(string sqlStr) //用于增删改; { SqlConnection con = new SqlConnection("MySqlCon"); con.Open(); SqlCommand cmd = new SqlCommand(); cmd.Connection = con; cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; int iud = 0; iud = cmd.ExecuteNonQuery(); con.Close(); return iud; }
本文来自博客园,作者:码农阿亮,转载请注明原文链接:https://www.cnblogs.com/wml-it/p/15148239.html
技术的发展日新月异,随着时间推移,无法保证本博客所有内容的正确性。如有误导,请大家见谅,欢迎评论区指正!
开源库地址,欢迎点亮:
GitHub:https://github.com/ITMingliang
Gitee: https://gitee.com/mingliang_it
GitLab: https://gitlab.com/ITMingliang
建群声明: 本着技术在于分享,方便大家交流学习的初心,特此建立【编程内功修炼交流群】,为大家答疑解惑。热烈欢迎各位爱交流学习的程序员进群,也希望进群的大佬能不吝分享自己遇到的技术问题和学习心得!进群方式:扫码关注公众号,后台回复【进群】。