Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
4 / 4 / 0
Регистрация: 28.09.2012
Сообщений: 178
1

База данных с нуля! Как подцепить Таблицы из ацесса к дельфи!?

28.09.2012, 13:46. Просмотров 1705. Ответов 8
Метки нет (Все метки)

Есть Таблицы в ацессе и запросы и выборки. Как прицепить все это к дельфи. Форма простая
.заказчик. Вводим имя.
.адрес. Вводим адрес.

.Поиск. Вводим данные поиска. Выбор поля из которого ищем,Адрес или Имя.

Вот. Буду рад если тему поддержат!!
Заранее Благодарю.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.09.2012, 13:46
Ответы с готовыми решениями:

База данных в дельфи
Создать таблицу в access и сделать запрос в дельфи из следующего кода В такой форме своим...

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

База данных в дельфи
Здравствуйте уважаемые форумчане. У меня вопрос новичка: У меня есть база данных сделанная на SQL и...

База данных в дельфи кому просто интересно сделать
По автотрансопртному предприятию на примере маршруток города (хватит и одного маршрута и около...

8
1 / 1 / 1
Регистрация: 23.07.2012
Сообщений: 42
28.09.2012, 13:59 2
Цитата Сообщение от Slalom Посмотреть сообщение
.заказчик. Вводим имя.
.адрес. Вводим адрес.
одна таблица?
0
132 / 129 / 31
Регистрация: 12.12.2011
Сообщений: 456
28.09.2012, 14:04 3
Через ADOQuery и ADOConnection. В Connection настраиваем доступ к БД (через ConnectionString). В Query пишем нужный запрос SQL. Предварительно указав в св-ве Connection нужный ADOConnection.
1
4 / 4 / 0
Регистрация: 28.09.2012
Сообщений: 178
28.09.2012, 14:13  [ТС] 4
нет таблиц несколько. Форма в дельфи одна.

Добавлено через 5 минут
пусть будет так.
Таблица >Заказчик: ФИО:Адрес.....................< Это
Таблица >Машины: ФИО(владельца):марка
ну и запрос >Ищем_BMV: ФИО:марка................< поля

Это для примера.

Добавлено через 2 минуты
А в дельфи хотелось бы видеть только. Введите ФИО Введите адрес Введите марку.
+ поиск. Введите марку. А он тебе выдает всех владельцев искомой марки.
0
4 / 4 / 0
Регистрация: 28.09.2012
Сообщений: 178
28.09.2012, 14:16  [ТС] 5
Спасибо конечно я поисчу как с написанным работать но нельзя ли чуть чуть кода???))

Добавлено через 1 минуту
И еще нельзя просто обращение к запросу написать нежели сам запрос?

Добавлено через 33 секунды
А данные выдать в какой нибудь Едит?
0
132 / 129 / 31
Регистрация: 12.12.2011
Сообщений: 456
28.09.2012, 14:59 6
Что в Вашем понимании "Обращение к запросу"? За выполнение запроса отвечает ADOQuery. Предполагается, что он связан с Connection. Для выполнения запроса нужно сделать следующее:
Delphi
1
2
3
4
5
6
7
ADOQuery1.Active:=False;
ADOQuery1.SQL.Clear();
ADOQuery1.SQL.Add('{Сюда пишем 1-ую строку запроса}');
ADOQuery1.SQL.Add('{Сюда пишем 2-ую строку запроса}');
{...}
ADOQuery1.SQL.Add('{Сюда пишем n-ую строку запроса}');
ADOQuery1.Active:=True; //Запрос выполняется, если успешно, то в Query лежит результат
Выбирается какое-то число строк из БД. Или ничего. Доступ к данным в ТЕКУЩЕЙ (i-ой) строке можно сделать так:
Delphi
1
2
ADOQuery1.RecNo:=i;
MyVar:=ADOQuery1.FieldValues['FieldName'];
А выводить результат можно куда угодно.
1
4 / 4 / 0
Регистрация: 28.09.2012
Сообщений: 178
28.09.2012, 16:10  [ТС] 7
Давайте попробуем по другому. Я в дельфи(БД) как фигурист на хоккее, правил не знаю да и клюшки нет. Но безумно хочу научиться. Сами таблицы у меня готовы, и вот именно в дельфи я хочу их реализовать. Что бы не видеть огромного кол-ва заполненых полей а одно красивое чистое поле ку забил инфу и сохранил. если надо нашел и достал. Можно пока без запроса. Просто прицепить к дельфи(форме) таблицы ацесса. Сохранять туда и редактировать и опять сохранять. Уж простите за назойливость.))

