Заполнить строку данных с первичной ключом после вставки в таблицу SQL ServerC#

Место общения программистов C#
Ответить
Anonymous
 Заполнить строку данных с первичной ключом после вставки в таблицу SQL Server

Сообщение Anonymous »

У меня есть DataTable в C# с столбцом первичного ключа, который использует отрицательные числа для автоматического приращения. Когда я обновляю заднюю часть, я не могу понять, как получить первичный ключ из базы данных в строку DataTable .

Код: Выделить всё

using (SqlDataAdapter adapter = new SqlDataAdapter(selectQuery, connection))
using (SqlCommandBuilder commandBuilder = new SqlCommandBuilder(adapter))
{
var primaryKeyColumn = dataTable.PrimaryKey[0];
var primaryKey = primaryKeyColumn.ColumnName;

adapter.UpdateCommand = commandBuilder.GetUpdateCommand();
adapter.DeleteCommand = commandBuilder.GetDeleteCommand();

adapter.InsertCommand = commandBuilder.GetInsertCommand();
adapter.InsertCommand.CommandText += "; SET @Identity = SELECT CAST(SCOPE_IDENTITY() AS int);";
var identityParameter = adapter.InsertCommand.CreateParameter();

identityParameter.ParameterName = "@Identity";
identityParameter.DbType = DbType.Int32;
identityParameter.Direction = ParameterDirection.Output;
identityParameter.SourceColumn = primaryKey;
adapter.InsertCommand.Parameters.Add(identityParameter);

//adapter.RowUpdated += Adapter_RowUpdated;

// Update database with changes from DataTable
adapter.Update(dataTable);
}
Я также пытался использовать событие adapter_rowupdated примерно в дюжине разных способов, но ни один из них не работает для меня, и я не знаю, что я делаю неправильно.

Подробнее здесь: https://stackoverflow.com/questions/797 ... sql-server
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»