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

Строка при открытии

04.04.2017, 19:27. Показов 421. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток, нужно сделать так что бы при открытии программы, она автоматически создавала строку в базе данных с названием текущей даты, помогите пожалуйста, спасибо !!!!
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.04.2017, 19:27
Ответы с готовыми решениями:

При открытии папки открывается командная строка
зарегистрированные типы файлов, для паток и устройств. фото для примера у меня 7-ка стоит! Проблема такая, при открытии моего...

При открытии любой программы, постоянной "выскакивает" командная строка
При открытии любой программы, постоянной "выскакивает" командная строка, т.е., окно самой проги и окно командной строки.Не могу разобраться...

При открытии обычной папки вместо нее открывается либо окно поиска, либо командная строка
Здравствуйте, я только начинающий пользователь, у меня такая проблема, при открытии обычной папки вместо нее открывается либо окно поиска,...

10
1076 / 989 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
04.04.2017, 19:47
А что такое "название текущей даты"? Как оно выглядит?
Строка создается не в базе данных, а в таблице базы данных. В связи с этим вопрос: как называется таблица?
Здесь на форуме принято называть СУБД с которой идет работа, чтобы можно было учесть детали, от которых многое может зависеть.
0
0 / 0 / 1
Регистрация: 12.02.2017
Сообщений: 40
05.04.2017, 08:24  [ТС]
есть БД с название "Otchet" нужно что-бы при открытии программы она автоматически создавала строку в ней и работать с этой строкой, а не с другими, как реализовать это, т.е. SQL запросы??? просто думал связать с датой или временем ..... Прошу прощения за не точный вопрос
0
1076 / 989 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
05.04.2017, 08:47
Наименование БД никому ни о чем не говорит.
Чтобы ответить и при таком "уточнении" вопроса, надо знать с какой системой управления базами данных (СУБД) происходит работа (Access это, или MS SQL Server, а может Paradox и т.п.)
Это важно, в том числе и потому, что созданную новую строку в разных СУБД сделать актуальной можно по разному.
А может не получится нигде, если неправильно спроектировать таблицы в БД.

Если важна дата запуска программы и только, то вполне может быть устроит запись в ini-файл.

Надо более развернуто формулировать вопрос, чтобы здешняя публика не гадала чего надо автору темы на самом деле.
0
0 / 0 / 1
Регистрация: 12.02.2017
Сообщений: 40
05.04.2017, 14:55  [ТС]
Ок, прошу прощение, Access
0
1076 / 989 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
05.04.2017, 18:03
Так все же, какова цель записи даты при открытии программы?
Допустим, программа за день будет открыта 50 раз.
Из вопроса в теме получается, что будут созданы 50 новых строк с одной и той же датой.
Если это утверждение не верно, то в чем прикол (т.е. истинная цель такой записи)?
0
05.04.2017, 18:09

Не по теме:

На лог похоже

0
0 / 0 / 1
Регистрация: 12.02.2017
Сообщений: 40
05.04.2017, 19:15  [ТС]
Цитата Сообщение от Скандербег Посмотреть сообщение
Допустим, программа за день будет открыта 50 раз.
Не важно, сколько раз будет создана запись, это может быть и в пользу, можно будет узнать была ли закрыта программа во время работы. Главное нужно что бы программа работала только с новой строкой и вносила изменения только в нее
0
1076 / 989 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
05.04.2017, 20:00
Тогда, прежде всего, в таблице должно быть поле, где хранится уникальный идентификатор строки (в Акссессе тип такого поля называется "Счетчик").

При открытии программы запросом INSERT вставляется строка с датой:

Delphi
1
2
3
4
5
6
7
8
9
10
11
  ADOQuery1.SQL.Text := 'Insert into <здесь название таблицы> ' +
     '(<здесь название поля, которое хранит дату>) values (:Dt)';  //:Dt - параметр
  ADOQuery1.Parameters[0].Value := DateOf(Date);
  ADOQuery1.ExexSQL; //добавлена строка
 
  //теперь надо получить идентификатор новой строки, например, так:
  ADOQuery1.SQL.Text := 'SELECT @@identity as ID';
  ADOQuery1.Open;
  if not ADOQuery1.Eof then
    aID := ADOQuery1.FieldValues['ID'];
  ADOQuery1.Close;
где ADOQuery1 - отдельный компонент, связанный с БД;
aID : Integer - глобальная переменная, в которой будет хранится значение идентификатора новой строки
DateOf - встроенная функция Дельфи, отрезающая время из даты (иначе Акссесс будет паниковать)

Используя переменную aID (назвать как угодно) можно будет работать с конкретной строкой таблицы БД.
1
 Аватар для Пытливый
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
05.04.2017, 20:43
Например так:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
procedure TForm25.FormCreate(Sender: TObject);
begin
 try
  ADOConnection1.Open;
  ADOTable1.Open;
  ADOTable1.Append;
  ADOTable1['Time'] := Now;
  ADOTable1['Operation'] := 'Старт программы';
  ADOTable1.Post;
 except
  ShowMessage('Ошибка БД');
 end;
end;
 
procedure TForm25.FormDestroy(Sender: TObject);
begin
 if not ADOTable1.Active then Exit;
 ADOTable1.Append;
 ADOTable1['Time'] := Now;
 ADOTable1['Operation'] := 'Финиш программы';
 ADOTable1.Post;
 ADOTable1.Close;
end;
1
0 / 0 / 1
Регистрация: 12.02.2017
Сообщений: 40
08.04.2017, 10:37  [ТС]
Спасибо за ответы, все таки разобрался
Цитата Сообщение от Скандербег Посмотреть сообщение
где ADOQuery1 - отдельный компонент, связанный с БД;
aID : Integer - глобальная переменная, в которой будет хранится значение идентификатора новой строки
DateOf - встроенная функция Дельфи, отрезающая время из даты (иначе Акссесс будет паниковать)
спасибо, объяснил досконально как на пальцах
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
08.04.2017, 10:37
Помогаю со студенческими работами здесь

Всплывает реклама "Вулкан" при открытии видео Youtube, так же всплывают при открытии через Chrome
Лог во вложении.

Загрузка процессора 100% при открытии диспетчера. Зависания при открытии папок или программ. Зависания браузера
Здравствуйте. ПК: (Данные с AIDA64 Network Audit) Операционная система Microsoft Windows 10 Pro Процессор: Тип ЦП QuadCore...

Загрузка ЦП под 100% при запуске винды, при открытии браузера, при переходе между вкладками
Всем доброго времени суток. У супруги ноут SONY VPCEl - AMD E2, 4Гб ОЗУ. Windows 7 - 64. Проблема описана в теме. Файл AVZ...

Файл: Как сделать так, чтобы при нажатии на 1-ую кнопку считывалася 1-ая строка, при нажатии на 2 - 2 строка и т.д.
На форме размещено 30 кнопок. В файле .txt размещено 30 строк. Как сделать так чтобы при нажатий на 1 кнопку считувалася 1 строка, при...

Загрузка ЦП под 100% при запуске винды, при открытии браузера, при переходе между вкладками Windows7
Доброе время суток !!! после прочтения темы https://www.cyberforum.ru/viruses/thread1294643.html и выполнив некоторые рекомендации решил...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru