您的位置:首页 > 数据库

C#连接数据库的两种方法

2016-07-29 11:23 295 查看
第一种借助OleDbConnection类实现连接(个人感觉不如第二种好)

详细代码如下:

                //连接到数据库

                OleDbConnection sconn = new OleDbConnection("Provider=SQLOLEDB;Data Source=win2008r2;Initial Catalog=goods;User ID=sa;Password=*****");

                //sconn.ConnectionString = "Provider=SQLOLEDB;Data Source=win2008r2;Initial Catalog=goods;User ID=sa;Password=*****";

                //与acess相连时,字段包括Provider,User ID,Data Source

                sconn.Open();

                //使用DataAdapter连接数据源

                OleDbDataAdapter adaper1 = new OleDbDataAdapter();

                string sql = "Select * from Test";

                adaper1.SelectCommand = new OleDbCommand(sql, sconn);

                DataSet dset = new DataSet();

                adaper1.Fill(dset, "TestChange");

                //释放内存空间

                dset.Dispose();

                sconn.Dispose();

                //从数据源读取数据

                for (int i = 0; i < dset.Tables["TestChange"].Rows.Count; i++)

                {

                    Console.WriteLine(dset.Tables["TestChange"].Rows[i][0].ToString();

                }

                Console.Read();

                sconn.Close();//关闭连接

第二种方法是使用SqlConnection进行连接:

详细代码如下:

            //连接到数据库

            string s = "Data Source=win2008r2;Initial Catalog=goods;Integrated Security=True";//采用Windows验证模式登陆

            SqlConnection conn = new SqlConnection(s);

            conn.Open();

            //创建连接

            SqlCommand cmd = conn.CreateCommand();

            cmd.CommandText = "select * from Test";

            SqlDataAdapter adapter = new SqlDataAdapter(cmd);

            DataSet dt = new DataSet();

            adapter.Fill(dt,"TestNew");

            /*  

             * 如果使用DataTable用来接收数据的话,Fill方法体中只能传入一个参数

             * DataTable dtable=new DataTable();

             * adapter.Fill(dtable);

             * 读取数据时直接dt.Rows[].Count即可

             *这个感兴趣的可以自己试试

             * */

            for (int i = 0;i < dt.Tables["TestNew"].Rows.Count; i++)

            {

                Console.WriteLine(dt.Tables["TestNew"].Rows[i][1].ToString());

            }

            Console.ReadLine();

            //释放内存,并且关掉连接

            conn.Dispose();

            cmd.Dispose();

            conn.Close();

写之前记得将需要引入的类库引入,不然有的方法提示不出来

运行后会出来控制台窗体输出打印的内容
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c# 数据库