如何将自定义的表更新到数据库中??

cookies10wen 2009-06-07 04:46:22
在程序中定义一个数据表 TempDataTable ,并写入数据。
如何将这个表更新到数据库其中一个表里???
...全文
70 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
tian_ya3 2009-06-08
  • 打赏
  • 举报
回复
学习!!!!!!
chen_ya_ping 2009-06-07
  • 打赏
  • 举报
回复
循环这个表进行插入数据的时候做个事务,最后执行一下,这样的话比较快
myljg 2009-06-07
  • 打赏
  • 举报
回复
虽然无语了,
但还是好心的提醒你一下,
如果考虑到代码的复用性、可读性及以后的维护问题,
你应该将某些具有特定功能的代码封装成一个单独的类!
言尽于此,
偶不会在回复你的这个贴子!
myljg 2009-06-07
  • 打赏
  • 举报
回复
……
[Quote=引用 孙悟空 的话:]
I 服了 YOU
[/Quote]

代码都给你贴出来。
无语……
cookies10wen 2009-06-07
  • 打赏
  • 举报
回复
呃,,这么复杂,,没有简单一点的办法吗?
myljg 2009-06-07
  • 打赏
  • 举报
回复
晕了,更正一下

//根据自己的情况改哟,我象征性的定义三个属性.
public class AddNewRecord
{
private string _FieldOne;
private string _FieldTwo;
private string _FieldThree;

public int FieldOne
{
get { return _FieldOne; }
set { _FieldOne = value; }
}
public int FieldTwo
{
get { return _FieldTwo; }
set { _FieldTwo = value; }
}
public int FieldThree
{
get { return _FieldThree; }
set { _FieldThree = value; }
}

public AddNewRecord()
{
}
public AddNewRecord(string FieldTwo, string FieldTwo, string FieldThree)
{
_FieldTwo = FieldTwo;
_FieldTwo = FieldTwo;
_FieldThree = FieldThree;
}

public int AddNew()
{
string sql = "INSERT INTO Columns (字段一, 字段二, 字段N) VALUES (@字段一, @字段二, @字段N)"; //这里的字段均为假设;
using (SqlConnection conn = new SqlConnection("用于连接数据的字符串"))
{
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandText = sql;

cmd.Parameters.Add("@字段一", SqlDbType.VarChar);
cmd.Parameters.Add("@字段二", SqlDbType.VarChar);
cmd.Parameters.Add("@字段N", SqlDbType.VarChar);

cmd.Parameters["@字段一"].Value = this.FieldOne;
cmd.Parameters["@字段二"].Value = this.FieldTwo;
cmd.Parameters["@字段N"].Value = this.FieldThree;
//return FS_cmd.ExecuteNonQuery();这里错了,以前写的代码,忘改了
return cmd.ExecuteNonQuery();
}
}
}

myljg 2009-06-07
  • 打赏
  • 举报
回复
TempDataTable是一个DataTable对象是吧?
这应该很容易实现的呀?你的困惑在那里?
只要遍历DataTable,一条条加入就行了呀?
给你写一个类(说句老实话,我还真不想写,不是不想帮你,是我自己懒:()

//根据自己的情况改哟,我象征性的定义三个属性.
public class AddNewRecord
{
private string _FieldOne;
private string _FieldTwo;
private string _FieldThree;

public int FieldOne
{
get { return _FieldOne; }
set { _FieldOne = value; }
}
public int FieldTwo
{
get { return _FieldTwo; }
set { _FieldTwo = value; }
}
public int FieldThree
{
get { return _FieldThree; }
set { _FieldThree = value; }
}

public AddNewRecord()
{
}
public AddNewRecord(string FieldTwo, string FieldTwo, string FieldThree)
{
_FieldTwo = FieldTwo;
_FieldTwo = FieldTwo;
_FieldThree = FieldThree;
}

public int AddNew()
{
string sql = "INSERT INTO Columns (字段一, 字段二, 字段N) VALUES (@字段一, @字段二, @字段N)"; //这里的字段均为假设;
using (SqlConnection conn = new SqlConnection("用于连接数据的字符串"))
{
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandText = sql;

cmd.Parameters.Add("@字段一", SqlDbType.VarChar);
cmd.Parameters.Add("@字段二", SqlDbType.VarChar);
cmd.Parameters.Add("@字段N", SqlDbType.VarChar);

cmd.Parameters["@字段一"].Value = this.FieldOne;
cmd.Parameters["@字段二"].Value = this.FieldTwo;
cmd.Parameters["@字段N"].Value = this.FieldThree;
return FS_cmd.ExecuteNonQuery();
}
}
}

调用上面的类

DataTable TempDataTable = new DataTable();
//假设你已经向TempDataTable中加放数据
AddNewRecord add = new AddNewRecord();
for (int i = 0; i < TempDataTable.Rows.Count; i++)
{
add.FieldOne = TempDataTable.Rows[i]["字段一"].ToString();
add.FieldTwo = TempDataTable.Rows[i]["字段二"].ToString();
add.FieldThree = TempDataTable.Rows[i]["字段N"].ToString();
if (add.AddNew() > 0)
{
//成功增加一条
}
}


上面的代码我没测试,自己试试吧!
cookies10wen 2009-06-07
  • 打赏
  • 举报
回复
还是需要把TempDataTable里的数据一条条的新增到数据库里。。
myljg 2009-06-07
  • 打赏
  • 举报
回复
也就是说TempDataTable中存在的字段,在数据里的表中都存在?
我还需要知道的是,
你是打算把TempDataTable里的数据一条对应数据库表中的一条更新到数据库中,
还是需要把TempDataTable里的数据一条条的新增到数据库里?
cookies10wen 2009-06-07
  • 打赏
  • 举报
回复
TempDataTable里的字段是数据表其中一些字段。。。
cookies10wen 2009-06-07
  • 打赏
  • 举报
回复
TempDataTable里的字段里数据表其中一些字段。。。
myljg 2009-06-07
  • 打赏
  • 举报
回复
数据库里存在表吗?
如果存在与TempDataTable的结构一样吗?
如果一样似乎没有什么难点哟?

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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