获取DataSet中的数据

PerDign 2011-08-17 05:22:19
static void Main(string[] args)
{
SqlConnection sqlcon = new SqlConnection("Data Source=VIC;Initial Catalog=webTest;Integrated Security=True");
string sqlCmdString1 = " SELECT title FROM [webTest].[dbo].[work]";
string sqlCmdString2 = "INSERT INTO [webTest].[dbo].[tType] ([Name]) VALUES ('wangxu')";
DataSet testSet = new DataSet();
testSet.Tables.Add("tableEvent"); //添加表
testSet.Tables.Add("tableInfo");
SqlDataAdapter ftuinfoAdpter = new SqlDataAdapter(); //实例化一个tSqlDataAdapter 对象
SqlDataAdapter eventAdpter = new SqlDataAdapter();
SqlCommand sqlcom = new SqlCommand();
sqlcom.Connection = sqlcon;
sqlcom.CommandText = sqlCmdString1;
ftuinfoAdpter.SelectCommand = sqlcom;//设置SqlDataAdapter需要执行的命令
ftuinfoAdpter.Fill(testSet, "tableInfo");
SqlConnection sqlcon1 = new SqlConnection("Data Source=VIC;Initial Catalog=webTest;Integrated Security=True");
sqlcon1.Open();
SqlCommand sqlcom1 = new SqlCommand();
sqlcom1.Connection = sqlcon1;
sqlcom1.CommandText = sqlCmdString2;
eventAdpter.InsertCommand = sqlcom1;
eventAdpter.Fill(testSet, "tableEvent");
sqlcon1.Close();

string conditionString = "ftuid=3100034";
DataRow[] drSelectArray = testSet.Tables["tableInfo"].Select(conditionString);
foreach (DataRow dr in drSelectArray)
{
Console.WriteLine(dr["ftuid"]);
}
}
运行后出现异常 在调用“Fill”前,SelectCommand 属性尚未初始化。 说能具体解释一下
...全文
174 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
laichunlin 2011-08-17
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 taomanman 的回复:]
你的代码中好多是多余的代码,没用删除掉

C# code


static void Main(string[] args)
{
DataSet testSet1 = new DataSet();
DataSet testSet2 = new DataSet();
using (SqlConnection sqlcon = ……
[/Quote]
顶!
ruanwei1987 2011-08-17
  • 打赏
  • 举报
回复

public static DataSet SelectSqlRows(string connectionString,
string queryString, string tableName)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = new SqlCommand(queryString, connection);
SqlCommandBuilder builder = new SqlCommandBuilder(adapter);

connection.Open();

DataSet dataSet = new DataSet();
adapter.Fill(dataSet, tableName);

//code to modify data in DataSet here

builder.GetUpdateCommand();

//Without the SqlCommandBuilder this line would fail
adapter.Update(dataSet, tableName);

return dataSet;
}
}



ruanwei1987 2011-08-17
  • 打赏
  • 举报
回复
SqlCommandBuilder 用这个
PerDign 2011-08-17
  • 打赏
  • 举报
回复
3楼没有 SqlCommand 如何更新DataSet 操作呢
老毕 2011-08-17
  • 打赏
  • 举报
回复
eventAdpter.Fill(testSet, "tableEvent");

这行之前,似乎没有设置eventAdapter的SelectCommand
ustbwuyi 2011-08-17
  • 打赏
  • 举报
回复

好像没发现什么错,把SQL语句改一下试试,别加那么多中扩号。

SELECT title FROM work


暖枫无敌 2011-08-17
  • 打赏
  • 举报
回复
你的代码中好多是多余的代码,没用删除掉

static void Main(string[] args)
{
DataSet testSet1 = new DataSet();
DataSet testSet2 = new DataSet();
using (SqlConnection sqlcon = new SqlConnection("Data Source=VIC;Initial Catalog=webTest;Integrated Security=True"))
{
sqlcon.Open();
string sqlCmdString1 = " SELECT title FROM [webTest].[dbo].[work]";
string sqlCmdString2 = "INSERT INTO [webTest].[dbo].[tType] ([Name]) VALUES ('wangxu')";
SqlDataAdapter ftuinfoAdpter = new SqlDataAdapter(sqlCmdString1, sqlcon); //实例化一个tSqlDataAdapter 对象
SqlDataAdapter eventAdpter = new SqlDataAdapter(sqlCmdString2, sqlcon);
ftuinfoAdpter.Fill(testSet1, "tableInfo");
eventAdpter.Fill(testSet2, "tableEvent");
}

string conditionString = "ftuid=3100034";
DataRow[] drSelectArray = testSet1.Tables["tableInfo"].Select(conditionString);
foreach (DataRow dr in drSelectArray)
{
Console.WriteLine(dr["ftuid"]);
}
}
py1025677845 2011-08-17
  • 打赏
  • 举报
回复
没看出来,帮忙顶!

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