Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.07.03;
Скачать: CL | DM;

Вниз

sql запрос - проблема разделения на части   Найти похожие ветки 

 
fynjy93 ©   (2011-03-25 16:39) [0]

может кто сможет помочь - у меня запрос, он не влазает в 255 символов для sql add, как бы его разделить, что бы делфи не ругалось на не правильный запрос - проверено, что запрос рабочий:

SELECT T_SPISOK_BIBLOITEK.Nazvaanie, T_SPISOK_BIBLOITEK.ADRESS, T_o_knige.nazvanie, T_o_knige.god_izdatelstva, T_Avtor.Names, T_Avtor.surname
FROM T_Avtor INNER JOIN (T_SPISOK_BIBLOITEK INNER JOIN T_o_knige ON T_SPISOK_BIBLOITEK.Kod_Bibliotek = T_o_knige.kod_biblioteki) ON T_Avtor.Kod_Avtora = T_o_knige.Kod_Avtora;

за ранее спасибо!


 
MsGuns ©   (2011-03-25 16:41) [1]

Какой компонент используется ?


 
Медвежонок Пятачок ©   (2011-03-25 16:41) [2]

как бы его разделить

пополам раздели


 
Медвежонок ХМЛ ©   (2011-03-25 16:42) [3]

Какой компонент используется ?

компонет const/var типа стринг и литреал справа через :=


 
clickmaker ©   (2011-03-25 16:43) [4]

используй альясы для таблиц


 
MsGuns ©   (2011-03-25 16:47) [5]

Имена столбцов/таблиц...
Повбывав бы !


 
Palladin ©   (2011-03-25 16:49) [6]

"12345" = "123" + "45"
если вдруг ты не знал


 
Palladin ©   (2011-03-25 16:49) [7]

дожили... строчку разделить на несколько не могут....


 
fynjy93 ©   (2011-03-25 16:59) [8]

DataModule2.avtor_query.sql.add("SELECT T_SPISOK_BIBLOITEK.Nazvaanie, T_SPISOK_BIBLOITEK.ADRESS, T_o_knige.nazvanie, T_o_knige.god_izdatelstva, T_Avtor.Names, T_Avtor.surname"+" FROM T_Avtor INNER JOIN (T_SPISOK_BIBLOITEK INNER JOIN T_o_knige ON T_SPISOK_BIBLOITEK.Kod_Bibliotek=T_o_knige.kod_biblioteki) ON T_Avtor.Kod_Avtora=T_o_knige.Kod_Avtora;");
так не пашет...


 
fynjy93 ©   (2011-03-25 17:01) [9]


> используй альясы для таблиц

можно по подробнее?


 
Loginov Dmitry ©   (2011-03-25 17:48) [10]


> так не пашет...


Где такой большой SQL-код набрал? Поменьше нельзя? Например
SELECT * FROM T_SPISOK_BIBLOITEK (для начала)
:)

Или хотя бы так:
SELECT sb.Nazvaanie, sb.ADRESS, k.nazvanie, k.god_izdatelstva, a.Names, a.surname
FROM T_Avtor a, T_SPISOK_BIBLOITEK sb, T_o_knige k
WHERE sb.Kod_Bibliotek=k.kod_biblioteki AND a.Kod_Avtora=k.Kod_Avtora


 
Медвежонок Пятачок ©   (2011-03-25 18:04) [11]

так не пашет...
так не сезон же еще. пахать.
ну и точка с запятой лишняя есть.


 
fynjy93 ©   (2011-03-25 19:11) [12]


> Или хотя бы так:
> SELECT sb.Nazvaanie, sb.ADRESS, k.nazvanie, k.god_izdatelstva,
>  a.Names, a.surname
> FROM T_Avtor a, T_SPISOK_BIBLOITEK sb, T_o_knige k
> WHERE sb.Kod_Bibliotek=k.kod_biblioteki AND a.Kod_Avtora=k.
> Kod_Avtora

не робит, по ковырялся, думаю без INNER JOIN не будет =(


 
Inovet ©   (2011-03-25 19:35) [13]

Попросили же сказать, через что и с чем работаешь.


 
fynjy93 ©   (2011-03-25 19:37) [14]

работаю я через ADO query , база в ACCESS 2007, обрабатываю  в делфи, ввожу запрос командой sql.add и sql.text


 
DiamondShark ©   (2011-03-25 20:19) [15]


> так не пашет...

Молча так. Не пашет и всё.
Или чем-то, всё-таки, ругается?


 
fynjy93 ©   (2011-03-25 20:39) [16]

пишет не известная ошибка


 
Inovet ©   (2011-03-25 21:46) [17]

> [16] fynjy93 ©   (25.03.11 20:39)
> не известная ошибка

Прямо сообщение об ошибке с ошибками пишет? В окне с сообщением должно работать ctrl+c.


 
fynjy93 ©   (2011-03-25 21:57) [18]

http://iscr.ru/photo/1301079418_111.jpg
вот тебе ссылка на скрин ошибки ctr+c не пашет


 
DiamondShark ©   (2011-03-25 22:08) [19]

Хопа!
Начали с невлезающей строки, а оказалось эвон как.

Ну, может, мы теперь фрагмент кода увидим, с указанием в какой строке ошибка.
А может нам настолько повезёт, что мы и класс исключения узнаем.
А если класс -- EOleException (что весьма вероятно), то может быть случится чудо, и нас осенит даже значением HResult

Хотя, нет. Чудес не бывает.


 
Игорь Шевченко ©   (2011-03-25 22:11) [20]


> пишет не известная ошибка


зачем ты врешь ?


 
Loginov Dmitry ©   (2011-03-25 22:22) [21]


> пишет не известная ошибка


В духе MS прям! :) При работе с MS SQL Server Management Studio подобного содержания ошибки лезут с завидным постоянством :)

