mirror of
https://github.com/postgres/postgres.git
synced 2025-07-28 23:42:10 +03:00
Add E'' syntax so eventually normal strings can treat backslashes
literally. Add GUC variables: "escape_string_warning" - warn about backslashes in non-E strings "escape_string_syntax" - supports E'' syntax? "standard_compliant_strings" - treats backslashes literally in '' Update code to use E'' when escapes are used.
This commit is contained in:
@ -10,7 +10,7 @@
|
||||
* Written by Peter Eisentraut <peter_e@gmx.net>.
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.268 2005/06/17 22:32:47 tgl Exp $
|
||||
* $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.269 2005/06/26 03:03:41 momjian Exp $
|
||||
*
|
||||
*--------------------------------------------------------------------
|
||||
*/
|
||||
@ -189,7 +189,9 @@ static int max_function_args;
|
||||
static int max_index_keys;
|
||||
static int max_identifier_length;
|
||||
static int block_size;
|
||||
static bool integer_datetimes;
|
||||
static bool integer_datetimes;
|
||||
static bool escape_string_syntax;
|
||||
static bool standard_compliant_strings;
|
||||
|
||||
/* should be static, but commands/variable.c needs to get at it */
|
||||
char *session_authorization_string;
|
||||
@ -873,6 +875,35 @@ static struct config_bool ConfigureNamesBool[] =
|
||||
false, NULL, NULL
|
||||
},
|
||||
|
||||
{
|
||||
{"escape_string_warning", PGC_USERSET, COMPAT_OPTIONS_PREVIOUS,
|
||||
gettext_noop("Warn about backslash escapes in ordinary, non-escape-syntax strings."),
|
||||
NULL
|
||||
},
|
||||
&escape_string_warning,
|
||||
false, NULL, NULL
|
||||
},
|
||||
|
||||
{
|
||||
{"escape_string_syntax", PGC_INTERNAL, PRESET_OPTIONS,
|
||||
gettext_noop("Escape string syntax (E'') is supported."),
|
||||
NULL,
|
||||
GUC_REPORT | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE
|
||||
},
|
||||
&escape_string_syntax,
|
||||
true, NULL, NULL
|
||||
},
|
||||
|
||||
{
|
||||
{"standard_compliant_strings", PGC_INTERNAL, PRESET_OPTIONS,
|
||||
gettext_noop("'' strings treat backslashes literally."),
|
||||
NULL,
|
||||
GUC_REPORT | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE
|
||||
},
|
||||
&standard_compliant_strings,
|
||||
false, NULL, NULL
|
||||
},
|
||||
|
||||
/* End-of-list marker */
|
||||
{
|
||||
{NULL, 0, 0, NULL, NULL}, NULL, false, NULL, NULL
|
||||
|
Reference in New Issue
Block a user