【发布时间】:2012-03-24 06:45:46
【问题描述】:
我想将 Excel 工作表中的数据导入 SQL Server 数据库 (2008)。我已经成功测试了从 xls 文件中获取数据的代码。但是,我无法将这些数据插入到 db 表中。以下是部分代码:
while (ctecka.Read())
{
exJmeno = ctecka[0].ToString();
exPrijmeni = ctecka[1].ToString();
Response.Write(exJmeno + " " + exPrijmeni + " ");
pridano = vlozSQL.ExecuteNonQuery();
}
ctecka 是 DbDataReader 对象,它包含来自 excel 工作表的数据
exJmeno 和 exPrijmeni 是字符串,列中的数据插入其中
问题:
Response.write 将我需要的数据写入页面
vlozSQL.ExecuteNonQuery 忽略(exJmeno 和 exPrijmeni)中的数据,并将空列插入数据库中的表中
这里有一些定义:
string InsertSQL = "INSERT INTO users (name, surname) VALUES (@name,@surname)";
vlozSQL.Parameters.AddWithValue("@name", exJmeno);
vlozSQL.Parameters.AddWithValue("@surname", exPrijmeni);
编辑
string exJmeno = "";
string exPrijmeni = "";
string InsertSQL = "INSERT INTO users (name, surname) VALUES (@name,@surname)";
SqlConnection sqlconn = new SqlConnection(SQLpripoj);
SqlCommand vlozSQL = new SqlCommand(InsertSQL, sqlconn);
vlozSQL.Parameters.AddWithValue("@name", exJmeno);
vlozSQL.Parameters.AddWithValue("@surname", exPrijmeni);
try
{
spojeni.Open();
DbDataReader ctecka = prikaz.ExecuteReader();
sqlconn.Open();
while (ctecka.Read())
{
exJmeno = ctecka[0].ToString();
exPrijmeni = ctecka[1].ToString();
Response.Write(exJmeno + " " + exPrijmeni + " ");
pridano = vlozSQL.ExecuteNonQuery();
}
}
finally
{
spojeni.Close();
sqlconn.Close();
Label2.Text = pridano.ToString();
}
【问题讨论】:
-
我们需要看更多的代码来理解是怎么回事,尤其是SqlClient代码。
标签: c# asp.net sql-server import