Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > .NET фреймворки > Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate)
Регистрация

Восстановить пароль
Повторная активизация e-mail


Ответ
 
Опции темы
Старый 28.03.2013, 21:32   #1
emdroof
Пользователь
 
Аватар для emdroof
 
Регистрация: 10.04.2011
Сообщений: 46
По умолчанию sql запрос, добавляющий запись не в текущую позицию, а в предыдущую

Всем Привет! У меня есть обычный запрос на добавления данных из textbox в sql таблицу:

Код:
myCmd.CommandText = "Insert Into Table1 (Ответы) Values(\'" + textBox2.Text + "\')";
Как сделать так, чтобы эта запись вставлялась не в самый конец, а в предпоследнюю строку?

Заранее Спасибо!
emdroof вне форума Ответить с цитированием
Старый 28.03.2013, 22:29   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,260
По умолчанию

если Вы задаёте такой вопрос, значит Вы не понимаете, что такое реляционные БД!
для SQL запросов нет такого понятия - первая строка, последняя строка, строка раньше или позже - вся зависит от порядка извлечения (см. ORDER BY)
Поэтому, скорее всего, Вам НЕ НУЖНО добавлять запись в определённое место!


извините, если разочаровал Вас...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 28.03.2013, 22:50   #3
Dux
Delphi Master
Форумчанин Подтвердите свой е-майл
 
Аватар для Dux
 
Регистрация: 31.03.2008
Сообщений: 810
По умолчанию

Полностью согласен с Serge_Bliznykov. Добавить запись в определенную строку невозможно. Можно только отобразить ее в определенной строке - думаю это Вам и нужно. При SQL сортировке - отсортируйте по нужному Вам параметру (дате добавления, индексу, имени) - зависит от конкретной задачи.
Dux вне форума Ответить с цитированием
Старый 01.04.2013, 14:05   #4
Object_File
Пользователь
 
Регистрация: 12.10.2012
Сообщений: 23
По умолчанию

Согласен со всеми ответами. Если уж очень надо могу посоветовать только сделать так, но это чистый гемор:
1. создать ID порядковыми числами
2. селектом вытащить максимальный ID из имеющихся
3. сохранить номер максимального ID в буфер
4. апдейтить данную id на плюс 1 (ID+1) (если максимальная была 38, то станет 39)
5. инсертить новые строки с тем ID что был в буфере (новая id будет 38)

как то так...
в конце селектом вытаскиваете Oder by ID. Получится так как вы и хотели, новые данные будут стоять предпоследними.
Пример с одним инсертом, со множествами надо тестить, пробуйте. Если все нормально отпишитесь. Удачи.
Object_File вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужно получить в запросе на выборку вычисляемое поле со смещением на предыдущую запись mortal2010 Microsoft Office Access 2 05.05.2011 15:24
SQL запрос на текущую запись SERG1980 БД в Delphi 5 12.11.2010 14:20
Сложный sql запрос или запись Rusl92 PHP 5 25.08.2010 14:15
Запись в конкретную строку, позицию.... DasModelka Общие вопросы Delphi 6 15.06.2010 15:03
Как получить текущую дату из SQL запроса? _ozzy_ SQL, базы данных 2 09.09.2008 20:15


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS
Здесь нужно купить рекламу за 7 тыс руб в месяц! )
пишите сюда - alarforum@yandex.ru
ИКС 840