下面是详细讲解“C#中sqlDataRead 的三种方式遍历读取各个字段数值的方法”的完整攻略:
1. 简介
SqlDataReader 是 ADO.NET 中的一个对象,用于从数据库中读取数据。它提供了三种方法来读取数据库中的数据。下面我们将逐个介绍这三种方法的具体用法。
2. 方法一:使用列的索引读取数据
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlCommand command = new SqlCommand(queryString, connection);
connection.Open();
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
int id = reader.GetInt32(0);
string name = reader.GetString(1);
int age = reader.GetInt32(2);
Console.WriteLine("ID: {0}, Name: {1}, Age: {2}", id, name, age);
}
reader.Close();
}
上面的代码使用了 SqlDataReader
的 GetInt32
和 GetString
方法,以读取第一个、第二个和第三个列的值。
3. 方法二:使用列名称读取数据
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlCommand command = new SqlCommand(queryString, connection);
connection.Open();
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
int id = reader.GetInt32(reader.GetOrdinal("Id"));
string name = reader.GetString(reader.GetOrdinal("Name"));
int age = reader.GetInt32(reader.GetOrdinal("Age"));
Console.WriteLine("ID: {0}, Name: {1}, Age: {2}", id, name, age);
}
reader.Close();
}
上面的代码使用了 SqlDataReader
的 GetOrdinal
方法,以获取列的索引,然后使用 GetInt32
和 GetString
方法读取数据。
4. 方法三:使用泛型方法读取数据
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlCommand command = new SqlCommand(queryString, connection);
connection.Open();
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
int id = reader.GetFieldValue<int>(0);
string name = reader.GetFieldValue<string>(1);
int age = reader.GetFieldValue<int>(2);
Console.WriteLine("ID: {0}, Name: {1}, Age: {2}", id, name, age);
}
reader.Close();
}
上面的代码使用了 SqlDataReader
的 GetFieldValue
泛型方法,以读取数据。它没有使用列索引或列名称,而是使用了泛型参数类型来读取数据。
5. 总结
以上就是 C# 中使用 SqlDataReader 的三种方式遍历读取各个字段数值的方法。这三种方法都可以读取数据,但使用的方式略有不同。选择其中一种方法来读取数据,取决于您的个人喜好和正在处理的特定情况。
下面是一个完整的示例,读取 SQL Server 数据库中的员工表:
using System;
using System.Data.SqlClient;
namespace ConsoleApp
{
class Program
{
static void Main(string[] args)
{
string connectionString = "Data Source=(local);Initial Catalog=TestDB;Integrated Security=True";
string queryString = "SELECT Id, Name, Age FROM Employees";
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlCommand command = new SqlCommand(queryString, connection);
connection.Open();
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
int id = reader.GetInt32(0);
string name = reader.GetString(1);
int age = reader.GetInt32(2);
Console.WriteLine("ID: {0}, Name: {1}, Age: {2}", id, name, age);
}
reader.Close();
}
}
}
}
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#中sqlDataRead 的三种方式遍历读取各个字段数值的方法 - Python技术站