datarow的问题 在线等
来源:百度知道 编辑:UC知道 时间:2024/06/20 07:12:39
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.SqlClient;
namespace ConsoleApplication9
{
class Program
{
static void Main(string[] args)
{
string strconn, strsql;
strconn = "server=(local);Database=ms;UID=sa;PWD= ";
strsql = "SELECT id FROM owen";
SqlConnection cn = new SqlConnection(strconn);
cn.Open();
SqlDataAdapter da = new SqlDataAdapter(strsql, strconn);
DataSet ds = new DataSet();
da.Fill(ds);
DataRow row;
foreach (DataColumn col in row.Table.Columns)
Console.WriteLine("{0}:(1)",col.name,row[col]);
}
}
}
数据库 表owen 有两个列 一个 id 另外一个 nam
首先,row没有赋值。
其次,col是DataColumn类型的实例,在VS的IDE中在col后面根本不可能会有name属性的,分析一下楼主的意思,可能要的是col.ColumnName吧?
最后,如果想显示name列,数据源里得有name列。
修改你的代码如下:
static void Main(string[] args)
{
string strconn, strsql;
strconn = "server=(local);Database=Test;UID=sa;PWD=sasa ";
strsql = "SELECT id,name FROM owen";
SqlConnection cn = new SqlConnection(strconn);
cn.Open();
SqlDataAdapter da = new SqlDataAdapter(strsql, strconn);
DataSet ds = new DataSet();
da.Fill(ds);
DataRow row = ds.Tables[0].Rows[0];
foreach (DataColumn col in row.Table.Columns)
{
Console.WriteLine("{0}:{1}", col.ColumnName, row[col]);
}
Console.ReadLine();
}
DataRow 没值..
1.改为ds.table[0].columns