Обсуждение: quote in string

Поиск
Список
Период
Сортировка

quote in string

От
finecur
Дата:
Hi, I have a function and it's interface is :

    my_flexible_sql_function(cmd)

where cmd is another sql command.  I call this function like this:

select * from my_flexible_sql_function('select * from employee where
id < 100')

Inside this functioin, I will first retrieve all data by calling
'select * from employee where id < 100' and do some calculation about
the result and then return.

No I run into a problem, I need to call it like this:

select * from my_flexible_sql_function('select * from employee where
dep ='Eng'    ')

But looks like there is a problem to include a string inside the cmd.
The way I write 'Eng' is not right. Is there a way to include quote in
string?

Thanks,

ff

Re: quote in string

От
"Scott Marlowe"
Дата:
On Wed, May 21, 2008 at 11:36 AM, finecur <finecur@yahoo.com> wrote:
> Hi, I have a function and it's interface is :
>
>    my_flexible_sql_function(cmd)
>
> where cmd is another sql command.  I call this function like this:
>
> select * from my_flexible_sql_function('select * from employee where
> id < 100')
>
> Inside this functioin, I will first retrieve all data by calling
> 'select * from employee where id < 100' and do some calculation about
> the result and then return.
>
> No I run into a problem, I need to call it like this:
>
> select * from my_flexible_sql_function('select * from employee where
> dep ='Eng'    ')
>
> But looks like there is a problem to include a string inside the cmd.
> The way I write 'Eng' is not right. Is there a way to include quote in
> string?

Assuming you're running a fairly recent pgsql version (8.0 and up) you
can use $$ quoting:

select * from my_flexible_sql_function($$select * from employee where
dep ='Eng' $$)

Re: quote in string

От
Alban Hertroys
Дата:
On May 21, 2008, at 7:36 PM, finecur wrote:
> select * from my_flexible_sql_function('select * from employee where
> dep ='Eng'    ')

You need to escape that string like 'select * from employee where dep
=''Eng'' '

Alban Hertroys

--
If you can't see the forest for the trees,
cut the trees and you'll see there is no forest.


!DSPAM:737,483665eb927662006790369!