将号码归属地导入数据库不成功为什么
[code=C#][/code] private void button1_Click(object sender, EventArgs e)
{
FolderBrowserDialog dlg = new FolderBrowserDialog();
if (dlg.ShowDialog() != DialogResult.OK)
{
return;
}
string path = dlg.SelectedPath;
string connStr = ConfigurationManager.ConnectionStrings["connstr"].ConnectionString ;
using (SqlConnection conn = new SqlConnection (connStr))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand ())
{
cmd.CommandText = "delete from T_Numbers";
cmd.ExecuteNonQuery();
}
}
string[] files = Directory.GetFiles(path,"*.txt", SearchOption.AllDirectories );
using (SqlConnection conn = new SqlConnection(connStr))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "Insert into T_Numbers(StarNo,EndNo,Name)values(@starno,@endno,@name)";
foreach (string file in files)
{
string 运营商名称 = Path.GetFileNameWithoutExtension(file);
string[] lines = File.ReadAllLines(file, Encoding.Default);//不用streamreader文件很小,一次性加载不占用很大内存
//ReadAllLines默认编码是UTF-8 Encoding .Default
foreach (string line in lines)
{
string[] strs = line.Split('-');
string 开始号码 = strs[0];
string 结束号码 = strs[1];
string 市 = strs[2];
cmd.Parameters.Clear();
cmd.Parameters.Add(new SqlParameter("starno",开始号码 ));
cmd.Parameters.Add(new SqlParameter("endno",结束号码 ));
cmd.Parameters.Add(new SqlParameter("name",运营商名称 +市));
cmd.ExecuteNonQuery();
}
}
}
}
MessageBox.Show("导入成功");
}
------解决方案--------------------你先打印出
开始号码
结束号码
市
这些值的内容是不是正确,是不是符合数据库字段的类型
------解决方案--------------------请给出错误信息。
自己试着断点调式。
------解决方案--------------------没有报告错误吗
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "Insert into T_Numbers([StarNo],[EndNo],[Name]) values(@starno,@endno,@name)";
foreach (string file in files)
{
string 运营商名称 = Path.GetFileNameWithoutExtension(file);
string[] lines = File.ReadAllLines(file, Encoding.Default);//不用streamreader文件很小,一次性加载不占用很大内存
//ReadAllLines默认编码是UTF-8 Encoding .Default
foreach (string line in lines)
{
string[] strs = line.Split('-');
string 开始号码 = strs[0];
string 结束号码 = strs[1];
string 市 = strs[2];
cmd.Parameters.Clear();
cmd.Parameters.AddWithValue("@starno",开始号码);
cmd.Parameters.AddWithValue("@endno",结束号码);
cmd.Parameters.AddWithValue("@nam