C#同数据库访问技术总结(七)综合示范

综上所述示范

  说明:前面介绍了那么多,光说不练假把式,还是做个实例吧。

  表:首先你如未雨绸缪等同张表,这个好准备吧。我们盖生说明也条例。

 

  1**ExecuteScalar方法**

    ExecuteScalar方法执行回来单个值的下令。例如,如果想获得Student数据库中表studentInfo的学童的总人数,则好动用是艺术执行SQL查询:

    Select count(*) from
studentInfo .

(1) 建立Windows Application 应用程序

(2) 在Form1上添加一个按钮Button控件和一个标Label签控件 

(3)
双击按钮,自动进入代码编辑界面

  首先补充加命名空间: using
System.Data.SqlClient;

(4)编写按钮的Click事件之处理事件代码:

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

using System.Data.SqlClient;

namespace DataBase

{

  public partial class Form1 : Form

{

public Form1()

{

  InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

  try

  {

    //定义命令文本

    string commandText = "select count(*) from studentInfo";

    //定义连接字符串

    string connString="server=(local);Initial Catalog=Student;Integrated Security=SSPI;";

    //string connString= "server=(local);user id=sa;Initial Catalog=Student;pwd=;";

    //定义Connection对象

    SqlConnection conn = new SqlConnection();

    //设置Connection对象的ConnectionString属性

    conn.ConnectionString = connString;

    //新建Command对象,此时conn对象并不需要打开连接

    SqlCommand cmd = new SqlCommand(commandText, conn);

    //打开连接

    conn.Open();

    //执行命令,返回结果

    string count = cmd.ExecuteScalar().ToString();

    //记得关闭连接

    conn.Close();

    this.label1.Text = "共有" + count + "位学生!";

}

catch (Exception ex)

{

    MessageBox.Show("数据库连接失败" + ex.Message);

}

    }

  }

}

 

  执行结果界面如图:

   图片 1

剖析代码:

第1步是引入命名空间:System.Data.SqlClient,表示将应用SQL Server.NET 数据提供次:
using
System.Data.SqlClient;

第2步是
按钮button1_Click单击事件备受第一新成立了连年并安装了彼连续字符串属性:

string connString=”server=(local);Initial
Catalog=Student;Integrated Security=SSPI;”;

//string connString=
“server=(local);user id=sa;Initial Catalog=Student;pwd=;”;

//定义Connection对象

SqlConnection conn = new
SqlConnection();

//设置Connection对象的ConnectionString属性

conn.ConnectionString =
connString;

其三步,新建Command
对象,并将命名文本和连接对象传递让那个构造函数:

SqlCommand cmd = new
SqlCommand(commandText, conn);

其中,commandText为头定义之命名文本:

string commandText = “select
count(*) from studentInfo”;

这会儿conn对象没打开,因为这不是必须的。

季步
现在需要执行操作了,所以率先使打开连接,然后实施操作:

conn.Open();

string count =
cmd.ExecuteScalar().ToString();

由于ExecuteScalar()方法返回路为object,因此利用了ToString()方法将该转移为string以后赋值给count。

瞩目:一般使用ExecuteScalar()方法时还必须用到类型转换。

第五步数据库访问结束之后当及时关闭连接,这是一个好习惯:

corm.Close();

第六步最后将读取的音透过label1著出:

this.label1.Text=”共有”+count+”位学生!”;

面的代码中连从未点名Command对象的CommandType属性,这时CommandType的价将为默认的Text,当然也可经过如下代码显示指定其种类,但立刻不是得的。

cmd.CommandType=CommandType.Text;

相关文章