Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Что делать с знаком ' при подстановке запроса?


Kolan ©   (2006-11-13 13:04:00) 

Здравствуйте,
 Есть како-нить компонент для работы с БД. У него есть свойство для хранения Sql запроса - строка Но запрос может содержать опострафы('). Что с ними делать?

1. Заменять на #39 нехочется
Больше решений нет у меня..

Пример:
FADODataSet.CommandText := Query;

Вот как туда запрос засунуть, например такой:
SELECT Measurments.MeasurmentID AS '№', Measurments.MeasurmentDateTime AS 'Время',
 Measurments.DeviceID AS 'Код элемента', DeviceTypes.TypeName AS 'Тип', Operators.SorName AS 'Оператор',
 Operations.OperationName AS 'Операция'
FROM Measurments, DeviceTypes, Operators, Operations
WHERE
 DeviceTypes.DeviceTypeID = Measurments.DeviceID AND
 Operators.OperatorID = Measurments.OperatorID AND
 Operations.OperationID = Measurments.OperationID;


Kolan   (2006-11-13 22:57:00) [1]

Угу, ясненько. Благодарю :)


MsGuns   (2006-11-13 22:26:00) [2]

SELECT Measurments.MeasurmentID AS '№', Measurments.MeasurmentDateTime AS [Время ],


Kolan   (2006-11-13 20:08:00) [3]

> пачаны предпочитают параметры

Что за параметры такие?

Вот есть запрос из сабжа. Что мне с ним сделать, чтобы исполнить его с использованием компонента
?


Anatoly Podgoretsky   (2006-11-13 16:56:00) [4]

> Jeer  (13.11.2006 16:41:11)  [11]

Всегда ли, ведь не только данный символ имеется


Jeer   (2006-11-13 16:41:00) [5]

QuotedStr(..) помогает.


Anatoly Podgoretsky   (2006-11-13 15:28:00) [6]

> Kolan  (13.11.2006 14:56:09)  [9]

Так прочитать документацию по серверу/движку и делать в соотвествие с ней, но нормальные пачаны предпочитают параметры, ну его нафиг эту документацию, надежность важнее.

--


Kolan   (2006-11-13 14:56:00) [7]

> Вообще то алиасы берутся в двойные кавычки обычно.

Понял.

> Правильно ругается, ты бы еще в фигурные скобки взял

Ну дык спрашиваю же как надо.?


Anatoly Podgoretsky   (2006-11-13 13:54:00) [8]

> Kolan  (13.11.2006 13:18:03)  [3]

Правильно ругается, ты бы еще в фигурные скобки взял

--


Anatoly Podgoretsky   (2006-11-13 13:52:00) [9]

> ЮЮ  (13.11.2006 13:09:02)  [2]

апострофы вообще не мешают
--


ANB   (2006-11-13 13:30:00) [10]


> Kolan ©   (13.11.06 13:18) [3]

Где то перемутил при задвоении.

Вообще то алиасы берутся в двойные кавычки обычно.


> А разве псевдонимы можно называть по-русски???

Обычно можно, хотя и не кузяво это.


ANB   (2006-11-13 13:30:00) [11]

select 1 as "Имя" from dual


Johnmen   (2006-11-13 13:22:00) [12]

А разве псевдонимы можно называть по-русски???


Kolan   (2006-11-13 13:18:00) [13]

> В данном запросе никаких апострофов нет.

' - это что?

> Если хочешь зазунуть в код программы, удвояй :) знак апостофа.


 'SELECT Measurments.MeasurmentID AS ''№'', Measurments.MeasurmentDateTime AS ''Время'','+
 +'Measurments.DeviceID AS ''Код элемента'', DeviceTypes.TypeName AS ''Тип'', Operators.SorName AS ''Оператор '','+


Ругается:
[Pascal Error] KFreGrafDBBaseObjects.pas(141): E2015 Operator not applicable to this operand type


Anatoly Podgoretsky   (2006-11-13 13:09:00) [14]

> Kolan  (13.11.2006 13:04:00)  [0]

В данном запросе никаких апострофов нет.

--


ЮЮ   (2006-11-13 13:09:00) [15]

Если хочешь зазунуть в код программы, удвояй :) знак апостофа.

а если в строке, то там апострофы никому не помешают.


Наверх

Титульная страница Поиск, карта сайта Написать письмо