取消的Txt文件導入SQL
来源:互联网 发布:php视频教程百度云 编辑:程序博客网 时间:2024/05/02 13:37
protected void Menu_Import_Click(object sender, EventArgs e)
{
try
{
Message.Text = "";
if (FileUpload1.PostedFile.InputStream.Length < 1)
{
Message.Text = "請選擇文件!";
return;
}
string FileName = FileUpload1.FileName;
if (FileName.ToLower().IndexOf(".txt") == -1)
{
Message.Text = "請選擇文本文件!";
return;
}
int FileLen = FileUpload1.PostedFile.ContentLength;
byte[] input = new byte[FileLen];
System.IO.Stream UpLoadStream = FileUpload1.PostedFile.InputStream;
UpLoadStream.Read(input, 0, FileLen);
UpLoadStream.Position = 0;
System.IO.StreamReader sr = new System.IO.StreamReader(UpLoadStream, System.Text.Encoding.Default);
String content = sr.ReadToEnd();
sr.Close();
UpLoadStream.Close();
UpLoadStream = null;
sr = null;
String sql = "Insert INTO Meal_Details(Meal_ID,Reader_No,Reader_Date,Employee_No,Name,CDG_Name,Meal_Type,Meal_Cost) Values(@Meal_ID,@Reader_No,@Reader_Date,@Employee_No,@Name,@CDG_Name,@Meal_Type,@Meal_Cost)";
String[] d = System.Text.RegularExpressions.Regex.Split(content, "\r\n");
DateTime t1 = DateTime.Now;
using (SqlConnection cn = new SqlConnection())
{
cn.ConnectionString = ConfigurationManager.ConnectionStrings["ProvisionConnectionString"].ConnectionString;
cn.Open();
System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand(sql, cn);
Parallel.For(0, d.Length - 1, (i) =>
{
if (d[i].Trim() != "")
{
cmd.Parameters.Clear();
cmd.Parameters.AddWithValue("@Meal_ID", Request.QueryString["Meal_ID"]);
cmd.Parameters.AddWithValue("@Reader_No", d[i].Substring(0, 2));
cmd.Parameters.AddWithValue("@Reader_Date", DateTime.ParseExact(d[i].Substring(2, 12) + "00", "yyyyMMddHHmmss", System.Globalization.CultureInfo.CurrentCulture));
cmd.Parameters.AddWithValue("@Employee_No", d[i].Substring(15, 5));
int t = Convert.ToInt16(d[i].Substring(10, 2));
if (t > 6 && t <= 10)
{
cmd.Parameters.AddWithValue("@Meal_Type", "早餐");
}
else if (t > 10 && t <= 16)
{
cmd.Parameters.AddWithValue("@Meal_Type", "午餐");
}
else
{
cmd.Parameters.AddWithValue("@Meal_Type", "晚餐");
}
cmd.Parameters.AddWithValue("@Meal_Cost", d[i].Substring(d[i].Length - 2, 2));
using (SqlConnection cn1 = new SqlConnection())
{
cn1.ConnectionString = ConfigurationManager.ConnectionStrings["EmployeeConnectionString"].ConnectionString;
string sqlStr = "SELECT Name,CDG_Name FROM T_Employee Where Employee_No = " + d[i].Substring(15, 5);
SqlDataAdapter sda = new SqlDataAdapter(sqlStr, cn1);
DataSet ds = new DataSet();
sda.Fill(ds);
//if (ds.Tables[0].Rows.Count == 0)
//{
// cmd.Parameters.AddWithValue("@Name", "無此人資料");
// cmd.Parameters.AddWithValue("@CDG_Name", DBNull.Value);
//}
//else
//{
// cmd.Parameters.AddWithValue("@Name", ds.Tables[0].Rows[0]["Name"].ToString());
// cmd.Parameters.AddWithValue("@CDG_Name", ds.Tables[0].Rows[0]["CDG_Name"].ToString());
//}
cmd.Parameters.AddWithValue("@Name", ds.Tables[0].Rows[0]["Name"].ToString());
cmd.Parameters.AddWithValue("@CDG_Name", ds.Tables[0].Rows[0]["CDG_Name"].ToString());
}
cmd.ExecuteNonQuery();
//cmd.Parameters.Clear();
}
});
cn.Close();
};
System.TimeSpan ts = DateTime.Now - t1;
Label1.Text += "\r\n 多線程結束時間: " + ts.Seconds;
//for (int i = 0; i < d.Length; i++)
//{
//}
Core_Refresh();
//FileUpload1.Visible = false;
//Menu_Import.Visible = false;
}
catch (Exception ex)
{
Message.Text = ex.Message;
}
}
protected void Menu_Import0_Click(object sender, EventArgs e)
{
try
{
Message.Text = "";
if (FileUpload1.PostedFile.InputStream.Length < 1)
{
Message.Text = "請選擇文件!";
return;
}
string FileName = FileUpload1.FileName;
if (FileName.ToLower().IndexOf(".txt") == -1)
{
Message.Text = "請選擇文本文件!";
return;
}
int FileLen = FileUpload1.PostedFile.ContentLength;
byte[] input = new byte[FileLen];
System.IO.Stream UpLoadStream = FileUpload1.PostedFile.InputStream;
UpLoadStream.Read(input, 0, FileLen);
UpLoadStream.Position = 0;
System.IO.StreamReader sr = new System.IO.StreamReader(UpLoadStream, System.Text.Encoding.Default);
String content = sr.ReadToEnd();
sr.Close();
UpLoadStream.Close();
UpLoadStream = null;
sr = null;
String sql = "Insert INTO Meal_Details(Meal_ID,Reader_No,Reader_Date,Employee_No,Name,CDG_Name,Meal_Type,Meal_Cost) Values(@Meal_ID,@Reader_No,@Reader_Date,@Employee_No,@Name,@CDG_Name,@Meal_Type,@Meal_Cost)";
System.Data.SqlClient.SqlConnection cn = new System.Data.SqlClient.SqlConnection(ConfigurationManager.ConnectionStrings["ProvisionConnectionString"].ConnectionString);
cn.Open();
System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand(sql, cn);
String[] d = System.Text.RegularExpressions.Regex.Split(content, "\r\n");
DateTime t1 = DateTime.Now;
for (int i = 0; i < d.Length; i++)
{
cmd.Parameters.Clear();
if (d[i].Trim() != "")
{
cmd.Parameters.AddWithValue("@Meal_ID", Request.QueryString["Meal_ID"]);
cmd.Parameters.AddWithValue("@Reader_No", d[i].Substring(0, 2));
cmd.Parameters.AddWithValue("@Reader_Date", DateTime.ParseExact(d[i].Substring(2, 12) + "00", "yyyyMMddHHmmss", System.Globalization.CultureInfo.CurrentCulture));
cmd.Parameters.AddWithValue("@Employee_No", d[i].Substring(15, 5));
int t = Convert.ToInt16(d[i].Substring(10, 2));
if (t > 6 && t <= 10)
{
cmd.Parameters.AddWithValue("@Meal_Type", "早餐");
}
else if (t > 10 && t <= 16)
{
cmd.Parameters.AddWithValue("@Meal_Type", "午餐");
}
else
{
cmd.Parameters.AddWithValue("@Meal_Type", "晚餐");
}
cmd.Parameters.AddWithValue("@Meal_Cost", d[i].Substring(d[i].Length - 2, 2));
using (SqlConnection cn1 = new SqlConnection())
{
cn1.ConnectionString = ConfigurationManager.ConnectionStrings["EmployeeConnectionString"].ConnectionString;
string sqlStr = "SELECT Name,CDG_Name FROM T_Employee Where Employee_No = " + d[i].Substring(15, 5);
SqlDataAdapter sda = new SqlDataAdapter(sqlStr, cn1);
DataSet ds = new DataSet();
sda.Fill(ds);
if (ds.Tables[0].Rows.Count == 0)
{
cmd.Parameters.AddWithValue("@Name", "無此人資料");
cmd.Parameters.AddWithValue("@CDG_Name", DBNull.Value);
}
else
{
cmd.Parameters.AddWithValue("@Name", ds.Tables[0].Rows[0]["Name"].ToString());
cmd.Parameters.AddWithValue("@CDG_Name", ds.Tables[0].Rows[0]["CDG_Name"].ToString());
}
}
cmd.ExecuteNonQuery();
}
}
System.TimeSpan ts = DateTime.Now - t1;
Label1.Text += "\r\n 單線程結束時間: " + ts.Seconds;
Core_Refresh();
//FileUpload1.Visible = false;
//Menu_Import.Visible = false;
}
catch (Exception ex)
{
Message.Text = ex.Message;
}
}
- 取消的Txt文件導入SQL
- 取消的txt寫入Datatable Right Join 並 Bulk Insert 至 SQL
- Sql導入txt和excel語句
- Matlab 读写入文件txt
- Matlab 读写入txt文件
- txt文件导入数据库的SQL语句
- 地址栏敲入文件地址,nginx直接打开了txt文件,而我想要的是下载该txt文件
- ios读取txt文件并存入数组
- java创建txt文件并存入内容
- sql 查询txt文件
- navicat导出的sql文件自编导入控制台程序
- 700万 TXT数据入SQL SERVER 语句
- 读Txt文件 SQL Server
- TXT文件导入到SQL
- sql 把表导成.TXT文件
- txt文件导入到sql
- 将txt文件导入sql
- sql语句查询txt 文件
- 打麻将控牌教程♂□【在线演示QQ:194714506】
- 黑马程序员_java语言_多线程和设计模式
- 打麻将控牌方法▽▇【在线演示QQ:194714506】
- mouse_event() 函数综合鼠标击键和鼠标动作
- 打麻将控牌手法▼㊣【在线演示QQ:194714506】
- 取消的Txt文件導入SQL
- HDU 1258 【水dfs】
- (10.3.1)产品经理应该先写需求文档还是先画原型?
- 打麻将怎么控牌╭∮【在线演示QQ:194714506】
- 打麻将怎样控牌∩☉【在线演示QQ:194714506】
- MySql中的varchar类型
- 打麻将控牌绝技▅◇【在线演示QQ:194714506】
- 动态库DLL中类的使用
- POJ2488 -- POJ1154-- DFS