powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Ошибка при записи в таблицу: нарушение параллелизма
1 сообщений из 1, страница 1 из 1
Ошибка при записи в таблицу: нарушение параллелизма
    #37790209
ATkachenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Написала программу по созданию новой таблицы и последующей записи в нее данных.
При записи в таблицу данных появляется ошибка:
Нарушение параллелизма: UpdateCommand затронула 0 из ожидаемых 1 записей.
Код такой:

SqlCommand selectCommand = cn.CreateCommand();
selectCommand.CommandText = "SELECT Dict_Field_Investigation.Id_Field, List_Field_Type.Name_Sql_Field_Type FROM Dict_Field_Investigation INNER JOIN List_Field_Type ON Dict_Field_Investigation.Id_Field_Type = List_Field_Type.Id_Field_Type WHERE (List_Field_Type.Id_Field_Type <> 6)";
DataTable tb = new DataTable("роророл");
SqlDataAdapter da = new SqlDataAdapter(selectCommand);
da.Fill(tb);

string str = "CREATE TABLE [dbo].[SomeSet] ([Id_Patient] [int] NOT NULL, [Date_Investigation] [date] NOT NULL, ";


foreach (DataRow row in tb.Rows)
{
str += "[" + row["Id_Field"].ToString() + "] " + row["Name_Sql_Field_Type"].ToString() + " NULL, ";
}

str += "CONSTRAINT [PK_SomeSet] PRIMARY KEY CLUSTERED ([Id_Patient] ASC, [Date_Investigation] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]";

//MessageBox.Show(str);

SqlCommand createCommand = cn.CreateCommand();
createCommand.CommandText = str;
cn.Open();

//получаю схему созданной таблицы
SqlCommand schemeCommand = cn.CreateCommand();
schemeCommand.CommandText = "Select * FROM SomeSet";
SqlDataAdapter daSomeSet = new SqlDataAdapter(schemeCommand);
daSomeSet.MissingSchemaAction = MissingSchemaAction.AddWithKey;

SqlCommandBuilder bld = new SqlCommandBuilder(daSomeSet);
bld.ConflictOption = ConflictOption.OverwriteChanges;
DataTable tbSomeSet = new DataTable("tbSomeSet");
daSomeSet.Fill(tbSomeSet);

//загружаем данные из таблицы
selectCommand.CommandText = "SELECT Id_Patient, Date_Investigation, Id_Field, Value FROM Fact_Investigation";
SqlDataAdapter da3 = new SqlDataAdapter(selectCommand);
DataTable tbFact = new DataTable();
da3.Fill(tbFact);

SqlCommand selectCommand2 = cn.CreateCommand();
selectCommand2.CommandText = "SELECT Id_Patient, Date_Investigation FROM Fact_Investigation GROUP BY Id_Patient, Date_Investigation";
SqlDataAdapter da4 = new SqlDataAdapter(selectCommand2);
da4.Fill(tbSomeSet);

foreach (DataRow rowFact in tbFact.Rows)
{
DataRow rowSomeSet = tbSomeSet.Rows.Find(new object[] { rowFact["Id_Patient"], rowFact["Date_Investigation"] });
rowSomeSet[rowFact["Id_Field"].ToString()] = rowFact["Value"];
}

daSomeSet.Update(tbSomeSet); Здесь появляется эта ошибка
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Ошибка при записи в таблицу: нарушение параллелизма
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]