ADO.NET 连接数据库

 MySchool 数据库结构介绍


ADO.NET 概述


ADO.NET 的主要组件

ADO.NET-DataSet(数据集)-.NET Framework 数据提供程序
         独立于数据源的数据访问        只进、只读访问数据

ADO.NET 操作数据库结构图


.NET 数据提供程序类型
.NET Framework
数据提供程序        说明
SQL Server
.NET 数据提供程序        Microsoft SQL Server 数据源
                               System.Data.SqlClient 命名空间
OLE DB
.NET 数据提供程序        OLE DB 公开的数据源
                               System.Data.OleDb 命名空间
ODBC
.NET 数据提供程序        ODBC 公开的数据源
                               System.Data.Odbc 命名空间
Oracle
.NET 数据提供程序        Oracle 数据源
                               System.Data.OracleClient 命名空间

为什么使用 Connection


连接到本机的 MySchool 数据库


// 数据库连接字符串
string connString =
      "Data Source= . ;Initial Catalog=MySchool;User ID=sa";

// 创建 Connection 对象
SqlConnection connection = new SqlConnection(connString);
            
// 打开数据库连接
connection.Open();
MessageBox.Show("打开数据库连接成功");               
            
// 关闭数据库连接
connection.Close();
MessageBox.Show("关闭数据库连接成功");

Connection 主要成员
属性        说明
ConnectionString         连接字符串
方法        说明
Open        打开数据库连接
Close        关闭数据库连接

连接数据库的步骤:
1、定义连接字符串
Data Source=服务器名;Initial Catalog=数据库名; User ID=用户名;Pwd=密码

2、创建 Connection 对象
SqlConnection connection =  new SqlConnection(connString);

3、打开与数据库的连接
connection.Open( );

命名空间                                   对应的 Connection 对象
System.Data.SqlClient         SqlConnection
System.Data.OleDb                     OleDbConnection
System.Data.Odbc                         OdbcConnection
System.Data.OracleClient        OracleConnection

连接到本机的 pubs 数据库
// 连接字符串
string connString =  "Data Source=.;Initial Catalog=pubs;User ID=sa";
// 创建Connection 对象      
SqlConnection connection = new SqlConnection(connString);
connection.Open( );  // 打开数据库连接
……
connection.Close( ); // 关闭数据库连接

使用 try…catch 块捕获和处理异常
try
{      
      connection.Open();
      // ……
      connection.Close();
}
catch(处理的异常类型)
{
      // 错误处理代码
}

异常处理
异常:在运行时发生的错误
异常处理:预知可能发生的异常,在程序中编码处理

操作数据库时可能发生异常:
无法打开数据库
无法读取数据
数据操作出错
……

finally 块——无论是否发生异常,都会执行
try
{      
      connection.open();
      // ……
}
catch(处理的异常类型)
{
      
}
finally
{      
      connection.Close();
}

处理异常
修改示例1的代码,增加 try 语句块



如果 try 中没有出现异常,显示哪几个消息框?
try
{
        // … 可能出现异常的代码
        MessageBox.Show("try块");               
}
catch (Exception e)
{
        MessageBox.Show("catch块");
}
finally
{
        MessageBox.Show("finally块");
}

为什么使用 Command
查询 MySchool 数据库 Student 表中记录的数目


Command 的主要成员
属性                           说明
Connection         Command对象使用的数据库连接
CommandText        执行的SQL语句

方法                        说明
ExecuteNonQuery        执行不返回行的语句,如UPDATE等
ExecuteReader        返回DataReader对象
ExecuteScalar        返回单个值,如执行COUNT(*)

使用Command步骤:
1、创建数据库连接
2、定义 SQL 语句
3、创建 Command 对象
4、执行命令

SqlConnection connection = new SqlConnection(connString);
string sql = "SELECT COUNT(*) FROM Student";
connection.Open();// 打开数据库连接
SqlCommand command = new SqlCommand(sql, connection);
int num = (int)command.ExecuteScalar();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值