Я создал новый столбец «Статус». Теперь мне нужно обновить это поле при импорте данных из листа Excel в базу данных. Если запись существует, измените это поле «статус» как «Уже существует», если данные не существуют, «статус» «вставлен»; если не удалось вставить, «status» равен «Failed».
Я пробовал в SQL Server 2012 и Windows приложение, используя c #.
checkData = CheckXml(res);
if (checkData.Rows.Count > 0)
{
lblDuplication.Text = "Found Duplication on data provided. Cannot be saved to database.";
}
else if (IsExists)
{
lblECodeExist.Text = "Record already exists";
}
else if (!IsValid)
{
lblChkDatFormt.Text = "Invalid Date";
}
else
{
try
{
string constr = ConfigurationManager.ConnectionStrings["connection"].ConnectionString;
using (SqlConnection con = new SqlConnection(constr))
using (SqlCommand cmd = new SqlCommand("uspInsertxml", con))
{
cmd.Connection = con;
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@xml", res);
con.Open();
cmd.ExecuteNonQuery();
AddColumn();
con.Close();
}
public void AddColumn()
{
// Open Spreadsheet
Spreadsheet document = new Spreadsheet();
document.LoadFromFile(@"C:\Users\pavithra.hema\Desktop\XYZ.xlsx");
// document.LoadFromFile(@"C:\Users\pavithra.hema\\Desktop\\XML.xlsx");
// Get Worksheet
Worksheet worksheet = document.Workbook.Worksheets[0];
// Add new Column
worksheet.Columns.Insert(6, 1);
// Set values
worksheet.Rows[0][6].Value = "Status";
// Save document
document.SaveAs(@"C:\Users\pavithra.hema\source\repos\xyz\xyz\xlfiles\XYZ.xlsx");
// Close Spreadsheet
document.Close();
}
Статус нового столбца должен быть «уже существует» или «вставлен» или «не выполнен» на основе импортированных данных из листа Excel с проверкой. В этом файле должен быть обновлен статус каждой строки записи. Если я импортирую 5 записей, столбец состояния этих пяти записей должен быть обновлен до статуса.