2013-08-05 2 views
0

У меня есть таблица в SQL только с ID и Описание колонн. ID столбец identity primary key и sql-сервер автоматически увеличивает его, когда я использую студию управления сервером sql. Я использую проект C#, чтобы добавить данные в эту таблицу с отключенной архитектурой. Я только указываю значение столбца описания в таблице dataset, и я хочу, чтобы столбец идентификатора автоматически увеличивался в таблице набора данных, как это делает сервер sql. Там в любом случае?дает идентификационный номер в набор данных C#

ответ

0

Если вы извлекаете Desc из таблицы sql, то почему бы и не получить значение из столбца ID?

0

Этот код поможет, это как добавить столбец AutoIncrement в DataTable

DataColumn column = new DataColumn(); 
column.DataType = System.Type.GetType("System.Int32"); 
column.AutoIncrement = true; 
column.AutoIncrementSeed = 1; 
column.AutoIncrementStep = 1; 

// Add the column to a new DataTable. 
DataTable table = new DataTable("table"); 
table.Columns.Add(column); 
2

вам нужно реализовать свою собственную последовательность. сохранить последнее присвоенное значение в приложении или в базе данных. введите следующий id как oldvalue +1 и обновите старое значение. Сервер Sql не может помочь, так как вы находитесь в «отключенном режиме»

1

Вы можете установить поле автоинкремента в своем DataTable, но идентификатор, сгенерированный таким образом, не будет таким же, как идентификатор, сгенерированный SQL Server.

В качестве идентификатора вы можете использовать идентификатор GUID, если вы хотите вставить идентификатор в базу данных с клиента или вы можете просто создать поддельный идентификатор на клиенте, чтобы иметь первичный ключ в вашем DataSet, но не передавать этот идентификатор в качестве параметров, когда вы вставляете новые строки в базу данных, поэтому SQL будет генерировать новый идентификатор, когда вы вставляете.

0

Для создания первичных ключей для отключенных приложений и источников данных, чтобы избежать использования нескольких клиентов с использованием одного и того же номера - вместо этого используйте GUID, поскольку они всегда будут уникальными.

Смежные вопросы