insert делает запись в начало таблицы а не в конец

Гавриленко Сергей Алексеевич
Дата: 12.02.2013 14:29:15
Какая разница, в каком "месте" таблицы находится запись, если без order by сервер будет выбирать их в любом ему вздумавшемся порядке?
fargutvest
Дата: 12.02.2013 14:34:08
Glory
fargutvest
Glory, А как тогда мне убедиться что добавленные строки записались именно вконец?

Зачем вам нужно, чтобы запись физически была в конце, если при выборке все равно нужно использовать order by ?
Что вы вообще понимаете под "концом таблицы" ?


это мне нужно для того чтобы читать из таблицы строки например вот так :
автор
Private Sub GData1(ByVal selectCom As String)
Dim connections As String = _
"Integrated Security=false;User=" & user & ";Password=" & password & ";Initial Catalog=" & nameBase & ";Connect timeout=" & timeout & ";Data Source=" & nameServ & ""
Me.dataAdapter = New SqlDataAdapter(selectCom, connections)
Dim commandBuilder As New SqlCommandBuilder(Me.dataAdapter)
Dim table As New DataTable()
table.Locale = System.Globalization.CultureInfo.InvariantCulture
Me.dataAdapter.Fill(table)
With table
For i = 0 To .Rows.Count - 1
DataGridView1.Rows.Add()
For j = 0 To .Columns.Count - 1
DataGridView1.Rows(i).Cells(j).Value = .Rows(i).Item(j).ToString

Next
Next
End With
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
GData1("SELECT * FROM repair ")
End Sub


в той же послелдовательности в какой они были записаны, например вот я экспортировал в SQL екселевский файл - сформировалась какая-то таблица, которая имеет первую строку и последнюю строку, и при добавлении новых строк мне нуждно чтоб они записывались в строки последняя+1, последняя+2 и т.д
Гавриленко Сергей Алексеевич
Дата: 12.02.2013 14:36:32
Заведите в таблице поле, которое будет определять порядок записей, и сортируйте по нему при выборке.
Gwa
Дата: 12.02.2013 14:43:26
fargutvest,
>>У меня таблица SQL.
Не имеет значения.
То что я Вам писал не зависит от конкретной БД.
fargutvest
Дата: 12.02.2013 14:46:20
Спасибо за ответы, как я понял строки в таблице хранятся хаотично и нужно делать какую-нибудь колонку для индентификации номера например id=1,2,3,4,5..., и при каждой новой записи читать эту колонку, искать максимальный номер N и новой записи присваивать N+1. А чтение делать например так "SELECT * FROM repair ORDER BY id" и тогда будет выводится в нужном порядке, я правильно понял?
fargutvest
Дата: 12.02.2013 14:47:18
Gwa
fargutvest,
>>У меня таблица SQL.
Не имеет значения.
То что я Вам писал не зависит от конкретной БД.

Ясно, это просто небольшое уточнение.
Гость333
Дата: 12.02.2013 15:03:14
fargutvest
при каждой новой записи читать эту колонку, искать максимальный номер N и новой записи присваивать N+1

Если у столбца будет свойство identity, то описанное вами будет происходить автоматически.
create table #test(id int identity, name varchar(100));
insert #test (name) values ('Сидоров');
insert #test (name) values ('Иванов');
insert #test (name) values ('Петров');
select * from #test order by id;
fargutvest
Дата: 13.02.2013 14:27:43
Всем спасибо, разобрался!