I have the following code:
const String sqlSelect = "SELECT * FROM UserPasswords WHERE username='System Administrator';";
const String sqlInsert = "INSERT INTO UserPasswords VALUES (@username,@Password,@startDate,@Expired,@UserPasswordsID)";
using (var con1 = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["dataConnectionString"].ConnectionString))
using (var con2 = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["utilConnectionString"].ConnectionString))
{
con1.Open();
con2.Open();
using (var selectCommand = new SqlCommand(sqlSelect, con1))
{
using (var reader = selectCommand.ExecuteReader())
{
if (reader.Read())
{
using (var insertCommand = new SqlCommand(sqlInsert, con2))
{
insertCommand.Parameters.Add(new SqlParameter("@username", reader.GetString(0)));
insertCommand.Parameters.Add(new SqlParameter("@Password", reader.GetString(1)));
insertCommand.Parameters.Add(new SqlParameter("@startDate", reader.GetDateTime(2)));
insertCommand.Parameters.Add(new SqlParameter("@Expired", reader.GetBoolean(3)));
insertCommand.Parameters.Add(new SqlParameter("@UserPasswordsID", reader.GetInt32(4)));
insertCommand.ExecuteNonQuery();
}
}
}
}
All I need to do is copy the row with the 'System Administrator' info into another table as a backup. Though this code works is there someway to do this more elegantly?