【问题标题】:How to insert list from C sharp into SQL Server 2008? [closed]如何将 C sharp 中的列表插入 SQL Server 2008? [关闭]
【发布时间】:2012-09-14 14:12:11
【问题描述】:

我已经在 c# 中创建了一个列表,现在我需要将该列表插入到 SQL Server 2008 中。 这可能吗?请用一个简单的例子解释一下。

【问题讨论】:

标签: c# sql-server-2008 list insert


【解决方案1】:

这是一个简单的例子:

List<String> list = new List<String>() { "A", "B", "C" };
using (var con = new SqlConnection(connectionString))
{
    con.Open();
    using (var cmd = new SqlCommand("INSERT INTO TABLE(Column)VALUES(@Column)", con))
    {
        cmd.Parameters.Add("@Column", SqlDbType.VarChar);
        foreach (var value in list)
        {
            cmd.Parameters["@Column"].Value = value;
            int rowsAffected = cmd.ExecuteNonQuery();
        }
    }
}

这只是循环遍历列表中的所有项目,并使用ExecuteNonQuery 依次执行一个插入命令。

编辑:如果您想知道将数组(或列表)插入 sql-server 的最有效方法,您绝对应该阅读以下内容:http://www.sommarskog.se/arrays-in-sql-2008.html

如果您稍后有具体问题,可以回来展示您的尝试。

【讨论】:

  • 好吧,这并不是一种真正有效的插入列表的方法,它只是一种循环遍历列表并一次插入一个列表的方法。 TVP 将是一个更具吸引力的选择。 :-)
  • @AaronBertrand:我想展示一个简单的例子,因为我假设 OP 只想插入他的一维列表(一个字段)。不需要最有效的方法;)如果他想知道如何最有效地处理列表(数组),他应该阅读以下内容:sommarskog.se/arrays-in-sql-2008.html
  • 我的数据库有 30 列,但我在列表中只有 20 列,它会根据用户动态增长。现在,如何进行插入?
  • @user1671639 你需要从一个教程开始(搜索可以很容易地产生这些),然后当你编写了一些代码并且不能完全让它工作时回到这里。这不是“为我编写代码”网站。
  • 我错过了选择这个答案抱歉为时已晚:(谢谢:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-22
相关资源
最近更新 更多