Добавлено через 20 минут
Delphi
1
2
3
4
5
6
7
8
9
procedure TForm1.Button1Click(Sender: TObject);
var i: integer;
MyVar:variant;
begin
SqlQuery1.RecNo:=2;
MyVar:=SQLQuery1.FieldValues['C:\Documents and Settings\Àäìèíèñòðàòîð\Ìîè äîêóìåíòû\files\áä\bd.mdb'];
end;
 
end.
как то так???
0
132 / 129 / 31
Регистрация: 12.12.2011
Сообщений: 456
28.09.2012, 16:41 8
Не совсем)))
Variant в описании типа функции FieldValues говорит о том, что тип результата будет соответствовать типу поля в БД. То есть если поле String, то и в результате получим String. См. описание))
Допустим, я хочу из таблицы "Заказчик" выудить всю информацию, где ФИО = "Вася П.П." И просто выдать сообщение ФИО+Адрес. "Вася П.П." запишем в Edit1/
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
procedure TForm1.Button1Click(Sender: TObject);
var i:Integer;
    FIO,Addr:String;//Сюда будем класть ФИО и адрес
begin
   ADOQuery1.Active:=False;
   ADOQuery1.SQL.Clear;
   ADOQuery1.SQL.Add('SELECT * FROM [Zakazchik] WHERE [FIO] = '+Edit1.Text);//Текст запроса
   ADOQuery1.Active:=True;
   if ADOQuery1.RecordCount<>0 then
   begin
       for i:=1 to ADOQuery1.RecordCount do
       begin
          ADOQuery1.RecNo:=i;
          FIO:=ADOQuery1.FieldValues['FIO']; //Здесь будет тип поля с именем FIO т.е. String!
          Addr:=ADOQuery1.FieldValues['Address'];
          ShowMessage(FIO+' '+Addr);
       end;
   end;
end;
Не совсем понимаю, что точно нужно...
ЗЫ: Всегда делайте названия полей и таблиц только латиницей!
1
4 / 4 / 0
Регистрация: 28.09.2012
Сообщений: 178
01.10.2012, 08:29  [ТС] 9
В общем так. Нашел как подключить БД К Дельфи. Кому интересно:
Нам надо
TDBGrid
TDataSource
TADOConnection
TADOQuery
Создаем таблицу в acess к примеру такую.
ФИО — строковый тип данных (fio)
оценка — числовой тип данных (oz) название таблицы будет Student.
Далее TADOQuery в свойстве Connection связываем с TADOConnection
TDataSource в свойстве DataSet связываем с TADOQuery
TDBGrid в свойстве DataSource связываем с TDatasource
Далее выделяем компонент TADOConnection и в свойстве LoginPromt ставим на False.Чтобы не просил пароль к достопу к нашей БД.
дальше в свойстве ConnectionString нажимаем на кнопку с «…» и появляется окно где нажимаем Build
В следущем окне мы выбираем провайдера, а именно Microsoft Jet 4.0 OLE DB Provaider и нажимаем кнопку «Далее«.
В следущем окне мы указываем путь к нашей БД и имя пользователя по умолчанию Admin. Если ваша БД находится в корневом каталоге с программой, то в данном поле достаточно указать ее имя с расширением, а если еще в подкаталоге, то указывается это примерно так BD\mydb.mdb
Там есть кнопочка ... жмем ее и ищем наш файл.
Почти все закончили осталось только нажать кнопку «Ок» и в свойстве компонента TADOConnection Mode выбрать из выпадающего списка cmShareDenyNone.
ВСЕ!!! Подключение есть. Вот если хотите можем вывести все поля нашей таблицы Student
Delphi
1
2
3
4
5
6
procedure TForm1.FormCreate(Sender: TObject);
begin
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('SELECT * FROM Student');
ADOQuery1.Active:=True;
end;
Если кому надо дам ссыль на сайт где все описано еще подробнее.

Добавлено через 3 минуты
Vabos, Вот теперь примерно понимаю о чем ты. Буду пробовать твои советы))) Позже отпишусь...

Добавлено через 11 минут
Delphi
1
 WHERE [FIO] = '+Edit1.Text
Здесь выдает ошибку типа пропущен оператор [FIO]=(((
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.10.2012, 08:29

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

C++ Builder База Данных с нуля
Доброго времени суток! Вот, уже стёрла глаза о жутко тослстую и жутко вумную книжку по работе с БД...

Как правильно создавать таблицы SQL База Данных
Приветствую. Вот какая у меня проблема необходимо программно создавать таблицу, имя таблицы...

База данных с нуля (Web форма на C# БД на MS SQL Server 2008)
Привет всем:) Хочу написать на C#Web форму для доступа к БД MS SQL Server 2008. 1.Установил...

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


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.