SqlTableAdapter.Insert () с меньшим количеством параметров - PullRequest
0 голосов
/ 07 октября 2019

У меня есть таблица Users с 3 столбцами Id, Name, Address.

Я использую usersTableAdapter.Insert() для добавления новой записи, но для этого требуются все 3 параметра, включаяId, который является столбцом Identity и auto-incremented и не может быть добавлен вручную.

Вот код:

this.usersTableAdapter.Insert("Haroon", "Pakistan");   

Это не работает.

Можно ли использовать указанную выше команду без указания значения Id?

1 Ответ

0 голосов
/ 13 ноября 2019

Да;вы неправильно установили свой табличный адаптер ..

Изучите этот снимок экрана табличного адаптера, подключенного к таблице сервера SQL, в которой есть столбец идентификатора автоинкремента. Вы можете увидеть дизайн таблицы из SSMS справа (синяя рамка). Вы можете заметить, что адаптер таблицы был создан с помощью select * from autoinctable, и мастер выбрал ТОЛЬКО ссылку на столбец Text для INSERT (также выделен)

enter image description here

В коде команда Вставка запрашивает только столбец Текст:

enter image description here

Этот TA был создан с включенным параметром «обновить набор данных»;вы можете увидеть в командах (например, insert), что вычисленное значение базы данных получено (select ... scope_identity)

...