Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.60/25: Рейтинг темы: голосов - 25, средняя оценка - 4.60
0 / 0 / 1
Регистрация: 29.12.2015
Сообщений: 131

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

25.04.2016, 13:33. Показов 5170. Ответов 35
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день. Как лучше сделать,чтобы новая запись добавлялась ВСЕГДА в конец таблицы. Order by не подходит. БД fbd, Delphi 7.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
25.04.2016, 13:33
Ответы с готовыми решениями:

Добавить запись в конец файла
Есть фот такая структура type st = record pri: string; cex: string; zarp:integer; end; var ...

Добавить строку в конец таблицы
Предположим в таблице MySQl есть строки 1,2,3,4,5 если удалить строку 3 добавить новую строку, то получиться 1,2,6,4,5 а мне необходимо...

Добавить данные в конец таблицы dataGridView
Доброго всем дня! У меня вопрос с добавлением данных в конец dataGridView. Есть форма, на ней dataGridView1 + кнопка. По кнопке...

35
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
25.04.2016, 13:43
Цитата Сообщение от Korulik Посмотреть сообщение
новая запись добавлялась ВСЕГДА в конец таблицы
Здесь кое-что писал
insert into + order by?
Сортировка при занесении данных в базу данных
0
0 / 0 / 1
Регистрация: 29.12.2015
Сообщений: 131
26.04.2016, 10:08  [ТС]
Grossmeister, благодарю, буду изучать!

Добавлено через 20 часов 22 минуты
А если как вариант добавить поле, в которое записывать дату/время создания записи? Как правильно это осуществить?
0
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
26.04.2016, 10:15
Цитата Сообщение от Korulik
если как вариант добавить поле, в которое записывать дату/время создания записи?
Такой вариант используется достаточно часто, хотя в целях сортировки можно использовать и уникальное id (PK- Primary Key), если такое конечно есть. Просто добавляешь колонку типа date (во многих СУБД дата и время хранятся в одном поле). Для заполнения можно использовать разные способы:
1. из приложения
2. default значение колонки таблицы, например, для Oracle
SQL
1
2
3
4
5
CREATE TABLE tab1
(
...
input_date  DATE  DEFAULT sysdate  -- sysdate - функция, возвращающая тек. дату/время
)
3. в триггере
0
0 / 0 / 1
Регистрация: 29.12.2015
Сообщений: 131
26.04.2016, 11:01  [ТС]
PK- Primary Key если даже order by делать, то он же будет сортировать так 1 11 2 3 4, соответственно 11 запись как последняя введённая вставиться не в конец, или я неправа?
0
5985 / 4560 / 1095
Регистрация: 29.08.2013
Сообщений: 28,197
Записей в блоге: 3
26.04.2016, 11:03
ОН будет сортировать по порядку
всегда
это если у вас колонка имеет тип INTEGER
если строка, то да - будет "1 11 2 3 4"
0
0 / 0 / 1
Регистрация: 29.12.2015
Сообщений: 131
26.04.2016, 11:08  [ТС]
qwertehok, спасибо большое, так видимо будет проще.
0
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
26.04.2016, 11:08
Цитата Сообщение от Korulik Посмотреть сообщение
он же будет сортировать так 1 11 2 3 4
Это в том случае, если id - строка (обычно такие вещи делают числовыми). Соответственно, если таки строка, то надо либо преобразовать в number (если это возможно), либо выровнять на одинаковую длину (обычно есть такие строковые функции).
Т.е. вместо 1 11 2 3 4 сделать 01 11 02 03 04
0
0 / 0 / 1
Регистрация: 29.12.2015
Сообщений: 131
26.04.2016, 11:12  [ТС]
У меня пока вообще нет РК, поэтому я поняла,что Integer и вопросов не должно быть
0
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
26.04.2016, 11:17
Цитата Сообщение от Korulik Посмотреть сообщение
У меня пока вообще нет РК
Это плохо. PK должен быть практически у любой таблицы. Только не для сортировки (это можно сказать побочный эффект), а для однозначной идентификации строки таблицы. Без этого трудно производить со строками манипуляции (изменение и удаление).
0
0 / 0 / 1
Регистрация: 29.12.2015
Сообщений: 131
26.04.2016, 12:17  [ТС]
Я дорабатываю проект, изначально не было ключа, база в fbd, и действительно сейчас добавить ключ не могу.
Изменение, удаление, и всё работает, просто мне нужно сделать,чтобы новая запись добавлялась в конец таблицы. Проблема

Добавлено через 1 минуту
тогда нет смысла мне вводить РК,если только я хочу для сортировки делать, чтобы новая запись в конце появлялась через order by. А как тогда
0
5985 / 4560 / 1095
Регистрация: 29.08.2013
Сообщений: 28,197
Записей в блоге: 3
26.04.2016, 12:20
Цитата Сообщение от Korulik Посмотреть сообщение
чтобы новая запись добавлялась в конец таблицы
новая запись всегда и добавляется в конец

