ADO.NET数据库访问操作

使用Connection对象连接数据库

创建数据库连楼,使用 Comecio,对象(当使用 MJSOL 数据库时,为 MrSqCommecion 对象),Connection的构造方法和方法描述如下。
1.构造方法(使用一个参数的)


Connetion (Connectionsmino. comecionSring是连接字符串,连接字符串的参数主要包括服务器、  数据库用户名、数据库密码、数据库名。
构造连接字符串有以下两种方法(假定连接字符串名称为 conStr):(1) 直接构造,格式如下:


string constr="server=服务器名称;user id=登录数据库的用户名;password=登录数据库的密码;database=数据库名称";
(2)在配置文件中存储连接字符串,格式如下:


<connectionstrings>
<add name="连接字符串名称"connectionstring="server=服务器名称;user id=登
录数据库的用户名;password=登录数据库的密码;database=数据库名称”>

</connectionstrings>
在页面获取配置文件中的连接字符串,格式如下:
string constr = ConfigurationManager.connectionstrings[”连接字符串名称"].Connectionstring;
2.方法
 1Open():打开数据库。

  2 Close):关闭数据库。

操作步骤:

    (1) 启动VS,新建一个 Windows 窗体应用程序 StudentManageApplication。
    (2)双击Forml.cs, 切换到设计视图,从工具栏中拖曳一个Button 控件到窗体设计区
并调整控件大小进行布局。
     (3)在窗体设计区中右击窗体 FormI 和每一个控件,设置窗体和控件的相关属性。表6-4列出了窗体及控件属性。  

窗体及其控件属性设置
窗体和控件属性属性值
Form1text学生信息管理

button1

NamebtnConnect
Text连接数据库

(4)右击 SudentManageApplication 项目,添加 MySql.Data.dll引用,并在代码窗口中添加引用语句,程序代码如下:

 using mysql.Data.mysqllclient

(5)双击“连接数据库”按钮,为其添加单击事件处理程序,程序代码如下:

 private void btnConnect_Click(object sender, EventArgs e)
    {

  //创建连接字符串
    string constr = "server=localhost;user id=root;password=123456;database=studentmanage";
   MySglConnection con = new MySqlConnection(constr);con.Open();
   MessageBox.Show("数据库连接成功!");
   con.Close();

}

以上代码的功能是,首先定义连接字符串 conStr, 其中4个参数分别是服务器名称、登录数据库的用户名、登录数据库的密码以及数据库名称:然后创建一个 MySqlConnection 对象,其中连接字符串 conStr 作为构造方法的参数,并通过 MySqlConnection 对象调用OpenO方法来打开数据库,并提示用户“数据库连接成功!”;最后关闭连接。
(6)在解决方案资源管理器中右击 StudentManageApplication 项目,将其设为启动项目, 编译并运行。

用 Command 对象增加、修改和删除数据


使用 Command 对象增加、修改和删除数据库数据时,首先建立数据库连接;然后创
建 Command 对象,设置它的 CommandText 和 Connection 属性,并使用 Command对象的Parameters 属性设置输入参数;最后使用 Command 对象的 ExecuteNonQuery0方法执行数据增加、修改和删除命令。
【例6-3】增加、修改和删除学生信息。
【操作步骤】
(1) 启动 VS, 打开 Windows 窗体应用程序 StudentManageApplication。
(2)双击 Forml.cs,切换到设计视图,修改 FormI 窗体,从工具栏中拖曳3个 Button 控件到窗体设计区,并调整控件大小进行布局。
(3)在窗体设计区中右击窗体 Forml 和每一个控件,设置窗体和控件的相关属性。表6-6列出了新增控件属性。

控件属性设置
控件属性属性值
button4NamebtnInsert
Text增加
button5NamebtnUpdate
Text修改
button6NamebtnDelete
Text删除

(4) 双击“增加”按钮,为其添加单击事件处理程序,程序代码如下:

private void btnInsert_Click(object sender, EventArgs e)
{

 string sex ="0";
if (rdbFemale.Checked )
{

   Sex =

}
MySqlConnection con = new MySqlConnection(constr);
MySqlCommand cmd- new MySqlCommand ("insert 3 into
         (num, name, sex) values (@num, @name, @sex)",con);
cmd.Parameters.AddWithvalue ("@num", null);
cmd.Parameters.AddWithValue ("@name", txtName .Text );
cmd.Parameters.AddWithValue("@sex", sex);
con.Open();
cmd.ExecuteNonQuery();
con.close();
MessageBox.Show("成功增加一条数据!");

}

      以上代码的功能是,使用 MySglCommand对象实现数据的添加,其中 Command 对象中的SOL 语向中使用的参数,参数使用“@参数名”进行标识。例如,语句“MySqlCommand cmd = new MySqlCommand("insert into studentInfo(num, name, sex) values(@num, @name.@sex)", con);”中的@num、@name 和@sex 都是参数,分别代表学生的3项信息。定义参数后,需要将参数添加到 Command 对象的参数集合中并给参数赋值。例如,“cmd.Parameters.AddWithValue("@name", txtName .Text );”是将姓名文本框的值赋给参数@name.(5)双击“修改”按钮,为其添加单击事件处理程序,程序代码如下:
 

  private void btnUpdate Click(object sender, EventArgs e)
{

string sex -"0";
if (rdbFemale.Checked)
{

sex = "1";

}
MySqlConnection con 프 new MySqlConnection(conStr);
MysqlCommand cmd·- nev MysqlCommand ("update studentInfo-set -name=@name, sex=@sex where num=enum",con);
cmd.Parameters.Addwithvalue ("@name", txtName.rext);
cmd.Parameters.AddwithValue ("@sex", sex); olicd
cmd. Parameters.AddwithValue ("@nun", Convert.ToInt32 (txtNum.Text));

con.open();
cmd.ExecuteNonQuery();
con.Close();
MessageBox.Show("成功修改一条数据!");

}

(6) 双击“删除”按钮,为其添加单击事件处理程序,程序代码如下:
private void btnDelete Click (object sender, EventArgs e)

{
     MySglConnection con = new MySqlconnection(conStr);
    MySqlCommand cmd = new MySqlCommand("delete from studentInfo
   where
   num=@num", con);
   cmd.Parameters.Addwithvalue ("@num",Convert.ToInt32 (txtNum.Text));con.Open();
   cmd.ExecuteNonQuery();
   con.Close();
   MessageBox.Show("成功删除一条数据!");

}

(7)编译并运行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值