Как добавить номер строки к каждому элементу, выбранному в инструкции insert into select
Проблема, с которой я сталкиваюсь, заключается в том, что когда я использую свой код, он использует одну и ту же ссылочную строку во всех операторах insert into select. Например, если строка 4097 и я запускаю свой код для вставки 4 записей, он будет повторять то же самое число в столбце.
Вот мой код:
Dim lastRow = dtc.Rows.Cast(Of DataRow)().LastOrDefault() Dim I As Integer = 0 I += 1 Dim laststr As String = lastRow.Item("ID").ToString + I 'This is for personal information input Using sqlconn As New SqlConnection("SQLstring") Using da As New SqlDataAdapter(String.Empty, sqlconn) Dim sql As New StringBuilder("insert into [") sql.Append(TreeView1.SelectedNode.Text.Replace("]", "\]")) sql.Append("] (") Dim sql1 As New StringBuilder("") Dim andRequired As Boolean = False If datat.Columns.Contains("ID") Then If andRequired Then sql.Append(", ") sql1.Append(", ") End If sql.Append("[Individual_ID]") sql1.Append(laststr) andRequired = True End If sql.AppendFormat(") Select " + sql1.ToString + " from table2") da.SelectCommand.CommandText = sql.ToString() MessageBox.Show(sql.ToString) da.Fill(datat) End Using End Using
Как я могу получить номер строки каждой новой строки, добавленной в столбец?
Что я уже пробовал:
Я попытался повторить итерацию, используя I как целое число.
Dim I As Integer = 0 I += 1 Dim laststr As String = lastRow.Item("ID").ToString + I
но он добавляет только первый новый номер строки.
CHill60
Покажите нам настоящий sql-оператор, чтобы я мог понять, что вы пытаетесь сделать. Некоторые примеры данных и ожидаемые результаты также были бы полезны
Member 11856456
На данный момент у меня есть 5 столов. каждая таблица имеет столбец individual_ID, который используется для ссылки на столбец ID моей основной таблицы. Когда я нажимаю на имя в datagridview, я использую идентификатор, чтобы получить все записи, связанные с этим идентификатором, из других таблиц.
Таблицы:
1. ID, First_name, Last_name, DOB
2. ID, Job_title, pay, Idividual_id
3. ID, Time_of_employeement, Individual_ID
просто чтобы дать вам идею
CHill60
Покажите нам настоящий sql-оператор, чтобы я мог понять, что вы пытаетесь сделать. Некоторые примеры данных и ожидаемые результаты также были бы полезны
Gerry Schmitz
Получите "идентификатор"; "посмотрите" на него (чтобы увидеть, действительно ли он содержит то, что вы ожидаете); затем увеличьте его; затем преобразуйте его в строку.
.. вместо того, чтобы преобразовать его в строку, "сцепить" с ним целое число и ожидать чего-то значимого.
Member 11856456
В моей основной таблице я хочу использовать столбец autoincremented ID в качестве ссылки на другие таблицы.
1. ID, First_name, Last_name, DOB
2. ID, Job_title, pay, Idividual_id
3. ID, Time_of_employeement, Individual_ID
Таким образом, столбец Invidiual_ID таблицы 2, Если есть информация, связанная с этим человеком, должен содержать номер столбца ID основной таблицы, таблицы 1. то же самое с 3-й таблицей. Я импортирую данные в эти таблицы, но хочу убедиться, что они ссылаются на нужного человека.