有人可以告诉我如何从我的SQL Server数据库中获取列中的所有值吗?
我有一个具有以下结构的表:
选
SSN int
(主键)NAME varchar(20)
PROGRAM varchar(max)
PHOTO varchar(max)
我想从SSN
列中检索所有值,并将它们存储在ASP.NET项目中的整数数组中。
我使用的是Visual Studio 2010 Ultimate SP1 2010和SQL Server 2008 SP3。
答案 0 :(得分:4)
string yourConnectionString = "......";
List<int> allSSN = new List<int>();
string sqlStmt = "SELECT SSN FROM dbo.Elects";
using(SqlConnection conn = new SqlConnection(yourConnectionString)
using(SqlCommand cmd = new SqlCommand(sqlStmt, conn))
{
conn.Open();
using(SqlDataReader rdr = cmd.ExecuteReader())
{
while(rdr.Read())
{
int ssn = rdr.GetInt32(0);
allSSN.Add(ssn);
}
rdr.Close();
}
conn.Close();
}
在此代码的末尾,您拥有SSN
中的所有List<int>
列值供您使用
答案 1 :(得分:0)
您还可以查看StackOverflow站点上使用的Dapper,并以NuGet包的形式提供(搜索“Dapper dot net”)。
使用Dapper,您可以使用以下内容获取IEnumerable<int>
:
IEnumerable<int> allSSN;
using (var connection = new SqlConnection(connectionString))
{
connection.Open();
allSSN = SqlMapper.Query<int>(connection, "SELECT SSN FROM dbo.Elects");
}
作为个人记录,这是我第一次带着Dapper旋转;在此之前,我会根据@ marc_s的答案使用SqlCommand
和SqlDataReader
,但我相信我将在未来的项目中使用Dapper。