将txt文件中的数据导入到Sql数据库的问题!急!!在线等!! txt文件中有三个字段, userno,telephone,mobile.(有空格分开的)现在要把它导入到UserInfo的表中,如何实现啊?我试过把txt文件通过File.copy另存为xls文件,但运行的时候最是有"外部表的格式不正确"错误.请高手们帮帮忙啊!!!!!!!!!!!!!!!!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你可以把Sql数据库里面的某一个表导出到文本文件中,看看它的格式是什么,而后你把你的txt文件的格式修改成你导出的那个例子那样的,而后导入进去。 如果是用空格分开的话可能会出问题,因为如果你的某条记录的资料中有空格怎么判断,如没有空格,只有本身字段相互隔开有空格的话,推荐你使用 File 对象,它可以通过读取文本文本的内容,然后你再用截取字符串的方式找出各字段的内容再 insert 到数据库当中。 这个文本文件是别的系统给的,我不能修改的.而且我导入数据的过程是写在windows服务中的,每天都导一遍,是自动导入的. class read { public static void Main() { try { OleDbConnection cn = new OleDbConnection(); string ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=c:\\file\\data.mdb"; cn.ConnectionString = ConnStr; cn.Open(); OleDbCommand cmd = new OleDbCommand(); StreamReader sr = new StreamReader("c:\\file\\file.txt", System.Text.Encoding.Default); String line; while ((line = sr.ReadLine()) != null) { string[] arrStr = line.Split('\\'); string a, b, c, d; a = arrStr[0].ToString(); b = arrStr[2].ToString(); c = arrStr[4].ToString(); d = arrStr[6].ToString(); cmd.CommandText = "insert into tt (a,b,c,d) VALUES ('" + a + "','" + b + "','" + c + "','" + d + "')"; cmd.Connection = cn; cmd.ExecuteNonQuery(); } Console.WriteLine("成功!"); cn.Close(); sr.Close(); } catch { Console.WriteLine("失败!"); } } } 谢谢zlp886(雨人阿呆),一旦成功马上给分. 把200万条数据一次导入sqlserver中,如果使用普通的insert语句进行写出的话,恐怕没个把小时完不成任务具体的一个语句我们可以这样写:alter database taxiset RECOVERY BULK_LOGGED BULK INSERT taxi..detail FROM 'e:\out.txt'WITH (?? DATAFILETYPE = 'char',?? FIELDTERMINATOR = ',',?? ROWTERMINATOR = '\n',?TABLOCK)alter database taxiset RECOVERY FULL这个语句将从e:\out.txt导出数据文件到数据库taxi的detail表中。祝你成功! asp.net弹出数组元素值 紧急求助,asp.net要如何避免触发Button时的自动刷新 查询串中的变量不怕sql注入攻击吧? 水晶报表动态绑定大数据量数据源时无法将数据加载到页面上(B/S结构) asp.net做的网站如何检测用户使用中报错次数和内容 不知道这是IIS问题,还是ASP.NET的问题?大家遇到没? 电脑坏了? Atlas工具箱在哪呢? 如何避免用户控件刷新父控件 很容易的问题。。 asp.net怎么引用vc写的dll? VS2005里的GridView的分页功能有什么意义呢?
{
public static void Main()
{
try
{
OleDbConnection cn = new OleDbConnection();
string ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=c:\\file\\data.mdb";
cn.ConnectionString = ConnStr;
cn.Open(); OleDbCommand cmd = new OleDbCommand();
StreamReader sr = new StreamReader("c:\\file\\file.txt", System.Text.Encoding.Default);
String line; while ((line = sr.ReadLine()) != null)
{
string[] arrStr = line.Split('\\');
string a, b, c, d;
a = arrStr[0].ToString();
b = arrStr[2].ToString();
c = arrStr[4].ToString();
d = arrStr[6].ToString(); cmd.CommandText = "insert into tt (a,b,c,d) VALUES ('" + a + "','" + b + "','" + c + "','" + d + "')";
cmd.Connection = cn;
cmd.ExecuteNonQuery();
}
Console.WriteLine("成功!");
cn.Close();
sr.Close();
}
catch
{
Console.WriteLine("失败!");
}
}
}