Как получить максимальное значение из SQL и вставить его в строку данных
использование sql SERVER 2014
У меня есть таблица address содержит addID PK identity(1,1), city varchar()
клиент таблицы содержит CLNAME varchar (), clID PK, внешний ключ addID из предыдущей таблицы.
у меня есть форма, которая позволяет мне добавить новый адрес с новым клиентом
адрес добавляется правильно и автоматически дает ему новый addID (IDENTITY (1,1)), но возникает ошибка, так как addID в клиенте не вставляется автоматически
мне нужно получить максимальное значение addID из адреса таблицы и добавить его в мою строку данных в наборе данных, содержащем таблицу "клиент" , чтобы обновить базу данных
Что я уже пробовал:
sqlconn = conxn() Dim dset As New DataSet("client") Dim dadpt As New SqlDataAdapter("select * From client", sqlconn) dadpt.Fill(dset, "client") Dim dsADRS As New DataSet("adrs") Dim daADRS As New SqlDataAdapter("SELECT MAX(addID) FROM addres ", sqlconn) daADRS.Fill(dsADRS, "adrs") sen = sqlconn.Close() Dim cmdBuilder As SqlCommandBuilder = New SqlCommandBuilder(dadpt) Dim dr As DataRow dr = dset.Tables("client").NewRow() dr("name") = name dr("fname") = fname dr("addID") = Convert.ToDecimal(sqls) dset.Tables("lawyer").Rows.Add(dr) dadpt.Update(dset, "lawyer")
PIEBALDconsult
Я не рекомендую использовать удостоверение личности, особенно в таких случаях, как этот.
Один из вариантов-использовать вместо этого последовательность.
В любом случае вам нужно вставить родительскую строку перед дочерней.
И вообще, пожалуйста, изучите лучшие методы работы с базами данных.