Добавлено через 1 минуту
с чего вы решили что это не так?
0
0 / 0 / 1
Регистрация: 29.12.2015
Сообщений: 131
26.04.2016, 12:22  [ТС]
я тоже так думала, но у меня может добавиться в середину, а почитав форум, выяснилось,что это как бы куча и как сервер назад отдаст я не могу контролировать без order by или каким-то другим способом
0
5985 / 4560 / 1095
Регистрация: 29.08.2013
Сообщений: 28,197
Записей в блоге: 3
26.04.2016, 12:25
Цитата Сообщение от Korulik Посмотреть сообщение
но у меня может добавиться в середину
не может
это уже при выводе строка МОЖЕТ отобразится в середине если у вас вместо INTEGER строка

Цитата Сообщение от Korulik Посмотреть сообщение
без order by или каким-то другим способом
да

вы можете создать правильную таблицу с ID и перелить данные из вашей, тогда будет выводиться по порядку
0
0 / 0 / 1
Регистрация: 29.12.2015
Сообщений: 131
26.04.2016, 12:34  [ТС]
мне нужно после добавления записи через форму, чтобы она отображалась в Grid-е последней, ну или фокус на ней был,чтоб я могла распечатать не закрывая форму добавления. Не знаю. понятно ли написала

Добавлено через 1 минуту
значит лучше создать новую таблицу с id, лучшего варианта не придумать и так будет корректно, так? значит так и буду делать

Добавлено через 2 минуты
в IBExperte сейчас вставила запись и она появилась в середине, как?

Добавлено через 4 минуты
удалила все записи, запускаю приложение, вставляю 5 записей подряд с разными номерами, все вставляются, добавлять в конец(как я всегда и думала). Закрываю приложение, открываю, добавляю, запись на второе место становится, в общем в любое место

Добавлено через 1 минуту
а может можно поставить фокус на вновь добавленную запись просто?
0
5985 / 4560 / 1095
Регистрация: 29.08.2013
Сообщений: 28,197
Записей в блоге: 3
26.04.2016, 13:15
я не знаю как вы добавляете и что у вас за таблица

нормальная таблица такая
id / поле1/ поле2/ поле3/ полех/
где ID это счетчик или просто INTEGER

вы когда добавляете строку, если ID счетчик то он сам увеличивает ее на 1
и вам нужно лишь выбрать из таблицы Select max(id) from ...

а если у вас id просто INTEGER, то сначала получаете max, а при добавлении делаете max+1
после вставки опять запросом Select max(id) from ... получаете максимальное число
0
0 / 0 / 1
Регистрация: 29.12.2015
Сообщений: 131
26.04.2016, 13:26  [ТС]
да спасибо, я в курсе про id
0
5985 / 4560 / 1095
Регистрация: 29.08.2013
Сообщений: 28,197
Записей в блоге: 3
26.04.2016, 13:31
тогда что это?
Цитата Сообщение от Korulik Посмотреть сообщение
удалила все записи, запускаю приложение, вставляю 5 записей подряд с разными номерами, все вставляются, добавлять в конец(как я всегда и думала). Закрываю приложение, открываю, добавляю, запись на второе место становится, в общем в любое место
0
0 / 0 / 1
Регистрация: 29.12.2015
Сообщений: 131
26.04.2016, 15:38  [ТС]
я же объяснила,что база с таблицей была уже создана до меня без id. Спасибо, создам заново

Добавлено через 3 минуты
Мне не суть важно,куда вставляется новая запись, важно,чтобы фокус был на вновь добавленной, просто ищу пути,как сделать. Спасибо
0
5985 / 4560 / 1095
Регистрация: 29.08.2013
Сообщений: 28,197
Записей в блоге: 3
26.04.2016, 15:41
что в вашем понимании "фокус"?
что бы строка была выделена?
зачем?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.04.2016, 15:41
Помогаю со студенческими работами здесь

Макрос - добавить данные в конец таблицы
Друзья, нужна помощь. Существует ли макрос выполняющий следующую функцию: В столбце "А" имеется список слов(всегда разное...

Как добавить новую запись в конец файла
Здравствуйте. Имеется txt файл, в нем хванится информация о реках: 1 строка: "название" 2 строка: "длина" 3 строка:...

Добавить значение в конец таблицы на другом листе
Помогите плз решить задачку через VBA Имею два разных листа: LogList и WorkList Мне нужно, вызываю VBA функцию из WorkList,...

Печать таблицы в отчете - как добавить в конец пустые строки?
Печатается таблица в отчете с какими-то данными и хочется в конце этой таблицы добавить ещё пустых разлинованных строк (чтобы люди от руки...

Добавить запись сразу в две таблицы
привет есть 2 таблицы по 10 колонок как сделать чтобы при добавлений записи в 1 таблицу с инкрементом, также добавлялись и во...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru