Хотя ваш вопрос неясен, я хотел бы оставить здесь несколько комментариев.
Запросы на обновление выглядят неполными.Они могут привести к исключению SQL.Запросы в cmd1 и cmd2 не установлены.Первый запрос содержит «где» без ограничений.Третий запрос выглядит как вставка, и вы поместили в него обновление.
Прежде всего, вы непосредственно размещаете содержимое текстового поля в своем запросе.SQL INJECTION очень возможен здесь.
Мой первый совет - просмотрите ваши запросы.Попробуйте поработать с ними на SQL-сервере и, если он работает, перенесите их на C #.
И затем, пожалуйста, избегайте таких встроенных запросов.Они опасны.Используйте параметры и хранимые процедуры.
Отредактировано
Чтобы использовать первичный ключ, сгенерированный в одной таблице при следующей вставке / обновлении, используйте @@ identity или SCOPE_IDENTITY ().
Например, в вашем случае
первый запрос будет выглядеть следующим образом.
INSERT INTO Department_Master (....) VALUES (....)
Допустим, он возвращает идентификатор в качестве первичного ключа (отдел_ид)
второй запрос должен выглядеть следующим образом.
INSERT INTO Designation_Master (..., Department_id ,...) Значения (..., @@ identity, ...)
Помните, что все они должны попадать в одну область видимости / одно и то же соединение.