动态添加数据的方式有许多;下面要实现的功能是将文本文档中的数据读取出来,动态的添加到数据库中;实现原理:添加openFileDialog控件到窗体中(打开文件对话框),通过该控件可以获取要动态添加数据到数据库中的文件名,获得文件后,通过数据阅读流就可以将数据从文件中读取出来;并进行逐一分割操作,然后再逐一添加到数据库中,下面是实现该功能的代码:
private void button1_Click(object sender, EventArgs e)
{
if(DialogResult.OK==openFileDialog1.ShowDialog()){ ///弹出文件对话框
FileStream fs = File.OpenRead(openFileDialog1.FileName);///获取文件名
//打开文件,进行阅读;
StreamReader sr = new StreamReader(fs);///要读取的数据流;
string line = "";
while((line=sr.ReadLine())!=null)
{ ///将读取出来的数据赋给line,然后判断其是否为空;如果不为空;则继续
///否则就结束;
///分割操作
string[] str = line.Split(new char[] {'|' }, StringSplitOptions.RemoveEmptyEntries);
///将其动态插入到数据库中
string conn = "initial catalog=MyADO;server=.;integrated security=true;";
using(SqlConnection sqlconn=new SqlConnection(conn))
{ sqlconn.Open();
using(SqlCommand sqlcmd=sqlconn.CreateCommand())
{sqlcmd.CommandText = "insert into tb_AddUser(AddUserName,AddAge) values(@AddUserName,@AddAge)";
sqlcmd.Parameters.Add(new SqlParameter("AddUserName",str[0]));
sqlcmd.Parameters.Add(new SqlParameter("AddAge", str[1]));
sqlcmd.ExecuteNonQuery();
}
}
sr.Dispose();
fs.Dispose();
}
MessageBox.Show("动态添加完成!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}