mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-11-27 07:21:09 +08:00
Code review for SHOW output changes; fix horology expected files for
new SHOW output format.
This commit is contained in:
parent
a58930bbd5
commit
c33a6343cd
@ -1,5 +1,5 @@
|
|||||||
<!--
|
<!--
|
||||||
$Header: /cvsroot/pgsql/doc/src/sgml/release.sgml,v 1.142 2002/07/18 23:11:27 petere Exp $
|
$Header: /cvsroot/pgsql/doc/src/sgml/release.sgml,v 1.143 2002/07/20 15:12:55 tgl Exp $
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<appendix id="release">
|
<appendix id="release">
|
||||||
@ -40,7 +40,7 @@ Readline and Zlib are now required by default and must be turned off explicitly
|
|||||||
Define a third class of function volatility to allow indexscans in more cases
|
Define a third class of function volatility to allow indexscans in more cases
|
||||||
Locale support is now built by default; choice of locale is set by initdb and/or at run-time
|
Locale support is now built by default; choice of locale is set by initdb and/or at run-time
|
||||||
ALTER TABLE ALTER COLUMN SET/DROP NOT NULL
|
ALTER TABLE ALTER COLUMN SET/DROP NOT NULL
|
||||||
EXPLAIN output comes out as a query result, not a NOTICE message
|
EXPLAIN and SHOW output comes out as a query result, not a NOTICE message
|
||||||
DOMAINs (types that are constrained versions of base types)
|
DOMAINs (types that are constrained versions of base types)
|
||||||
Access privileges on functions
|
Access privileges on functions
|
||||||
Access privileges on procedural languages
|
Access privileges on procedural languages
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
||||||
* Portions Copyright (c) 1994-5, Regents of the University of California
|
* Portions Copyright (c) 1994-5, Regents of the University of California
|
||||||
*
|
*
|
||||||
* $Header: /cvsroot/pgsql/src/backend/commands/explain.c,v 1.83 2002/07/20 06:17:43 momjian Exp $
|
* $Header: /cvsroot/pgsql/src/backend/commands/explain.c,v 1.84 2002/07/20 15:12:55 tgl Exp $
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -79,7 +79,7 @@ ExplainQuery(ExplainStmt *stmt, CommandDest dest)
|
|||||||
if (query->commandType == CMD_UTILITY)
|
if (query->commandType == CMD_UTILITY)
|
||||||
{
|
{
|
||||||
/* rewriter will not cope with utility statements */
|
/* rewriter will not cope with utility statements */
|
||||||
PROJECT_LINE_OF_TEXT("Utility statements have no plan structure");
|
PROJECT_LINE_OF_TEXT(tstate, "Utility statements have no plan structure");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -89,7 +89,7 @@ ExplainQuery(ExplainStmt *stmt, CommandDest dest)
|
|||||||
if (rewritten == NIL)
|
if (rewritten == NIL)
|
||||||
{
|
{
|
||||||
/* In the case of an INSTEAD NOTHING, tell at least that */
|
/* In the case of an INSTEAD NOTHING, tell at least that */
|
||||||
PROJECT_LINE_OF_TEXT("Query rewrites to nothing");
|
PROJECT_LINE_OF_TEXT(tstate, "Query rewrites to nothing");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -99,7 +99,7 @@ ExplainQuery(ExplainStmt *stmt, CommandDest dest)
|
|||||||
ExplainOneQuery(lfirst(l), stmt, tstate);
|
ExplainOneQuery(lfirst(l), stmt, tstate);
|
||||||
/* put a blank line between plans */
|
/* put a blank line between plans */
|
||||||
if (lnext(l) != NIL)
|
if (lnext(l) != NIL)
|
||||||
PROJECT_LINE_OF_TEXT("");
|
PROJECT_LINE_OF_TEXT(tstate, "");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -122,9 +122,9 @@ ExplainOneQuery(Query *query, ExplainStmt *stmt, TupOutputState *tstate)
|
|||||||
if (query->commandType == CMD_UTILITY)
|
if (query->commandType == CMD_UTILITY)
|
||||||
{
|
{
|
||||||
if (query->utilityStmt && IsA(query->utilityStmt, NotifyStmt))
|
if (query->utilityStmt && IsA(query->utilityStmt, NotifyStmt))
|
||||||
PROJECT_LINE_OF_TEXT("NOTIFY");
|
PROJECT_LINE_OF_TEXT(tstate, "NOTIFY");
|
||||||
else
|
else
|
||||||
PROJECT_LINE_OF_TEXT("UTILITY");
|
PROJECT_LINE_OF_TEXT(tstate, "UTILITY");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -189,7 +189,7 @@ ExplainOneQuery(Query *query, ExplainStmt *stmt, TupOutputState *tstate)
|
|||||||
do_text_output_multiline(tstate, f);
|
do_text_output_multiline(tstate, f);
|
||||||
pfree(f);
|
pfree(f);
|
||||||
if (es->printCost)
|
if (es->printCost)
|
||||||
PROJECT_LINE_OF_TEXT(""); /* separator line */
|
PROJECT_LINE_OF_TEXT(tstate, ""); /* separator line */
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
* command, configuration file, and command line options.
|
* command, configuration file, and command line options.
|
||||||
* See src/backend/utils/misc/README for more information.
|
* See src/backend/utils/misc/README for more information.
|
||||||
*
|
*
|
||||||
* $Header: /cvsroot/pgsql/src/backend/utils/misc/guc.c,v 1.74 2002/07/20 06:17:43 momjian Exp $
|
* $Header: /cvsroot/pgsql/src/backend/utils/misc/guc.c,v 1.75 2002/07/20 15:12:55 tgl Exp $
|
||||||
*
|
*
|
||||||
* Copyright 2000 by PostgreSQL Global Development Group
|
* Copyright 2000 by PostgreSQL Global Development Group
|
||||||
* Written by Peter Eisentraut <peter_e@gmx.net>.
|
* Written by Peter Eisentraut <peter_e@gmx.net>.
|
||||||
@ -2185,13 +2185,13 @@ set_config_by_name(PG_FUNCTION_ARGS)
|
|||||||
elog(ERROR, "SET variable name is required");
|
elog(ERROR, "SET variable name is required");
|
||||||
|
|
||||||
/* Get the GUC variable name */
|
/* Get the GUC variable name */
|
||||||
name = DatumGetCString(DirectFunctionCall1(textout, PointerGetDatum(PG_GETARG_TEXT_P(0))));
|
name = DatumGetCString(DirectFunctionCall1(textout, PG_GETARG_DATUM(0)));
|
||||||
|
|
||||||
/* Get the desired value or set to NULL for a reset request */
|
/* Get the desired value or set to NULL for a reset request */
|
||||||
if (PG_ARGISNULL(1))
|
if (PG_ARGISNULL(1))
|
||||||
value = NULL;
|
value = NULL;
|
||||||
else
|
else
|
||||||
value = DatumGetCString(DirectFunctionCall1(textout, PointerGetDatum(PG_GETARG_TEXT_P(1))));
|
value = DatumGetCString(DirectFunctionCall1(textout, PG_GETARG_DATUM(1)));
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Get the desired state of is_local. Default to false
|
* Get the desired state of is_local. Default to false
|
||||||
@ -2211,7 +2211,7 @@ set_config_by_name(PG_FUNCTION_ARGS)
|
|||||||
true);
|
true);
|
||||||
|
|
||||||
/* get the new current value */
|
/* get the new current value */
|
||||||
new_value = GetConfigOptionByName(name);
|
new_value = GetConfigOptionByName(name, NULL);
|
||||||
|
|
||||||
/* Convert return string to text */
|
/* Convert return string to text */
|
||||||
result_text = DatumGetTextP(DirectFunctionCall1(textin, CStringGetDatum(new_value)));
|
result_text = DatumGetTextP(DirectFunctionCall1(textin, CStringGetDatum(new_value)));
|
||||||
@ -2259,21 +2259,22 @@ ShowGUCConfigOption(const char *name)
|
|||||||
TupOutputState *tstate;
|
TupOutputState *tstate;
|
||||||
TupleDesc tupdesc;
|
TupleDesc tupdesc;
|
||||||
CommandDest dest = whereToSendOutput;
|
CommandDest dest = whereToSendOutput;
|
||||||
|
const char *varname;
|
||||||
char *value;
|
char *value;
|
||||||
|
|
||||||
|
/* Get the value and canonical spelling of name */
|
||||||
|
value = GetConfigOptionByName(name, &varname);
|
||||||
|
|
||||||
/* need a tuple descriptor representing a single TEXT column */
|
/* need a tuple descriptor representing a single TEXT column */
|
||||||
tupdesc = CreateTemplateTupleDesc(1, WITHOUTOID);
|
tupdesc = CreateTemplateTupleDesc(1, WITHOUTOID);
|
||||||
TupleDescInitEntry(tupdesc, (AttrNumber) 1, (char *) name,
|
TupleDescInitEntry(tupdesc, (AttrNumber) 1, (char *) varname,
|
||||||
TEXTOID, -1, 0, false);
|
TEXTOID, -1, 0, false);
|
||||||
|
|
||||||
/* prepare for projection of tuples */
|
/* prepare for projection of tuples */
|
||||||
tstate = begin_tup_output_tupdesc(dest, tupdesc);
|
tstate = begin_tup_output_tupdesc(dest, tupdesc);
|
||||||
|
|
||||||
/* Get the value */
|
|
||||||
value = GetConfigOptionByName(name);
|
|
||||||
|
|
||||||
/* Send it */
|
/* Send it */
|
||||||
PROJECT_LINE_OF_TEXT(value);
|
PROJECT_LINE_OF_TEXT(tstate, value);
|
||||||
|
|
||||||
end_tup_output(tstate);
|
end_tup_output(tstate);
|
||||||
}
|
}
|
||||||
@ -2288,8 +2289,6 @@ ShowAllGUCConfig(void)
|
|||||||
TupOutputState *tstate;
|
TupOutputState *tstate;
|
||||||
TupleDesc tupdesc;
|
TupleDesc tupdesc;
|
||||||
CommandDest dest = whereToSendOutput;
|
CommandDest dest = whereToSendOutput;
|
||||||
char *name;
|
|
||||||
char *value;
|
|
||||||
char *values[2];
|
char *values[2];
|
||||||
|
|
||||||
/* need a tuple descriptor representing two TEXT columns */
|
/* need a tuple descriptor representing two TEXT columns */
|
||||||
@ -2304,35 +2303,32 @@ ShowAllGUCConfig(void)
|
|||||||
|
|
||||||
for (i = 0; i < num_guc_variables; i++)
|
for (i = 0; i < num_guc_variables; i++)
|
||||||
{
|
{
|
||||||
/* Get the next GUC variable name and value */
|
struct config_generic *conf = guc_variables[i];
|
||||||
value = GetConfigOptionByNum(i, &name);
|
|
||||||
|
if (conf->flags & GUC_NO_SHOW_ALL)
|
||||||
|
continue;
|
||||||
|
|
||||||
/* assign to the values array */
|
/* assign to the values array */
|
||||||
values[0] = name;
|
values[0] = (char *) conf->name;
|
||||||
values[1] = value;
|
values[1] = _ShowOption(conf);
|
||||||
|
|
||||||
/* send it to dest */
|
/* send it to dest */
|
||||||
do_tup_output(tstate, values);
|
do_tup_output(tstate, values);
|
||||||
|
|
||||||
/*
|
/* clean up */
|
||||||
* clean up
|
if (values[1] != NULL)
|
||||||
*/
|
pfree(values[1]);
|
||||||
/* we always should have a name */
|
|
||||||
pfree(name);
|
|
||||||
|
|
||||||
/* but value can be returned to us as a NULL */
|
|
||||||
if (value != NULL)
|
|
||||||
pfree(value);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
end_tup_output(tstate);
|
end_tup_output(tstate);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Return GUC variable value by name
|
* Return GUC variable value by name; optionally return canonical
|
||||||
|
* form of name. Return value is palloc'd.
|
||||||
*/
|
*/
|
||||||
char *
|
char *
|
||||||
GetConfigOptionByName(const char *name)
|
GetConfigOptionByName(const char *name, const char **varname)
|
||||||
{
|
{
|
||||||
struct config_generic *record;
|
struct config_generic *record;
|
||||||
|
|
||||||
@ -2340,24 +2336,25 @@ GetConfigOptionByName(const char *name)
|
|||||||
if (record == NULL)
|
if (record == NULL)
|
||||||
elog(ERROR, "Option '%s' is not recognized", name);
|
elog(ERROR, "Option '%s' is not recognized", name);
|
||||||
|
|
||||||
|
if (varname)
|
||||||
|
*varname = record->name;
|
||||||
|
|
||||||
return _ShowOption(record);
|
return _ShowOption(record);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Return GUC variable value and set varname for a specific
|
* Return GUC variable value by variable number; optionally return canonical
|
||||||
* variable by number.
|
* form of name. Return value is palloc'd.
|
||||||
*/
|
*/
|
||||||
char *
|
char *
|
||||||
GetConfigOptionByNum(int varnum, char **varname)
|
GetConfigOptionByNum(int varnum, const char **varname)
|
||||||
{
|
{
|
||||||
struct config_generic *conf = guc_variables[varnum];
|
struct config_generic *conf = guc_variables[varnum];
|
||||||
|
|
||||||
*varname = pstrdup(conf->name);
|
if (varname)
|
||||||
|
*varname = conf->name;
|
||||||
|
|
||||||
if ((conf->flags & GUC_NO_SHOW_ALL) == 0)
|
return _ShowOption(conf);
|
||||||
return _ShowOption(conf);
|
|
||||||
else
|
|
||||||
return NULL;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -2381,10 +2378,10 @@ show_config_by_name(PG_FUNCTION_ARGS)
|
|||||||
text *result_text;
|
text *result_text;
|
||||||
|
|
||||||
/* Get the GUC variable name */
|
/* Get the GUC variable name */
|
||||||
varname = DatumGetCString(DirectFunctionCall1(textout, PointerGetDatum(PG_GETARG_TEXT_P(0))));
|
varname = DatumGetCString(DirectFunctionCall1(textout, PG_GETARG_DATUM(0)));
|
||||||
|
|
||||||
/* Get the value */
|
/* Get the value */
|
||||||
varval = GetConfigOptionByName(varname);
|
varval = GetConfigOptionByName(varname, NULL);
|
||||||
|
|
||||||
/* Convert to text */
|
/* Convert to text */
|
||||||
result_text = DatumGetTextP(DirectFunctionCall1(textin, CStringGetDatum(varval)));
|
result_text = DatumGetTextP(DirectFunctionCall1(textin, CStringGetDatum(varval)));
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
|
||||||
* Portions Copyright (c) 1994, Regents of the University of California
|
* Portions Copyright (c) 1994, Regents of the University of California
|
||||||
*
|
*
|
||||||
* $Id: executor.h,v 1.71 2002/07/20 05:49:28 momjian Exp $
|
* $Id: executor.h,v 1.72 2002/07/20 15:12:55 tgl Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@ -132,11 +132,11 @@ extern void do_tup_output(TupOutputState *tstate, char **values);
|
|||||||
extern void do_text_output_multiline(TupOutputState *tstate, char *text);
|
extern void do_text_output_multiline(TupOutputState *tstate, char *text);
|
||||||
extern void end_tup_output(TupOutputState *tstate);
|
extern void end_tup_output(TupOutputState *tstate);
|
||||||
|
|
||||||
#define PROJECT_LINE_OF_TEXT(text_to_project) \
|
#define PROJECT_LINE_OF_TEXT(tstate, text_to_project) \
|
||||||
do { \
|
do { \
|
||||||
char *values[1]; \
|
char *values_[1]; \
|
||||||
values[0] = text_to_project; \
|
values_[0] = (text_to_project); \
|
||||||
do_tup_output(tstate, values); \
|
do_tup_output(tstate, values_); \
|
||||||
} while (0)
|
} while (0)
|
||||||
|
|
||||||
|
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
* External declarations pertaining to backend/utils/misc/guc.c and
|
* External declarations pertaining to backend/utils/misc/guc.c and
|
||||||
* backend/utils/misc/guc-file.l
|
* backend/utils/misc/guc-file.l
|
||||||
*
|
*
|
||||||
* $Id: guc.h,v 1.18 2002/07/20 05:49:28 momjian Exp $
|
* $Id: guc.h,v 1.19 2002/07/20 15:12:56 tgl Exp $
|
||||||
*/
|
*/
|
||||||
#ifndef GUC_H
|
#ifndef GUC_H
|
||||||
#define GUC_H
|
#define GUC_H
|
||||||
@ -86,8 +86,8 @@ extern bool set_config_option(const char *name, const char *value,
|
|||||||
bool isLocal, bool DoIt);
|
bool isLocal, bool DoIt);
|
||||||
extern void ShowGUCConfigOption(const char *name);
|
extern void ShowGUCConfigOption(const char *name);
|
||||||
extern void ShowAllGUCConfig(void);
|
extern void ShowAllGUCConfig(void);
|
||||||
extern char *GetConfigOptionByName(const char *name);
|
extern char *GetConfigOptionByName(const char *name, const char **varname);
|
||||||
extern char *GetConfigOptionByNum(int varnum, char **varname);
|
extern char *GetConfigOptionByNum(int varnum, const char **varname);
|
||||||
extern int GetNumConfigOptions(void);
|
extern int GetNumConfigOptions(void);
|
||||||
|
|
||||||
extern void SetPGVariable(const char *name, List *args, bool is_local);
|
extern void SetPGVariable(const char *name, List *args, bool is_local);
|
||||||
|
@ -2341,7 +2341,11 @@ DROP TABLE TEMP_TIMESTAMP;
|
|||||||
--
|
--
|
||||||
SET DateStyle TO 'US,Postgres';
|
SET DateStyle TO 'US,Postgres';
|
||||||
SHOW DateStyle;
|
SHOW DateStyle;
|
||||||
INFO: DateStyle is Postgres with US (NonEuropean) conventions
|
DateStyle
|
||||||
|
--------------------------------------------
|
||||||
|
Postgres with US (NonEuropean) conventions
|
||||||
|
(1 row)
|
||||||
|
|
||||||
SELECT '' AS "64", d1 AS us_postgres FROM TIMESTAMP_TBL;
|
SELECT '' AS "64", d1 AS us_postgres FROM TIMESTAMP_TBL;
|
||||||
64 | us_postgres
|
64 | us_postgres
|
||||||
----+-----------------------------
|
----+-----------------------------
|
||||||
@ -2507,7 +2511,11 @@ SELECT '' AS seven, f1 AS us_iso FROM ABSTIME_TBL;
|
|||||||
|
|
||||||
SET DateStyle TO 'US,SQL';
|
SET DateStyle TO 'US,SQL';
|
||||||
SHOW DateStyle;
|
SHOW DateStyle;
|
||||||
INFO: DateStyle is SQL with US (NonEuropean) conventions
|
DateStyle
|
||||||
|
---------------------------------------
|
||||||
|
SQL with US (NonEuropean) conventions
|
||||||
|
(1 row)
|
||||||
|
|
||||||
SELECT '' AS "64", d1 AS us_sql FROM TIMESTAMP_TBL;
|
SELECT '' AS "64", d1 AS us_sql FROM TIMESTAMP_TBL;
|
||||||
64 | us_sql
|
64 | us_sql
|
||||||
----+------------------------
|
----+------------------------
|
||||||
@ -2591,7 +2599,11 @@ SELECT '' AS seven, f1 AS us_sql FROM ABSTIME_TBL;
|
|||||||
|
|
||||||
SET DateStyle TO 'European,Postgres';
|
SET DateStyle TO 'European,Postgres';
|
||||||
SHOW DateStyle;
|
SHOW DateStyle;
|
||||||
INFO: DateStyle is Postgres with European conventions
|
DateStyle
|
||||||
|
------------------------------------
|
||||||
|
Postgres with European conventions
|
||||||
|
(1 row)
|
||||||
|
|
||||||
INSERT INTO TIMESTAMP_TBL VALUES('13/06/1957');
|
INSERT INTO TIMESTAMP_TBL VALUES('13/06/1957');
|
||||||
SELECT count(*) as one FROM TIMESTAMP_TBL WHERE d1 = 'Jun 13 1957';
|
SELECT count(*) as one FROM TIMESTAMP_TBL WHERE d1 = 'Jun 13 1957';
|
||||||
one
|
one
|
||||||
@ -2683,7 +2695,11 @@ SELECT '' AS seven, f1 AS european_postgres FROM ABSTIME_TBL;
|
|||||||
|
|
||||||
SET DateStyle TO 'European,ISO';
|
SET DateStyle TO 'European,ISO';
|
||||||
SHOW DateStyle;
|
SHOW DateStyle;
|
||||||
INFO: DateStyle is ISO with European conventions
|
DateStyle
|
||||||
|
-------------------------------
|
||||||
|
ISO with European conventions
|
||||||
|
(1 row)
|
||||||
|
|
||||||
SELECT '' AS "65", d1 AS european_iso FROM TIMESTAMP_TBL;
|
SELECT '' AS "65", d1 AS european_iso FROM TIMESTAMP_TBL;
|
||||||
65 | european_iso
|
65 | european_iso
|
||||||
----+------------------------
|
----+------------------------
|
||||||
@ -2768,7 +2784,11 @@ SELECT '' AS seven, f1 AS european_iso FROM ABSTIME_TBL;
|
|||||||
|
|
||||||
SET DateStyle TO 'European,SQL';
|
SET DateStyle TO 'European,SQL';
|
||||||
SHOW DateStyle;
|
SHOW DateStyle;
|
||||||
INFO: DateStyle is SQL with European conventions
|
DateStyle
|
||||||
|
-------------------------------
|
||||||
|
SQL with European conventions
|
||||||
|
(1 row)
|
||||||
|
|
||||||
SELECT '' AS "65", d1 AS european_sql FROM TIMESTAMP_TBL;
|
SELECT '' AS "65", d1 AS european_sql FROM TIMESTAMP_TBL;
|
||||||
65 | european_sql
|
65 | european_sql
|
||||||
----+------------------------
|
----+------------------------
|
||||||
|
@ -2341,7 +2341,11 @@ DROP TABLE TEMP_TIMESTAMP;
|
|||||||
--
|
--
|
||||||
SET DateStyle TO 'US,Postgres';
|
SET DateStyle TO 'US,Postgres';
|
||||||
SHOW DateStyle;
|
SHOW DateStyle;
|
||||||
INFO: DateStyle is Postgres with US (NonEuropean) conventions
|
DateStyle
|
||||||
|
--------------------------------------------
|
||||||
|
Postgres with US (NonEuropean) conventions
|
||||||
|
(1 row)
|
||||||
|
|
||||||
SELECT '' AS "64", d1 AS us_postgres FROM TIMESTAMP_TBL;
|
SELECT '' AS "64", d1 AS us_postgres FROM TIMESTAMP_TBL;
|
||||||
64 | us_postgres
|
64 | us_postgres
|
||||||
----+-----------------------------
|
----+-----------------------------
|
||||||
@ -2507,7 +2511,11 @@ SELECT '' AS seven, f1 AS us_iso FROM ABSTIME_TBL;
|
|||||||
|
|
||||||
SET DateStyle TO 'US,SQL';
|
SET DateStyle TO 'US,SQL';
|
||||||
SHOW DateStyle;
|
SHOW DateStyle;
|
||||||
INFO: DateStyle is SQL with US (NonEuropean) conventions
|
DateStyle
|
||||||
|
---------------------------------------
|
||||||
|
SQL with US (NonEuropean) conventions
|
||||||
|
(1 row)
|
||||||
|
|
||||||
SELECT '' AS "64", d1 AS us_sql FROM TIMESTAMP_TBL;
|
SELECT '' AS "64", d1 AS us_sql FROM TIMESTAMP_TBL;
|
||||||
64 | us_sql
|
64 | us_sql
|
||||||
----+------------------------
|
----+------------------------
|
||||||
@ -2591,7 +2599,11 @@ SELECT '' AS seven, f1 AS us_sql FROM ABSTIME_TBL;
|
|||||||
|
|
||||||
SET DateStyle TO 'European,Postgres';
|
SET DateStyle TO 'European,Postgres';
|
||||||
SHOW DateStyle;
|
SHOW DateStyle;
|
||||||
INFO: DateStyle is Postgres with European conventions
|
DateStyle
|
||||||
|
------------------------------------
|
||||||
|
Postgres with European conventions
|
||||||
|
(1 row)
|
||||||
|
|
||||||
INSERT INTO TIMESTAMP_TBL VALUES('13/06/1957');
|
INSERT INTO TIMESTAMP_TBL VALUES('13/06/1957');
|
||||||
SELECT count(*) as one FROM TIMESTAMP_TBL WHERE d1 = 'Jun 13 1957';
|
SELECT count(*) as one FROM TIMESTAMP_TBL WHERE d1 = 'Jun 13 1957';
|
||||||
one
|
one
|
||||||
@ -2683,7 +2695,11 @@ SELECT '' AS seven, f1 AS european_postgres FROM ABSTIME_TBL;
|
|||||||
|
|
||||||
SET DateStyle TO 'European,ISO';
|
SET DateStyle TO 'European,ISO';
|
||||||
SHOW DateStyle;
|
SHOW DateStyle;
|
||||||
INFO: DateStyle is ISO with European conventions
|
DateStyle
|
||||||
|
-------------------------------
|
||||||
|
ISO with European conventions
|
||||||
|
(1 row)
|
||||||
|
|
||||||
SELECT '' AS "65", d1 AS european_iso FROM TIMESTAMP_TBL;
|
SELECT '' AS "65", d1 AS european_iso FROM TIMESTAMP_TBL;
|
||||||
65 | european_iso
|
65 | european_iso
|
||||||
----+------------------------
|
----+------------------------
|
||||||
@ -2768,7 +2784,11 @@ SELECT '' AS seven, f1 AS european_iso FROM ABSTIME_TBL;
|
|||||||
|
|
||||||
SET DateStyle TO 'European,SQL';
|
SET DateStyle TO 'European,SQL';
|
||||||
SHOW DateStyle;
|
SHOW DateStyle;
|
||||||
INFO: DateStyle is SQL with European conventions
|
DateStyle
|
||||||
|
-------------------------------
|
||||||
|
SQL with European conventions
|
||||||
|
(1 row)
|
||||||
|
|
||||||
SELECT '' AS "65", d1 AS european_sql FROM TIMESTAMP_TBL;
|
SELECT '' AS "65", d1 AS european_sql FROM TIMESTAMP_TBL;
|
||||||
65 | european_sql
|
65 | european_sql
|
||||||
----+------------------------
|
----+------------------------
|
||||||
|
@ -2341,7 +2341,7 @@ DROP TABLE TEMP_TIMESTAMP;
|
|||||||
--
|
--
|
||||||
SET DateStyle TO 'US,Postgres';
|
SET DateStyle TO 'US,Postgres';
|
||||||
SHOW DateStyle;
|
SHOW DateStyle;
|
||||||
datestyle
|
DateStyle
|
||||||
--------------------------------------------
|
--------------------------------------------
|
||||||
Postgres with US (NonEuropean) conventions
|
Postgres with US (NonEuropean) conventions
|
||||||
(1 row)
|
(1 row)
|
||||||
@ -2511,7 +2511,7 @@ SELECT '' AS seven, f1 AS us_iso FROM ABSTIME_TBL;
|
|||||||
|
|
||||||
SET DateStyle TO 'US,SQL';
|
SET DateStyle TO 'US,SQL';
|
||||||
SHOW DateStyle;
|
SHOW DateStyle;
|
||||||
datestyle
|
DateStyle
|
||||||
---------------------------------------
|
---------------------------------------
|
||||||
SQL with US (NonEuropean) conventions
|
SQL with US (NonEuropean) conventions
|
||||||
(1 row)
|
(1 row)
|
||||||
@ -2599,7 +2599,7 @@ SELECT '' AS seven, f1 AS us_sql FROM ABSTIME_TBL;
|
|||||||
|
|
||||||
SET DateStyle TO 'European,Postgres';
|
SET DateStyle TO 'European,Postgres';
|
||||||
SHOW DateStyle;
|
SHOW DateStyle;
|
||||||
datestyle
|
DateStyle
|
||||||
------------------------------------
|
------------------------------------
|
||||||
Postgres with European conventions
|
Postgres with European conventions
|
||||||
(1 row)
|
(1 row)
|
||||||
@ -2695,7 +2695,7 @@ SELECT '' AS seven, f1 AS european_postgres FROM ABSTIME_TBL;
|
|||||||
|
|
||||||
SET DateStyle TO 'European,ISO';
|
SET DateStyle TO 'European,ISO';
|
||||||
SHOW DateStyle;
|
SHOW DateStyle;
|
||||||
datestyle
|
DateStyle
|
||||||
-------------------------------
|
-------------------------------
|
||||||
ISO with European conventions
|
ISO with European conventions
|
||||||
(1 row)
|
(1 row)
|
||||||
@ -2784,7 +2784,7 @@ SELECT '' AS seven, f1 AS european_iso FROM ABSTIME_TBL;
|
|||||||
|
|
||||||
SET DateStyle TO 'European,SQL';
|
SET DateStyle TO 'European,SQL';
|
||||||
SHOW DateStyle;
|
SHOW DateStyle;
|
||||||
datestyle
|
DateStyle
|
||||||
-------------------------------
|
-------------------------------
|
||||||
SQL with European conventions
|
SQL with European conventions
|
||||||
(1 row)
|
(1 row)
|
||||||
|
Loading…
Reference in New Issue
Block a user