Re: handling special characters in sql strings
От | tjk@tksoft.com |
---|---|
Тема | Re: handling special characters in sql strings |
Дата | |
Msg-id | 200103191458.GAA01225@smtp3.tksoft.com обсуждение исходный текст |
Ответ на | handling special characters in sql strings (Markus Wagner <wagner@imsd.uni-mainz.de>) |
Список | pgsql-sql |
Markus, Here are comments from a C function which does what you need. You won't have the regex functions available, so the function itself would be useless. You get the idea though. 1. First change backslashed backslashes back to single backslashes. 2. Find backslash single quote combinations (i.e. "\'") and convert them to single quotes (i.e. "'"). Use a while loopto be sure. Now there should be no single quotes preceded by backslashes left. 3. Find all backslashes and convert them to double backslashes. Now all characters preceded by a backslash should be intheir original state, while all backslashed single quotes are just single quotes. E.g. "\1ABC'ABC\2\q" 5. Find all single quotes and backslash them. (Note: There are no single quotes preceded by a backslash, so it is not possibleto have a backslash which would hide a backslash preceding a single quote.) That's it. Troy > > Hi, > > I need to insert and retrieve strings containing special characters (e. > g. "'") and I want a C function to prepare my strings automatically. Is > it ok to just insert a "\" before each special character? And what range > of characters will need this handling? > > Thanks, > > Markus > > ---------------------------(end of broadcast)--------------------------- > TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org >
В списке pgsql-sql по дате отправления: