使用ADO.NET访问数据库

使用ADO.NET访问数据库

**************************************ADO.NET的使用步骤(!)*********************************

1.引用命名空间

using  System.Data.SqlClient;

2.创建Connection连接对象

SqlConnection  conn = new  SqlConnection(连接字符串);

3.打开连接

conn.Open();

4.编写SQL语句

string   sql=””;

5.创建Command执行命令对象 (需要用到sql语句和连接对象)

SqlCommand  cmd=new  SqlCommand (sql, conn);

6. 用执行命令对象执行sql语句  并接受执行结果  

int  result =cmd. ExecuteNonQuery();

注意!!此处调用的方法不一定,要根据sql语句类型而定

例如: ExecuteNonQuery() 增删改类型的SQL    ExecuteReader()查询多行多列的SQL   ExecuteScalar()返回单行单列的SQL

7.处理结果(将结果用来 输出 判断)

Cw(result)

8.关闭连接

conn.Close();

 

***********************************提示*********************************

执行只返回一个值的sql语句,调用ExecuteScalar()方法,该方法返回object类型,因此需要强转

数据类型 变量名 = Convert.To数据类型(命令对象.ExecuteScalar());

例如:   int  num= Convert.ToInt32(cmd.ExecuteScalar());  

  string  name = Convert.ToString(cmd.ExecuteScalar());  

  

 

****************************** ******示例代码**********************************

 

 //1.创建Connection连接对象(桥梁)

    SqlConnection conn = new SqlConnection("Data Source=ACCP-02056;Initial Catalog=MySchool;Integrated Security=True");

   //2.打开连接

   conn.Open();

    //3.编写Sql

   string sql = string.Format("select  COUNT(*)  from  Student where StudentName='{0}' and loginpwd='{1}'",name,pwd);

    //4.创建Command执行命令对象(车)

    SqlCommand cmd = new SqlCommand(sql, conn);

   //5.用执行命令对象执行sql语句  并接受执行结果   

    int result = Convert.ToInt32(cmd.ExecuteScalar());

    //6.处理结果

    if (result == 0)

    {

         Console.WriteLine("登录失败");

    }

    else

    {

        Console.WriteLine("登录成功");

    }

    //7.关闭连接

    conn.Close();              

 

 

***************************************************异常处理****************************************

try

{

连接对象.Open();

}

catch(Exception ex)

{

cw(ex.Message);

}

finally

{

连接对象.Close();

}

 

  

!!!注意:如果try中代码没有出现异常,catch不执行

        如果出现异常,try中异常位置以下的代码不执行,执行catch

finally不管怎样都执行

        catchfinally可以不写(至少保留一个)

 

posted @ 2018-12-12 18:42  九之者  阅读(530)  评论(0编辑  收藏  举报