Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
21 / 19 / 12
Регистрация: 03.11.2013
Сообщений: 870
MS Access

Подключение к БД + DbGrid

01.12.2013, 22:40. Показов 1744. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как сделать подключения к бд (mdb). Чтобы приложение (экзешник созданный) считывал из этой же папки где лежит exe либо как-то указывать путь.

Плюс мнене дали ответы на вопросы, я их повторю)
1. При вводе определенных значений меняется цвет ячейки (например в стобце 9, если введено значение больше 10, то она становится красным)
2. Можно как-то компонентам label присвоить значения названия столбцов в акцессе? (например лабел1.каптион=названию столбца 1)

3. dbedit как сделать переход не по таб, а по энтер? Например завели значение в тбедит1 нажали энтер и курсор перешел в тбедит2
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.12.2013, 22:40
Ответы с готовыми решениями:

В свойстве DBGrid не показывает подключение
Здравствуйте! Помогите мне пожалуйста. я когда подключаю базу данных через ADOQuery и DataSource то все хорошо, а когда в DBGrid выбираю...

Необходимо, чтобы при изменении данных в Combobox, изменялось подключение к DBGrid и прочим компонентам
Такая ситуация: Необходимо чтобы на форме Rychenik при изменении данных в Combobox изменялось подключение к DBGrid и прочим компонентам на...

Запросы: для выбранного в DBGrid сотрудника отобразить информацию в другом DBGrid
Добрый вечер! Вот какой вопрос необходимо для выбранного сотрудника в DBGrid отобразить информацию в другом DBGrid допустим об образовании....

8
5 / 5 / 4
Регистрация: 26.08.2010
Сообщений: 262
01.12.2013, 22:49
Цитата Сообщение от Vologd Посмотреть сообщение
Как сделать подключения к бд (mdb). Чтобы приложение (экзешник созданный) считывал из этой же папки где лежит exe либо как-то указывать путь.
Когда создаешь подключение в ADOConnection просто оставь там одно название своего файла .mdb, а весь остальной путь удали. Тоесть в поле "1. Выберите или введите имя базы данных:" должно быть только название твоего файла.
1
 Аватар для teleprog
177 / 149 / 43
Регистрация: 14.08.2008
Сообщений: 1,290
01.12.2013, 22:58
Подключение к базе
Delphi
1
2
3
4
5
6
7
var s, path: string;
begin
  path := ExtractFilePath(Application.ExeName) + 'имя файла.mdb';
  //собираем строку подключения к базе-путь 
  s := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' + path + ';Persist Security Info=False;';
  con1.ConnectionString := s;
  con1.Connected := true;
Раскраска DBGrid
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
procedure TformColorGrid.DBGridDrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
Begin
    // Даем DBGrid'у ЦУ 
    IF { какое-то условие }
    Then  Begin
            TDBGrid(Sender).Canvas.Brush.Color:=clGreen;
            TDBGrid(Sender).Canvas.Font.Color:=clWhite;
        End;
    // если строка была выделена, оставляем "подсвеченные" цвета  
    IF  gdSelected   IN State
    Then Begin
            TDBGrid(Sender).Canvas.Brush.Color:= clHighLight;
            TDBGrid(Sender).Canvas.Font.Color := clHighLightText;
        End;
    // А теперь пусть он рисует сам !
    TDBGrid(Sender).DefaultDrawColumnCell(Rect,DataCol,Column,State);
End;
Переход по ентеру
Delphi
1
2
3
4
5
procedure TMainForm.dbedt1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key=13 then DBEdit2.SetFocus;
end;
1
21 / 19 / 12
Регистрация: 03.11.2013
Сообщений: 870
01.12.2013, 23:57  [ТС]
Цитата Сообщение от demiancz Посмотреть сообщение
Когда создаешь подключение в ADOConnection просто оставь там одно название своего файла .mdb, а весь остальной путь удали. Тоесть в поле "1. Выберите или введите имя базы данных:" должно быть только название твоего файла.
фиг знает, но так делал, не получилось(
я правда, уже на сделаном проекте менял в адоконектион этот путь, там сразу в дбгрид все пропадает...может если бы сразу сделал, как тут сказано дак наверно полуилось бы. В инете читал про этот способ

Добавлено через 18 минут
Цитата Сообщение от teleprog Посмотреть сообщение
Подключение к базе
Delphi
1
2
3
4
5
6
7
var s, path: string;
begin
  path := ExtractFilePath(Application.ExeName) + 'имя файла.mdb';
  //собираем строку подключения к базе-путь 
  s := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' + path + ';Persist Security Info=False;';
  con1.ConnectionString := s;
  con1.Connected := true;
Раскраска DBGrid
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
procedure TformColorGrid.DBGridDrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
Begin
    // Даем DBGrid'у ЦУ 
    IF { какое-то условие }
    Then  Begin
            TDBGrid(Sender).Canvas.Brush.Color:=clGreen;
            TDBGrid(Sender).Canvas.Font.Color:=clWhite;
        End;
    // если строка была выделена, оставляем "подсвеченные" цвета  
    IF  gdSelected   IN State
    Then Begin
            TDBGrid(Sender).Canvas.Brush.Color:= clHighLight;
            TDBGrid(Sender).Canvas.Font.Color := clHighLightText;
        End;
    // А теперь пусть он рисует сам !
    TDBGrid(Sender).DefaultDrawColumnCell(Rect,DataCol,Column,State);
End;
Переход по ентеру
Delphi
1
2
3
4
5
procedure TMainForm.dbedt1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key=13 then DBEdit2.SetFocus;
end;

Для меня тут все как на китайском) пару вопросов)
начну пока с этого)
Delphi
1
2
con1.ConnectionString := s;
  con1.Connected := true;
