On Sun, 2003-08-10 at 08:55, Alastair G. Hogge wrote:
> Hello list,
>
> I'm using PyGreSQL to access my database to store information gathered from
> HTML forms (using CGI). However I've run into a problem with some of the data
> retrived.
>
> For example say a user of my HTML form inputs their name "Eick O'Shae".
> Now when I try to store that I get problems due the ' I think. Is there a way
> I can store and ' in the DB? Also are there other symbols should be aware of,
> and can I store them also? This email probably isn't making much sense as I'm
> very tired and have been looking at this screen for hours, but any help would
> great.
The escape character "\".
test1=# create table foo (f text);
CREATE TABLE
test1=# insert into foo values ('x');
INSERT 17266 1
test1=# select * from foo;f
---x
(1 row)
test1=# insert into foo values ('\'x\'');
INSERT 17267 1
test1=# select * from foo; f
-----x'x'
(2 rows)
In Python:
>>> a = "Eick O'Shae"
>>> a1 = a.split("'")
>>> a2 = a1[0]+"\\'"+a1[1]
>>> print a2
Eick O\'Shae
--
+---------------------------------------------------------------+
| Ron Johnson, Jr. Home: ron.l.johnson@cox.net |
| Jefferson, LA USA |
| |
| "Man, I'm pretty. Hoo Hah!" |
| Johnny Bravo |
+---------------------------------------------------------------+