Sql запрос в Delphi

  • Автор темы pavidlo
  • Дата начала
P

pavidlo

Гость
#1
Добрый день. Возникла проблема с sql запросом. Есть 2 таблицы: user и fiz_lica. Они имеют одинаковое поле user.. проблема в том, что в таблицу fiz_lica тянется id_user. Необходимо написать запрос таким образом, чтобы в fiz_lica тянулось имя пользователя, а не его id... В Аксесе я этот запрос сделал, а как мне его сделать в делфи?
 
S

SNike

Гость
#2
Что мешает использовать тот же текст SQL в Delphi ?
 
P

pavidlo

Гость
#3
Ошибка( Пишет типа ADOQuery1 filds 'id_user' not found... Нет его и все.
 
S

SNike

Гость
#4
ну так напиши в запросе Select * from Твоя_Таблица - и увидишь какие поля там есть
 
S

SNike

Гость
#5
не, не так далеко ;) да и за что?
Пусть человек выведет все что есть в базе и посмотрит какие поля и данные там есть
 
S

SNike

Гость
#6
Ошибка( Пишет типа ADOQuery1 filds 'id_user' not found... Нет его и все.
1) Дай полный текст твоего запроса
2) Если в двух таблицах одинаковые поля то в запросе нужно уточнять из какой именно таблицы использовать поле
2) Написал бы структуру таблиц, как они связаны друг с другом, и что нужно получить в результате запроса
 
N

newmbox

Гость
#7
Добрый день. Возникла проблема с sql запросом. Есть 2 таблицы: user и fiz_lica. Они имеют одинаковое поле user.. проблема в том, что в таблицу fiz_lica тянется id_user. Необходимо написать запрос таким образом, чтобы в fiz_lica тянулось имя пользователя, а не его id... В Аксесе я этот запрос сделал, а как мне его сделать в делфи?
sql везде, по сути, один и тот же, что в аксесе , что дельфе, если текст sql скопируешь из аксеса и вставишь в компонент запроса на дельфе все должно работать.
 

DarkKnight

Well-Known Member
01.08.2010
653
0
#8
sql везде, по сути, один и тот же, что в аксесе , что дельфе, если текст sql скопируешь из аксеса и вставишь в компонент запроса на дельфе все должно работать.
Какой SQL может быть в Delphi вообще???? :)))
Интерпритированием SQL-запроса выступает DB-провайдер, а они для разных СУБД-различные, есть некотрые расхождения в синтаксисах типо упавляющих конструкций "вввв" %01.10.2010% и прочих для различных СУБД, провайдер прекрасно понимает синтаксические особенности своей СУБД, и поэтому запрос на 100% идентичен, что в Accese что в коде Delphi(строка) если использовать тот же Provider=Microsoft.Jet.OLEDB.4.0;

А сам запрос хотелось бы посмотреть, хотя могу сразу сказать, советую в запросе указывать жесткую ссылочность на поля ТАБЛИЦА.ИМЯ_ПОЛЯ
К примеру есть 2 таблицы T1 и T2 с одинаковыми полями (id,s1,s2)
SELECT T1.ID,T1.S1,T2.S2 FROM T1,T2 WHERE T1.id = T2.id
 
R

Rus59Wolf

Гость
#9
Еще возможен вариант когда поле просто не задано. Похоже что база на акссесе, значит переносили с использованием TADOConnection, TADOTable, TADOQuery задавая поля fields у таблиц - возможно просто забыли добавить поле в отображение.

Хотя могу и ошибатся