Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 19.10.2017
Сообщений: 17
07.11.2017, 19:05  [ТС]
Студворк — интернет-сервис помощи студентам
Привет коллеги, подскажите на простом примере, как добавить строку в DBGrid выше или ниже позиции курсора
0
 Аватар для krapotkin
6851 / 4677 / 1465
Регистрация: 14.04.2014
Сообщений: 20,674
Записей в блоге: 21
07.11.2017, 22:22
dataset.Insert;

dataset.Next;
dataset.Insert;

Добавлено через 1 минуту
только никакой явной позиции в DBGrid нет
все зависит от того как отсортирован датасет
поэтому вставленная запись должна улететь в место, которое ей положено сортировкой
0
0 / 0 / 0
Регистрация: 19.10.2017
Сообщений: 17
07.11.2017, 22:23  [ТС]
А как удалить сортировку?
0
 Аватар для krapotkin
6851 / 4677 / 1465
Регистрация: 14.04.2014
Сообщений: 20,674
Записей в блоге: 21
08.11.2017, 00:29
сортировка это концепция. ее нельзя "удалить"
при запросе данных с сервера нормальные люди указывают, как эти данные должны быть отсортированы
и получают в ответ набор данных, он же датасет
этот датасет и ОТОБРАЖАЕТСЯ в гриде
0
0 / 0 / 0
Регистрация: 19.10.2017
Сообщений: 17
08.11.2017, 00:42  [ТС]
Как установить сортировку по умолчанию на столбец с именем ID
0
пофигист широкого профиля
4770 / 3206 / 862
Регистрация: 15.07.2013
Сообщений: 18,613
08.11.2017, 03:07
Цитата Сообщение от Виталий1993 Посмотреть сообщение
Как установить сортировку по умолчанию на столбец с именем ID
Привет, коллега. А какой набор данных и через какие компоненты выводится в TDBGrid? Да и конкретную СУБД, которую вы используете тоже стоит указать.

Добавлено через 7 минут
И кстати да.
"Сортировка по умолчанию" она таки есть для всех СУБД или почти для всех. Но только при работе с компонентом TTable.
А "установить" такую сортировку по умолчанию по своему желанию невозможно никак.
Посему вам стоит сначала продумать структуру вашей базы в целом и (возможно) конкретной таблицы в частномти
0
 Аватар для krapotkin
6851 / 4677 / 1465
Регистрация: 14.04.2014
Сообщений: 20,674
Записей в блоге: 21
08.11.2017, 07:59
Цитата Сообщение от Виталий1993 Посмотреть сообщение
Как установить сортировку по умолчанию на столбец с именем ID
Delphi
1
query.sql.text := 'select ID, поле1 , поле2 from table1 ORDER BY ID';
0
0 / 0 / 0
Регистрация: 19.10.2017
Сообщений: 17
08.11.2017, 08:11  [ТС]
Я криво поставил вопрос. Смысл такой, есть таблица а MS Access, с полями id, fio, tabnum, поле id имеет тип данных счётчик, отображается таблица в DBGrid, мне необходимо добавить запись выше или ниже курсора(не принципиально). При нажатии на кнопку «+» в DBNavigator все казалось бы идёт хорошо, но при обновлении DBGrid поле id в новой записи автоматически принимает значение «последнее в таблице». Повлиять на счётчик добавлением нужного мне значения не выходит, insert-том добавить тоже не выходит(опять же строка убегает вниз), как мне быть? помогите пожалуйста
0
 Аватар для krapotkin
6851 / 4677 / 1465
Регистрация: 14.04.2014
Сообщений: 20,674
Записей в блоге: 21
08.11.2017, 08:43
помогаем
ID совершенно не предназначено для того, для чего вы его используете
он ОБЯЗАН быть больше предыдущего
если вы хотите иметь какой-то другой номер, который вставляется между, перед, после и т.д., заведите отдельное поле и придумывайте логику, как его заполнять
вот по нему и сортируйте. от сортировки вам все равно никуда не деться
0
0 / 0 / 0
Регистрация: 19.10.2017
Сообщений: 17
08.11.2017, 08:51  [ТС]
Спасибо большое, теперь хоть стало понятно почему так происходит, буду пытаться что-то придумать
0
 Аватар для Пытливый
3763 / 2271 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
12.11.2017, 13:26
ID совершенно не предназначено для того, для чего вы его используете
он ОБЯЗАН быть больше предыдущего
Это несколько неверно. Главный ключ таблицы, должен быть уникальным в рамках данной таблицы и совершенно не обязательно больше или меньше последнего. Есть жадные СУБД которые в целях экономии этих ключей могут искать освободившийся после удаления и присваивать его новой записи.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
12.11.2017, 13:26
Помогаю со студенческими работами здесь

Как определить находятся ли заданные точки выше этой прямой или ниже неё
Люди помогите плиз!!!Информатик задал:нужно задать уравнение прямой по 2 точкам, координаты которых вводит человек.Ещё вводится несколько...

Как в dbgrid добавить строку?
Здравствуйте. Подскажите как сделать так, чтобы при нажатии на кнопку, в dbgrid создавалась новая пустая строка, желательно в конце. Суть в...

Как добавить строку из DBGrid в MS Word?
Суть проблемы такая: при выборе строки в DBGrid надо отправить её в MS Word, да так чтобы эта строка добавляла информации. Например,...

Как добавить новую строку в DBGrid?
как добавить новую строку в DBGrit? Добавлено через 3 минуты я пробовал так, не получается if DataModule4.ADOQuery1.Modified then...

Как получить значение позиции курсора(фокуса) в DateTimePicker (день,месяц или год), когда календарь закрыт?
Доброго времени суток. Подскажите, как получить значение позиции курсора(фокуса) в DateTimePicker (день,месяц или год), когда календарь...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru