Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit7c5a561

Browse files
author
Michael Meskes
committed
Applied patch by Ron Mayer <rm_pg@cheapcomplexdevices.com> to merge the new
interval style into ecpg.
1 parentcbb3e1c commit7c5a561

File tree

6 files changed

+791
-376
lines changed

6 files changed

+791
-376
lines changed

‎src/interfaces/ecpg/ChangeLog

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2394,6 +2394,8 @@ Sat, 25 Oct 2008 16:34:28 +0200
23942394
Wed, 26 Nov 2008 14:09:08 +0100
23952395

23962396
- When creating a varchar struct name braces must be discarded.
2397+
- Applied patch by Ron Mayer <rm_pg@cheapcomplexdevices.com> to merge
2398+
the new interval style into ecpg.
23972399
- Set pgtypes library version to 3.1.
23982400
- Set compat library version to 3.1.
23992401
- Set ecpg library version to 6.2.

‎src/interfaces/ecpg/pgtypeslib/dt.h

Lines changed: 35 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/* $PostgreSQL: pgsql/src/interfaces/ecpg/pgtypeslib/dt.h,v 1.39 2007/11/15 21:14:45 momjian Exp $ */
1+
/* $PostgreSQL: pgsql/src/interfaces/ecpg/pgtypeslib/dt.h,v 1.40 2008/11/26 16:31:02 meskes Exp $ */
22

33
#ifndefDT_H
44
#defineDT_H
@@ -25,6 +25,22 @@ typedef double fsec_t;
2525
#defineUSE_SQL_DATES2
2626
#defineUSE_GERMAN_DATES3
2727

28+
#defineINTSTYLE_POSTGRES 0
29+
#defineINTSTYLE_POSTGRES_VERBOSE 1
30+
#defineINTSTYLE_SQL_STANDARD 2
31+
#defineINTSTYLE_ISO_8601 3
32+
33+
#defineINTERVAL_FULL_RANGE (0x7FFF)
34+
#defineINTERVAL_MASK(b) (1 << (b))
35+
#defineMAX_INTERVAL_PRECISION 6
36+
37+
#defineDTERR_BAD_FORMAT(-1)
38+
#defineDTERR_FIELD_OVERFLOW(-2)
39+
#defineDTERR_MD_FIELD_OVERFLOW (-3)/* triggers hint about DateStyle */
40+
#defineDTERR_INTERVAL_OVERFLOW (-4)
41+
#defineDTERR_TZDISP_OVERFLOW(-5)
42+
43+
2844
#defineDAGO"ago"
2945
#defineEPOCH"epoch"
3046
#defineINVALID"invalid"
@@ -77,6 +93,9 @@ typedef double fsec_t;
7793
* Furthermore, the values for YEAR, MONTH, DAY, HOUR, MINUTE, SECOND
7894
* must be in the range 0..14 so that the associated bitmasks can fit
7995
* into the left half of an INTERVAL's typmod value.
96+
*
97+
* Copy&pasted these values from src/include/utils/datetime.h
98+
* 2008-11-20, changing a number of their values.
8099
*/
81100

82101
#defineRESERV0
@@ -92,20 +111,23 @@ typedef double fsec_t;
92111
#defineHOUR10
93112
#defineMINUTE11
94113
#defineSECOND12
95-
#defineDOY13
96-
#defineDOW14
97-
#defineUNITS15
98-
#defineADBC16
114+
#defineMILLISECOND 13
115+
#defineMICROSECOND 14
116+
#defineDOY15
117+
#defineDOW16
118+
#defineUNITS17
119+
#defineADBC18
99120
/* these are only for relative dates */
100-
#defineAGO17
101-
#defineABS_BEFORE18
102-
#defineABS_AFTER19
121+
#defineAGO19
122+
#defineABS_BEFORE20
123+
#defineABS_AFTER21
103124
/* generic fields to help with parsing */
104-
#defineISODATE20
105-
#defineISOTIME21
125+
#defineISODATE22
126+
#defineISOTIME23
106127
/* reserved for unrecognized string values */
107128
#defineUNKNOWN_FIELD31
108129

130+
109131
/*
110132
* Token field definitions for time parsing and decoding.
111133
* These need to fit into the datetkn table type.
@@ -164,13 +186,13 @@ typedef double fsec_t;
164186
/*
165187
* Bit mask definitions for time parsing.
166188
*/
167-
189+
/* Copy&pasted these values from src/include/utils/datetime.h */
168190
#defineDTK_M(t)(0x01 << (t))
169-
191+
#defineDTK_ALL_SECS_M (DTK_M(SECOND) | DTK_M(MILLISECOND) | DTK_M(MICROSECOND))
170192
#defineDTK_DATE_M(DTK_M(YEAR) | DTK_M(MONTH) | DTK_M(DAY))
171193
#defineDTK_TIME_M(DTK_M(HOUR) | DTK_M(MINUTE) | DTK_M(SECOND))
172194

173-
#defineMAXDATELEN51/* maximum possible length of an input date
195+
#defineMAXDATELEN63/* maximum possible length of an input date
174196
* string (not counting tr. null) */
175197
#defineMAXDATEFIELDS25/* maximum possible number of fields in a date
176198
* string */

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp