ADO.NET之使用DataGridView控件显示从服务器上获取的数据

时间:2023-03-08 21:58:03
今天回顾下ADO.NET中关于使用DataGridiew控件显示数据的相关知识

理论整理:
  使用 DataGridView 控件,可以显示和编辑来自多种不同类型的数据源的表格数据。
  SqlDataAdapter是 DataSet和 SQL Server之间的桥接器,用于检索和保存数据。SqlDataAdapter通过对数据源使用适当的Transact-SQL语句映射 Fill(它可填充DataSet中的数据以匹配数据源中的数据)和 Update(它可更改数据源中的数据以匹配 DataSet中的数据)来提供这一桥接。当SqlDataAdapter填充 DataSet时,它为返回的数据创建必需的表和列(如果这些表和列尚不存在)
 ADO.NET 的核心组件
1、Connections 连接和管理数据库事务
2、Commands 向数据库发送命令
3、DataReaders 直接读取流数据
4、DataSets 和DataSetsCommands 对驻留内存中的数据进行存储和操作
SQL Connection数据库连接
    //创建连接数据库字符串
1、string conn = "server=SQL服务器 ; uid=用户名 ; pwd =密码 ; database=数据库名 ";
//开始进行连接SQL_Server
2、SQLConnection myConn = SQLConnection( conn) ;
//打开SQL_Server的连接
3、myConn.Open();
ConnectionString 中的关键字值的有效名称
Application Name 应用程序名称
initial Catalog /Database 数据库的名称
Intergrated Security / Trusted_Connection 当为false时,将在连接中指定的用户ID和密码。当为trues时,将使用当前的windows身份份验证
Password/Pwd
User ID
Data Source/Server :要连接的SQL Server实例的名称或网络地址
其他属性
ConnectionTimeout:获取在尝试建立连接时终止尝试并生产错误之前所等待的时间
Database:获取当前数据库或连接打开后要使用的数据库的名称
Data Source:获取要连接的SQL Server实例的名称
PacketSize:获取用来与SQLServer的实例通信的网络数据包的大小(以字节为单位)
ServerVersion:获取包含客户端连接的SQL Server实例版本的字符串
State:指示SqlConnection的状态
Workstationld:获取标识数据库客户端的一个字符串 实验环境:通过在WinForm中使用DataGridView控件,点击Button按钮显示从数据库中读取的数据。好了,现在上代码:
 private void button1_Click(object sender, EventArgs e)
{
//1、创建基于Windwos身份登录验证的SQL Server的连接字符串
string str_conn = "server=.; DataBase=stuDB; Trusted_Connection=true";//integrated Security=true";
#region
/*
*创建基于SQL用户身份验证的连接字符串
* string str_conn = "server=.; database= stuDB; uid=sa; pwd=A123456a;";
*
*备注:上述字符串相关参数可以等价于
* server=. ==>Data Source=.
* DataBase=stuDB ==>Initial Catalog=stuDB
* Trusted_Connection=true ==>Integrated Security=True
*/
#endregion //用于从数据库中获取数据的查询字符串
string str_select = "select * from stuInfo"; //2、开始建立建立并打开连接
SqlConnection myconn = new SqlConnection(str_conn);
myconn.Open(); //3、创建SQLDataAdapter连接,从数据库中读取数据
SqlDataAdapter sql_Adapter = new SqlDataAdapter(str_select, myconn); //4、创建DataSet连接
DataSet dataset1 = new DataSet(); //5、使用SqlDataAdapater.Fill(DataSet_Name,index_name)方法将读取的数据存入DataSet定义的名为employee的Datatable中,其中employee表用于数据的标识(索引)
sql_Adapter.Fill(dataset1, "employee"); //6、将DataTable表中employee表的视图赋值给控件DataGridView以便输出
this.dataGridView1.DataSource = dataset1.Tables["employee"].DefaultView; //7、关闭数据库连接
myconn.Close();
}