链接数据库操作数据库三部曲,多加练习
1.
 string strCnn = "server=.;database=students;integrated security=true";
//连接数据库需要的地址
sever=机器名,本地用.或机器名,其他机子用ip;database=数据库名;后面那个是windows身份验证跟sql身份验证的标志:与下边这句对比,下边这句是sql身份验证必须提供账号密码;
//string strCnn = "server=.;database=students;uid=sa;pwd=123";//连接数据库需要的地址2.
       SqlConnection sqlCnn = new SqlConnection();// 数据库实例化
       sqlCnn.ConnectionString = strCnn;//对实例化的数据库赋值完成连接       sqlCnn.open();//打开数据库
3.   //////
    //对数据库进行操作
   //////
        SqlCommand sqlCmm = new SqlCommand();
        sqlCmm.CommandText = "select * from student";
        sqlCmm.Connection = sqlCnn;
 //SqlDataAdapter更倾向于用来查数据
        SqlDataAdapter sqlDA = new SqlDataAdapter(sqlCmm);实例化 sqldataadapter用上边的sqlcommand方式进行查找
        /////SqlDataAdapter sqlDA = new SqlDataAdapter("select * from student", strCnn);
       
 DataSet ds = new DataSet(); //实例化dataset开辟一块网格式的空间
       
        sqlDA.Fill(ds);//用SqlDataAdapter查找到的数据放进DataSet开辟的空间里//////////////////////////////////////////////////////////////////////////////////////////////
dataset 开辟的空间里有多个datatable组成,
在这里我们也可以用datatable进行实例化查找的格式:
table[0].rows[1][3]第一个table里面第一行第三列的数据table[0].rows[1]["username"]第一个table里面第一行username的数据

解决方案 »

  1.   

    基本正确,不要忘记关闭数据连接:sqlCnn.Close();
    还有个数据阅读器没说,(*^__^*) 嘻嘻……。
      

  2.   

    数据库处理封装 GotDotNet.ApplicationBlocks.Data AdoHelper Dao 源码
    在GotDotNet.ApplicationBlocks.Data AdoHelper 源码的基础上进行封装处理使调用更方便。
    支持所有常用数据库
     
    下载链接:http://download.csdn.net/source/3227475
      

  3.   

    integrated security=true 的意思是集成验证,也就是说使用Windows验证的方式去连接到数据库服务器。这样方式的好处是不需要在连接字符串中编写用户名和密码,从一定程度上说提高了安全性。
    那么到底是用哪一个Windows身份呢?很多朋友说,使用当前用户的身份吧?这个回答不能算错,至少在Windows应用程序中是这样的。但如果换成是ASP.NET应用程序,则就不是了。
    如果是ASP.NET应用程序(网站或者服务),那么根据其运行宿主环境的不一样,可能会有差异
    1. Windows XP :ASPNET帐号
    2. Windows 2003或者以后的版本:NetWork Service帐号
    知道这个原理之后,那么如果你准备用Integrated security=true,则需要授予这两个帐号对于数据库的访问权限。
    但要注意一个问题(也是很多朋友疑惑的),就是在Visual Studio里面调试的时候,貌似又不是使用ASPNET这个帐号的。这是因为Visual Studio总是使用当前开发环境中,用户的Windows身份来发起请求的。
      

  4.   

    dataset应该是自动关闭的吧?!
      

  5.   

    在使用数据库连接对象时,如SqlConnection、SqlCommand、SqlDataReader等这些对象时,这些对象本身是非托管对象,在使用过后,GC机制不会自动回收这些对象。所以我建议在使用这些对象时使用using或者try/finally包裹,这样的话,在这些对象使用结束之后将会自动释放。我们也不必再担心哪些对象未被释放,而导致占用过多的内存。