ругается на кон1. что это? пишет мол тоже не знает что такое)
0
 Аватар для teleprog
177 / 149 / 43
Регистрация: 14.08.2008
Сообщений: 1,290
02.12.2013, 00:04
Это компонент для подключения к базе аксеса
con1: TADOConnection;
1
21 / 19 / 12
Регистрация: 03.11.2013
Сообщений: 870
02.12.2013, 00:16  [ТС]
Цитата Сообщение от teleprog Посмотреть сообщение
Это компонент для подключения к базе аксеса
con1: TADOConnection;
ввел переменную
con1 : TADOConnection;

данную вами процедуру, вбил в клик кнопки на форме. При нажатии на нее выскакивает ошибка(

ага) не успел ответить))) разобрался)

Добавлено через 10 минут
Что-то может не так делаю(
Я захожу в адоконктион двойным кликом
в строке use connection string заполнена на старую базу
я нажимаю билд
стираю полный путь и оставляю только название файла bd1.mbd. Жму ок, потмо еще раз ок. в дбгрид всеи счезает(((
и даже если я потом по новой все делаю иуказываю путь к БДс которой все работает, то дб грид уже ее не обновляет( то есть она там не отображается.
Может когда меняешь путь к бд, надо еще что-то обновить?
0
 Аватар для teleprog
177 / 149 / 43
Регистрация: 14.08.2008
Сообщений: 1,290
02.12.2013, 00:28
Выделите на форме компонент подключения, и в инспекторе свойств, в ConnectionString пропишите
Delphi
1
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=bd1.mbd;Persist Security Info=False;
После этого, попробуйте поменять свойство Connected на True

Добавлено через 7 минут
Или выложите архив исходника с базой, посмотрю
1
21 / 19 / 12
Регистрация: 03.11.2013
Сообщений: 870
02.12.2013, 01:32  [ТС]
Если будут какие советы по оформлению буду очень рад услышать! версия делфи XE5
Вложения
Тип файла: rar лаборатория 3этаж.rar (5.62 Мб, 16 просмотров)
0
 Аватар для teleprog
177 / 149 / 43
Регистрация: 14.08.2008
Сообщений: 1,290
04.12.2013, 02:46
У меня XE5 к сожалению нет.
В делфи 7, проект открываю, строку подключения прописываю
Delphi
1
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=bd1.mbd;Persist Security Info=False;
База в дизайн тайме подключается нормально. А скомпилить уже неполучается.


По оформлению, даже и незнаю что посоветовать.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.12.2013, 02:46
Помогаю со студенческими работами здесь

[C++ builder XE] DBGrid. Удаление/добавление/изменение БД mysql через DBGrid
Здравствуйте! Возможно тема заезженная, но не чего путнего не нашел(может так искал!) Нужна помощь в добавлении и изменении...

Как вывести в DBGrid информацию только по выбранной строке в другой таблице DBGrid?
У меня есть 3 таблицы - Компании, Адреса и Квартиры. Компании содержит поля - Код компании и название Адреса содержит поля - Код...

Как можно посчитать разницу столбцов DBGrid и вывести в другой столбец другого DBGrid?
Я знаю как посчитать разницу в одном и том же DBGrid. Но, дело в том, что мне нужно вывести это в другой DBGrid. Я сделала вот так,...

Фиксирование нужных столбцов DBGrid или скрыть относительно позиции гор. скролла DBGrid'a необходимые столбцы
Добрый день! Можно ли в компоненте DBGrid сделать фиксированными определенные столбцы? или же как то вычислять позицию горизонтального...

Перенос записей из одного DBGrid в другой DBGrid
Здравствуйте. Есть проблема! Ни как ни получается перенос записей Вот текст кода: procedure TF_Licenzie.DBGrid1CellClick(Column:...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
1С: Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью. Данные берутся из регистра сведений, по которому настроено. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
1С: Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор по наименованию группы. . .
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
1С: Программный отбор элементов справочника по значению перечисления
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит значение перечислений. / / Событие "НачалоВыбора" реквизита на форме. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru