ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
 
 
Опции темы Поиск в этой теме Опции просмотра

Delphi+SQL
  #1  
Старый 11.04.2008, 12:56
Аватар для Exile1985
Exile1985
Участник форума
Регистрация: 10.08.2006
Сообщений: 147
Провел на форуме:
404152

Репутация: 94
По умолчанию Delphi+SQL

Привет, вообще парни помогите одержать победу над SQL

как мне правильно составить SQL запрос, вообщем задача такова:
есть 3 таблицы MS Access,
1-я: Называется SC
Поля
Key1=ключевое поле-счетчик
СК полное наименование = полное наименование компании
СК скоращенное наименование = соответсвенно сокращенное наименование

2-я: наз. TypeSH
поля
Key1 = аналогично пред-щей
Тип страхования = содержит види страх-я

3-я: наз. КВ
поля
Key1 - ....
Страховая компания = тип integer, содержит соответствующий номер записи в таб. SC в соответсвии с ее счетчкиком

Текущий = логическое

переменные SQL: :CK - содержит данные из SCBox.Text

DataModule2.KBQuery.Parameters.ParamByName('CK').V alue:=SCBox.Text;
Где SCBox это DBLookupComboBox указывающий на таблицу SC, поле "СК скоращенное наименование",
что такое DataModule и KBQuery думаю пояснять не нужно.

мне нужно выбрать из таблицы KB поле в котором поле "Страховая компания" будет равно полю "СК скоращенное наименование" из таблциы SC, и в котором поле "Текущий"(в таблице KB) будет равно true.

В SQLQuery пишу следующий запрос:

Код:
SELECT *
FROM KB outer
WHERE :CK = (SELECT [СК скоращенное наименование] FROM SC inner
WHERE Key1 LIKE outer.[Страховая компания]) AND Текущий = true;
в теория я думал что должен получить 1 строку, но при переводе QSLQuery в true он ругается что нашел ошибку в предложении FROM

Сразу извиняюсь за такую муть , SQL использую впервый да и базу пишу в принципе тоже, просто для уменьшения размера базы я вынес повторяющиеся данные в разные таблицы, а в тех таблицах где они используются просто указываю текущий норме(по счетчкику в таблице содержащей нужные данные) записи таким образом у меня например название компании Первая Страховая Компания, бедет только в 1 таблице, а все таблицы и записи в которых указывается эта компания будет только цифра 1 т.к. эта компания идет первой по счету в таблице списка компаний
 
Ответить с цитированием
 



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обнаружение Sql инъекций в Oracle, часть первая k00p3r Чужие Статьи 1 12.07.2005 08:51
Обнаружение Sql инъекций в Oracle, часть вторая k00p3r Чужие Статьи 0 13.06.2005 11:26
Sql инъекция и Oracle, часть первая k00p3r Чужие Статьи 0 13.06.2005 11:23
Внедрение Sql кода с завязанными глазами k00p3r Чужие Статьи 0 12.06.2005 20:48
SQL Injection в Oracle k00p3r Чужие Статьи 0 12.06.2005 12:41



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