c# ado.net mysql_c#利用ado.net进行数据库开发的基本步骤

本文介绍了使用C# ADO.NET进行数据库开发的基本步骤,包括创建数据库连接、配置DataAdapter、操作DataSet以及数据绑定。通过示例展示了使用DataReader和DataAdapter从MySQL数据库中读取数据,并将结果展示在DataGrid中。同时,讨论了C#中decimal类型解决浮点数精度问题以及char类型的范围。
摘要由CSDN通过智能技术生成

c#利用ado.net进行数据库开发的基本步骤:

1。创建和数据库连接的connection 对象。

2。配置DataAdapter对象并创建和操作数据集DataSet。

3。将数据库中的表添加到DataSet中。

4。把数据集DataSet帮定到DataGrid上。利用DataAdapter 的Fill方法把数据填充到DataSet,最终的数据库中的数据显示在用户界面的DataGrid中。

c#中浮点数无法精确表达很多实数,它们表达的只是近似值。

为了解决这个问题,c#中提供了一种特殊的数据类型decimal.它可以精确到小数点后面28位。但范围却没有double那么大。

char类型范围为:65535个字符。

c#中从数据库查询记录的方法分类:c#开发研究

一般使用两种方法:

一种是通过DataReader对象直接访问;另一种则是通过数据集Dataset和Dataadapter对象访问.

使用ADO.NET的Datareader对象能从数据库中检索数据。检索出来的数据形成一个只读只进的数据流,存储在客户端的网络缓冲区内。Datareader对象的read方法可以前进到一下条记录。在默认情况下,每执行一次read方法只会在内存中存储一条记录系统的开销非常少。

创建datareader之前必须先创建sqlcommand对象,然后调用该对象的executereader方法来构造sqldatareader对象,而不是直接使用构造函数。

下面的示例程序完成的功能是访问sqlserver数据库,并使用datareader从northwind数据中读取记录,并将查询结果通过控制台输出。

code.gif 程序代码

using System;

using System.Data;

using System.Data.SqlClient;

namespace ReadDataFromDB{

class Class1{

static void Main(string[] args){

string myconn="Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind";

//需要执行的SQL语句

string mysql="select orderID,CustomerID from orders where CustomerID='CHOPS'";

//打开数据库连接。

SqlConnection myconnection=new SqlConnection(myconn);

myconnection.Open();

//创建SqlCommand 对象

SqlCommand mycommand=new(mysql,myconnection);

//通过SqlCommand的ExecuteReader()方法构造DataReader 对象。

SqlDataReader myreader=mycommand.ExecuteReader();

while(myreader.read()){

Console.WriteLine(myreader.GetInt32(0)+","+myreader.GetString(1));

}

myreader.Close();

myconnection.Close();

}

}

}

--------------------------------------------------------------------------

从数据库中读取纪录的另一种方法是使用Dataset对象和Dataadapter对象.Dataset是ADO.NET的主要组件之一,

它用于缓存从数据源检索到的数据信息。Dataadapter作为Dataset和数据源之间的桥接器,用于检索和保存数据。

Dataadapter从数据库中获取数据后使用Fill方法把数据填充到Dataset中。下面以Sqldataadapter为例说明如何使用Dataset对象和Dataadapter对象从数据库中读取记录。执行查询的关键步骤如下:

一、创建与数据库建立连接的Sqlconnection,传递连接字符串。

二、构造包含查询语句的Sqldataadapter对象;

三、若要使用查询结果填充Dataset对象,则调用命令Fill方法。

示例:

code.gif 程序代码

using System;

using System.Data;

using System.SqlClient;

namespace ReadDataFromDB2{

class Class2{

static void Main(string[] args){

string myconn="Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind";

//Initialize sql statement.

string mysql="select CompanyName,ContactName from Customers";

//Initialize connection string.

SqlConnection myconnection=new SqlConnection(myconn);

//Execute sql.

SqlDataAdapter mydataadapter=new SqlCommand(mysql,myconnection);

myconnection.Open();

DataSet ds=new DataSet();

mydataadapter.Fill(ds,"Customers");

for(int i=0;i

Console.WriteLine(ds.Tables["Customers"].Row[i][0].ToString()+","+ds.Table["customers"].Row[i][1].ToString());

----------------------------------------------------------------------------------

取出DataGrid中某一行中的值

DataGrid.Item(i).cells[j].text;

DataGridView1.DataSource = dataset.Tables["company"].Defaultvies;

与下面两句等效

DataGridView1.DataSource = dataset;

DataGridView1.Datamumber = "company";

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值