Извлеките табличные данные и сохраните их в той же таблице на языке Си#
всем привет.
Я проблема, с которой сталкиваются.
моя проблема находится ниже.
сначала я разрабатываю настольное приложение в Visual Studio 2010 на c#, а бэк-энд-инструмент-sqlserver 2005.
у меня есть имя таблицы warehousemaster и поля (id,CompanyName,WarehouseCode,WarehouseName,wareaddress,city,contactno,FinancialYear).
теперь я вставить запись в базе данных SQL [1,АВС ПВТ.ЛТД.VFFSV1,VFFSV1,ABCaddres ,ABCCity, 000000, 2019-2020]
теперь в соответствии с изменением финансового года в следующем месяце(2020-2021) я не хочу изменять существующие данные, но я хочу вставить те же данные только в изменении финансового года.
каковы возможные пути???
я хочу получить с помощью sql data reader старые данные и вставить эти данные .
я тестирую оба способа, используя процедуру хранения и запрос также.
ниже я упоминаю в соответствии с процедурой хранения. а также сообщение об ошибке отображения времени вставки.
сообщение об ошибке: "с этой командой уже связан открытый DataReader, который должен быть закрыт в первую очередь. "
Что я уже пробовал:
SqlCommand cmd3 = new SqlCommand("retriveWarehouseNameGrid ",con);
cmd3.Свойство Commandtype = Значение Commandtype.Хранимая процедура;
SqlDataReader sdr3 = cmd3.Метода executereader();
пока (размере sdr3.Читать())
{
warecompanyname = sdr3["CompanyName"].Метод toString();
warehousecode = sdr3["WarehouseCode"].Метод toString();
warehousename1 = sdr3["WarehouseName"].Метод toString();
wareaddress = sdr3["wareaddress"].Метод toString();
warecity = sdr3["город"].Метод toString();
warecontactno = sdr3["контактно"].Метод toString();
warefinnacialyear = sdr3["финансовый год"].Метод toString();
SqlCommand cmd4 = new SqlCommand("insertWarehouseMaster", con);
cmd4.Свойство Commandtype = Значение Commandtype.Хранимая процедура;
cmd4.параметры.AddWithValue("@WarehouseCode", warehousecode);
cmd4.параметры.AddWithValue("@WareHouseName ", warehousename1);
cmd4.параметры.AddWithValue("@CompanyName", warecompanyname);
cmd4.параметры.AddWithValue("@financialyear", sumyear);
cmd4.параметры.AddWithValue("@wareaddress", wareaddress);
cmd4.параметры.AddWithValue ("@city", warecity);
cmd4.параметры.AddWithValue("@contactno", warecontactno);
cmd4.Метод executenonquery();
}
размере sdr3.рядом();
ZurdoDev
Ошибка означает, что вам нужно либо закрыть открытый считыватель, либо открыть новый считыватель по новой команде.
Member 11952997
спасибо вам сэр,
проблема в том, что я хочу скопировать табличные данные, но сохранить их с другим финансовым годом.
ZurdoDev
Да, но это не имеет никакого отношения к вашему коду или ошибке.