И всеж таки давай больше подробностей!


 
fynjy93 ©   (2011-03-25 22:23) [22]


> А если класс -- EOleException

с таким классом не работал

> осенит даже значением HResult

не знаком с этим

> фрагмент кода увидим

это тот же запрос, что я кидал,прибавь только к нему
with DataModule2.avtor_query do
 begin
   Active:=false;
sql.Clear;
sql.Add("SELECT sb.Nazvaanie, sb.ADRESS, k.nazvanie, k.god_izdatelstva, a.Names, a.surname FROM T_Avtor a, T_SPISOK_BIBLOITEK sb, T_o_knige k WHERE sb.Kod_Bibliotek=k.kod_biblioteki AND a.Kod_Avtora=k.Kod_Avtora;");
Active:=true;
end;


 
И. Павел ©   (2011-03-25 22:42) [23]


> fynjy93 ©   (25.03.11 22:23) [22]

Используйте ADODataSet.

Почему сразу решили, что дело в длине строке? Если заменить запрос на более короткий, то все работает?


 
sniknik ©   (2011-03-25 22:46) [24]

Names


 
fynjy93 ©   (2011-03-26 00:36) [25]

нет, просто символов, которые может включать любое строковое значение - 255, а тут больше)
можно информацию о датасет, ни разу не пользовался.


 
Inovet ©   (2011-03-26 00:54) [26]

> [25] fynjy93 ©   (26.03.11 00:36)
> нет, просто символов, которые может включать любое строковое
> значение - 255, а тут больше)

Это отчего 255? Строки разные есть.
Это история про x,y,z. Ссылку забыл.


 
fynjy93 ©   (2011-03-26 00:59) [27]

понятно, видимо я ошибся))) полезу завтра с утра в гугл попоподу датасет)


 
Германн ©   (2011-03-26 02:08) [28]


> fynjy93 ©   (26.03.11 00:36) [25]
>
> нет, просто символов, которые может включать любое строковое
> значение - 255, а тут больше)

Это всего лишь ограничение IDE. На количество символов в одной "текстовой" строке исходника. К значениям переменных/констант это ни в коей мере не относится.


 
И. Павел ©   (2011-03-26 08:28) [29]


> fynjy93 ©

Обратите внимание на [24]. Попробуйте взять поле names в квадратные скобки - может быть это ключевое слово.


 
Медвежонок Пятачок ©   (2011-03-26 12:48) [30]

....AND a.Kod_Avtora=k.Kod_Avtora;");

Жирное убери наконец.


 
Плохиш ©   (2011-03-26 17:12) [31]

А я, всё-таки, посоветую аФФтару нанять программиста.


 
Плохиш ©   (2011-03-26 17:13) [32]


> Loginov Dmitry ©   (25.03.11 22:22) [21]

Ну да, у каждого дебилки MS виновато.


 
Loginov Dmitry ©   (2011-03-26 18:05) [33]


> Ну да, у каждого MS виновато


При работе с "MS SQL Server Management Studio Express Edition" задолбали сообщения типа:
- неизвестная ошибка
- неопознанная ошибка
- непредвиденный сбой
- и т.д. и т.п.

А уж кто там виноват, MS или не MS... Нет времени выяснять.


 
fynjy93 ©   (2011-03-26 19:43) [34]


>
> Обратите внимание на [24]. Попробуйте взять поле names в
> квадратные скобки - может быть это ключевое слово.

действительно есть прогресс, теперь он выводит 1 запись (их 6 есть) и выдает ошибку.
вот
http://iscr.ru/photo/1301157760_111.jpg

P.S. этот запрос идет на вывод в Exel, мало ли, поможет.


 
clickmaker ©   (2011-03-26 19:45) [35]

> При работе с MS SQL Server Management Studio подобного содержания
> ошибки лезут с завидным постоянством :)

потому что его индусы писали. Которым не помогли на данном форуме


 
Anatoly Podgoretsky ©   (2011-03-26 22:18) [36]

> fynjy93  (26.03.2011 19:43:34)  [34]

Элемент с индексом 6 для 6 записей недопустим, о чем и выдается сообщение.


 
Плохиш ©   (2011-03-27 01:47) [37]


> При работе с "MS SQL Server Management Studio Express Edition"
> задолбали сообщения типа:

Наверное я не стой студией работаю. Попробуй установить последнюю.


 
Palladin ©   (2011-03-27 04:12) [38]

а теперь считаем поля и видим что их 6... предварительный диагноз сводится к тому что пациент полез к 6 полю, которые имеет индек 5


 
Inovet ©   (2011-03-27 05:38) [39]

> [38] Palladin ©   (27.03.11 04:12)
> а теперь считаем поля и видим что их 6...

Пртизанен капут.


 
fynjy93 ©   (2011-03-27 17:28) [40]

ошибка найдена, одну из переменных из глобальной перевел в локальную и заработало!



Страницы: 1 2 вся ветка

Текущий архив: 2011.07.03;
Скачать: CL | DM;

Наверх




Память: 0.56 MB
Время: 0.011 c
15-1300355136
OW
2011-03-17 12:45
2011.07.03
Работник отдела персонала - что за зверь?


15-1300133801
tesseract
2011-03-14 23:16
2011.07.03
аквариум


1-1258894985
GreyWolf
2009-11-22 16:03
2011.07.03
Подскажите где взять Static Separator для Dialog Box


15-1298638136
>|<
2011-02-25 15:48
2011.07.03
Разработка универсального логгера всех действий на форме


8-1213428249
Настя
2008-06-14 11:24
2011.07.03
Необходимо обработать исключительную ситуацию