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;
    }

到此这篇关于C#连接数据库的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

你可能感兴趣的:(C#连接数据库的几种方法)