private void btnTxtToTable_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(this.txtFileName.Text.Trim()))
{
MessageBox.Show("请选择要导入表中的LOG文件!");
return;
}
SqlConnection conn = null;
SqlCommand cmd;
StreamReader sr = null;
try
{
// conn = new SqlConnection("Data Source="+this.txtIpAddress.Text.Trim()+";Initial Catalog="+this.txtDbName.Text.Trim()+";"
//+ "Integrated Security=SSPI;user id=" + this.txtUserName.Text.Trim() + ";password=" + this.txtPassword.Text.Trim() + ";");
//conn = new SqlConnection("initial catalog=" + this.txtIpAddress.Text.Trim() + ";Server="
// + this.txtDbName.Text.Trim() + ";user id=" + this.txtUserName.Text.Trim() + ";password=" + this.txtPassword.Text.Trim() + ";");
string sql = "Data Source=" + this.txtIpAddress.Text.Trim() + ";Initial Catalog="
+ this.txtDbName.Text.Trim() + ";User ID=" + this.txtUserName.Text.Trim() + ";password=" + this.txtPassword.Text.Trim() + ";";
conn = new SqlConnection(sql);
conn.Open();
sr = new StreamReader(new FileStream( this.txtFileName.Text.Trim(), FileMode.Open, FileAccess.Read), System.Text.Encoding.GetEncoding("UTF-8"));
string insertCmd = "insert into LogInfo values (@LDate, @LTime, @LPage , @LUser , @LIP , @LMessage) ";
string [] split = null;
string strTemp = sr.ReadLine();
while(strTemp != null)
{
split = strTemp.Split();
cmd = new SqlCommand(insertCmd, conn);
cmd.Parameters.Add("@LDate ", SqlDbType.SmallDateTime).Value = split[0];
cmd.Parameters.Add("@LTime ", SqlDbType.VarChar).Value = split[1];
cmd.Parameters.Add("@LPage ", SqlDbType.VarChar).Value = split[2];
cmd.Parameters.Add("@LUser ", SqlDbType.VarChar).Value = split[3];
cmd.Parameters.Add("@LIP ", SqlDbType.VarChar).Value = split[4];
cmd.Parameters.Add("@LMessage ", SqlDbType.VarChar).Value = split[5];
cmd.ExecuteNonQuery();
strTemp = sr.ReadLine();
}
MessageBox.Show("成功导入表中!" );
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
if (sr != null) {
sr.Close();
}
if (conn != null)
{
conn.Close();
}
}
}