zoukankan      html  css  js  c++  java
  • 第十四章

     ADO.ENT的主要组件

      提供两个组件,用来访问和处理数据:.NET Framework 数据程序和DataSet(数据集)

      .NET Framework:是专门为数据处理及快速地只进,只读访问数据而设计的组件。使用它可以连接数据源,执行命令和检索结果,直接对数据进行操作 。

      DataSet:是专门为独立于任何数据源的数据访问而设计的。使用它,可以不必直接和数据源打交道,大批量地操作数据,也可以将数据绑定在控件上 。

     

    .NET Framework 数据提供程序

      .NET Framework 用于SQL Server的数据提供程序:提供对Microsoft  SQL  Server数据的访问。使用System.Data.SqlClient 命名空间

      .NET Framework  用于OLE DB  的数据提供程序:提供对OLE DB  公开的数据源中数据的访问。使用System.Data.OleDb命名空间

      .NET Framework 用于ODBC 的数据提供程序 :提供使用ODBC  公开的数据源中数据的访问。使用System.Data.Odbc命名空间

    1.string sqlcon="Data Source=.;Initial Calalog=MySchool;User ID=sa;Pwd=.";


      Connection:打开数据库连接

      程序与数据库沟通的桥梁

      SqlConnection con=new SqlConnection(sqlcon);

        try

        {

        //可能发生异常的代码

        con.Open();

        }

        catch(Exception ex)

        {

      //捕获异常

        Console.WriteLine(ex);

        }

        finally

        {

        con.Close();

        //永远都会被执行
        }

      Command:向数据库发送命令,提交SQL命令并从数据源中返回结果

        string sql="select count(*) from Student where StudentNo='"+username+"' and LoginPwd='"+password+"'";

      //向数据库发送一条SQL语句

        SqlCommand command=new SqlCommand(sql,con);

      //结果

        int count=(int)command.ExecuteScalar();

        if(count>0)

        {

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

        }else

        {

        Console.WriteLine("没有此用户");

        }

     

     

    2.StringBuilder类: 用来定义可变字符串

      StringBuilder sb = new StringBuilder("");

      //追加字符串

        sb.Append("World");

        sb.Append("!");

        //W2orld

        sb.Insert(2, "2");

      //原字符串:Wo2rld! 截取之后:W2rld!

        sb.Remove(1, 2);

        //ToString()

        Console.WriteLine(sb.ToString());

      查询学生记录数

      //打开数据库连接

        con.Open();

      //使用StringBuilder追加SQL语句

        StringBuilder sb = new StringBuilder();

        sb.Append("select ");

        sb.Append(" Count(*) ");

        sb.Append(" from ");

        sb.Append("[Student]");

        Console.WriteLine(sb.ToString());

      //创建一个SqlCommand对象

        SqlCommand com = new SqlCommand(sb.ToString(),con);

        Console.WriteLine((int)com.ExecuteScalar());

        DataReader:从数据源中检索只读、只进的数据流,每次读取一行数据

        StringBuilder sb = new StringBuilder();

        sb.AppendLine("select");

        sb.AppendLine("[StudentNo]");

        sb.AppendLine(",[StudentName]");

        sb.AppendLine("from");

        sb.AppendLine("[Student]");

        SqlCommand com = new SqlCommand(sb.ToString(), con);

      //从数据源中检索只读、只进的数据流

        return com.ExecuteReader();

        SqlDataReader reader=GetStudentInfo();

        while (reader.Read())

        {

        Console.WriteLine("{0} {1}",reader["StudentNo"],reader["StudentName"]);

        }

        reader.Close();

        ExecuteNonQuery():

        StringBuilder sb = new StringBuilder();

        sb.AppendLine("Insert into");

        sb.AppendLine("[Grade]([GradeName])");

        sb.AppendLine("Values('" + gradeName + "')");

      //3.创建一个SqlCommand

        SqlCommand com = new SqlCommand(sb.ToString(),con);

      //4.返回执行结果

        return com.ExecuteNonQuery();

        Student stu = new Student();

        Console.WriteLine("请输入年级名称:");

        string gradename = Console.ReadLine();

        int count = stu.AddGrade(gradename);

        if (count > 0)

        {

        Console.WriteLine("success!");

        }

        else

        {

        Console.WriteLine("success mother!");

        }
  • 相关阅读:
    ajax 同步模式与异步模式
    Ajax -get 请求
    Ajax -post 请求
    Ajax 遵循HTTP协议
    Ajax 发送请求
    宽高自适应案例
    伸缩导航案例
    伸缩属性的 grow与 shrink
    伸缩布局
    hdu-5858 Hard problem(数学)
  • 原文地址:https://www.cnblogs.com/1287758807cjh/p/7759796.html
Copyright © 2011-2022 走看看