Phiên bản được hỗ trợ:hiện tại(17) /16 / 15 / 14 / 13
Phiên bản phát triển:18 / Devel
Phiên bản không được hỗ trợ:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2
Tài liệu này dành cho phiên bản không được hỗ trợ tỷ lệ kèo bóng đá tối nay PostgreSQL.
Bạn có thể muốn xem cùng tỷ lệ kèo bóng đá tối nay trang chohiện tạiPhiên bản hoặc tỷ lệ kèo bóng đá tối nay trong các phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

tỷ lệ kèo bóng đá tối nay31.8. Thư viện PGTYPES

Bản đồ thư viện PGTYPESPOSTGRESQLCác loại cơ sở dữ liệu cho C tương đương có thể được sử dụng trong các chương trình C. Nó cũng cung cấp các chức năng để làm các tính toán cơ bản với các loại trong c, tức là không có Trợ giúp tỷ lệ kèo bóng đá tối nayPostgreSQLMáy chủ. Xem ví dụ sau:

EXEC SQL bắt đầu khai báo;
   tỷ lệ kèo bóng đá tối nay tỷ lệ kèo bóng đá tối nay 1;
   Dấu thời gian TS1, Tsout;
   khoảng IV1;
   char *ra;
EXEC SQL END TUYÊN BỐ TUYÊN BỐ;

Pgtypesdate_today (& date1);
EXEC SQL Chọn bắt đầu, thời lượng vào: TS1,: IV1 từ datetbl trong đó d =: date1;
Pgtypestimestamp_add_interval (& ts1, & iv1, & tsout);
ra = pgtypestimestamp_to_asc (& tsout);
printf ("Bắt đầu + thời lượng: %s \ n", out);
miễn phí (ra);

31.8.1. Các loại số

Loại số cung cấp các tính toán với tùy ý Độ chính xác. Nhìn thấyPhần 8.1Đối với loại tương đương trongPostgreSQLMáy chủ. Vì tỷ lệ kèo bóng đá tối nay Độ chính xác tùy ý mà biến này cần có khả năng mở rộng và co lại động. Đó là lý do tại sao bạn chỉ có thể tạo các biến trên đống bằng phương tiệnpgtypesnumeric_newpgtypesnumeric_freechức năng. Số thập phân Loại, tương tự nhưng có giới hạn trong độ chính xác, có thể là được tạo trên ngăn xếp cũng như trên đống.

Các chức năng sau đây có thể được sử dụng để hoạt động với số kiểu:

pgtypesnumeric_new

Yêu cầu tỷ lệ kèo bóng đá tối nay con trỏ tới số mới được phân bổ Biến.

Số *pgtypesnumeric_new (void);
pgtypesnumeric_free

miễn phí loại số, giải phóng tất cả bộ nhớ tỷ lệ kèo bóng đá tối nay nó.

void pgtypesnumeric_free (số *var);
pgtypesnumeric_from_asc

phân tích loại số từ ký hiệu chuỗi tỷ lệ kèo bóng đá tối nay nó.

Số *pgtypesnumeric_from_asc (char *str, char ** endptr);

Định dạng hợp lệ là ví dụ:-2, .794, +3.44, 592.49E07hoặc-32.84E-4. Nếu giá trị có thể được phân tích cú pháp Thành công, một con trỏ hợp lệ được trả lại, nếu không con trỏ. Hiện tại ECPG luôn phân tích hoàn chỉnh Chuỗi và vì vậy hiện tại nó không hỗ trợ để lưu trữ địa chỉ tỷ lệ kèo bóng đá tối nay ký tự không hợp lệ đầu tiên trong*EndPtr. Bạn có thể đặt tỷ lệ kèo bóng đá tối nay cách an toànendptrđến null.

pgtypesnumeric_to_asc

Trả về tỷ lệ kèo bóng đá tối nay con trỏ cho tỷ lệ kèo bóng đá tối nay chuỗi được phân bổ bởimallocchứa biểu diễn chuỗi tỷ lệ kèo bóng đá tối nay loại sốnum.

char *pgtypesnumeric_to_asc (Numeric *num, int dscale);

Giá trị số sẽ được in bằngDSCALEchữ số thập phân, với làm tròn được áp dụng nếu cần thiết.

pgtypesnumeric_add

Thêm hai biến số vào tỷ lệ kèo bóng đá tối nay biến thứ ba.

int pgtypesnumeric_add (số *var1, số *var2, số *result

Hàm thêm các biếnvar1var2vào biến kết quảresult. Hàm trả về 0 khi thành công và -1 trong trường hợp lỗi.

pgtypesnumeric_sub

Trừ hai biến số và trả về kết quả trong tỷ lệ kèo bóng đá tối nay phần ba.

int pgtypesnumeric_sub (số *var1, số *var2, số *result

Hàm trừ biếnvar2Từ biếnvar1. Kết quả tỷ lệ kèo bóng đá tối nay hoạt động là được lưu trữ trong biếnresult. Hàm trả về 0 khi thành công và -1 trong trường hợp lỗi.

pgtypesnumeric_mul

Nhân hai biến số và trả về kết quả trong tỷ lệ kèo bóng đá tối nay phần ba.

int pgtypesnumeric_mul (số *var1, số *var2, số *result

Hàm nhân lên các biếnVAR1var2. Kết quả tỷ lệ kèo bóng đá tối nay hoạt động được lưu trữ trong biếnresult. Hàm trả về 0 Khi thành công và -1 trong trường hợp lỗi.

pgtypesnumeric_div

Chia hai biến số và trả về kết quả trong tỷ lệ kèo bóng đá tối nay thứ ba.

int pgtypesnumeric_div (số *var1, số *var2, số *kết quả);

Hàm chia các biếnvar1bởivar2. Các Kết quả tỷ lệ kèo bóng đá tối nay hoạt động được lưu trữ trong biếnresult. Hàm trả về 0 Khi thành công và -1 trong trường hợp lỗi.

pgtypesnumeric_cmp

So sánh hai biến số.

int pgtypesnumeric_cmp (số *var1, số *var2)

Hàm này so sánh hai biến số. Trong trường hợp lỗi,int_maxđược trả về. Khi thành công, chức năng trả về tỷ lệ kèo bóng đá tối nay trong ba có thể kết quả:

  • 1, nếuVAR1lớn hơnvar2

  • -1, nếuvar1nhỏ hơn hơnvar2

  • 0, nếuVAR1var2bằng nhau

pgtypesnumeric_from_int

Chuyển đổi biến INT thành biến số.

int pgtypesnumeric_from_int (đã ký int int_val, số *var);

Chức năng này chấp nhận một biến tỷ lệ kèo bóng đá tối nay loại đã ký int int và lưu trữ nó trong biến sốvar. Khi thành công, 0 được trả lại và -1 trong trường hợp thất bại.

pgtypesnumeric_from_long

Chuyển đổi biến int dài thành biến số.

17417_17490

Hàm này chấp nhận tỷ lệ kèo bóng đá tối nay biến số có chữ ký dài int và lưu trữ nó trong biến sốvar. Khi thành công, 0 được trả lại và -1 trong trường hợp thất bại.

pgtypesnumeric_copy

Sao chép qua tỷ lệ kèo bóng đá tối nay biến số vào tỷ lệ kèo bóng đá tối nay biến khác.

int pgtypesnumeric_copy (số *src, số *dst);

Hàm này sao chép giá trị tỷ lệ kèo bóng đá tối nay biến cái đóSRCchỉ vào Biến đóDSTĐiểm đến. Nó trả về 0 khi thành công và -1 nếu xảy ra lỗi.

pgtypesnumeric_from_double

Chuyển đổi tỷ lệ kèo bóng đá tối nay biến loại đôi thành số.

int pgtypesnumeric_from_double (Double D, Numeric *dst);

18527_18630DSTĐiểm đến. Nó trở lại 0 khi thành công và -1 nếu xảy ra lỗi.

pgtypesnumeric_to_double

Chuyển đổi một biến số tỷ lệ kèo bóng đá tối nay số thành gấp đôi.

int pgtypesnumeric_to_double (số *nv, double *dp)

Hàm chuyển đổi giá trị số từ Biến đóNVchỉ vào biến kép màDPĐiểm đến. Nó trả về 0 khi thành công và -1 nếu lỗi xảy ra, bao gồm cả tràn. Trên tràn, toàn cầu biếnerrnosẽ được đặt thànhpgtypes_num_overflowNgoài ra.

pgtypesnumeric_to_int

Chuyển đổi một biến tỷ lệ kèo bóng đá tối nay loại thành int.

int pgtypesnumeric_to_int (số *nv, int *ip);

Hàm chuyển đổi giá trị số từ Biến đóNVchỉ vào biến số nguyênipĐiểm đến. Nó trả về 0 khi thành công và -1 nếu lỗi xảy ra, bao gồm cả tràn. Trên tràn, toàn cầu biếnerrnosẽ được đặt thànhpgtypes_num_overflowNgoài ra.

pgtypesnumeric_to_long

Chuyển đổi tỷ lệ kèo bóng đá tối nay biến số loại thành dài.

int pgtypesnumeric_to_long (số *nv, dài *lp);

Hàm chuyển đổi giá trị số từ Biến đóNVchỉ vào biến số nguyên dài màLPĐiểm đến. Nó trở lại 0 khi thành công và -1 nếu xảy ra lỗi, bao gồm cả tràn. Trên tràn, biến toàn cầuerrnoWill được đặt thànhpgtypes_num_overflowNgoài ra.

pgtypesnumeric_to_decimal

Chuyển đổi một biến số tỷ lệ kèo bóng đá tối nay số thành thập phân.

int pgtypesnumeric_to_decimal (số *src, thập phân *dst);

Hàm chuyển đổi giá trị số từ Biến đóSRCchỉ vào biến số thập phânDSTĐiểm đến. Nó trả về 0 khi thành công và -1 nếu lỗi xảy ra, bao gồm cả tràn. Trên tràn, toàn cầu biếnerrnosẽ được đặt thànhpgtypes_num_overflowNgoài ra.

pgtypesnumeric_from_decimal

Chuyển đổi tỷ lệ kèo bóng đá tối nay biến số thập phân thành số.

int pgtypesnumeric_from_decimal (thập phân *src, số *dst);

Hàm chuyển đổi giá trị thập phân từ Biến đóSRCchỉ vào biến số màDSTĐiểm đến. Nó trả về 0 khi thành công và -1 nếu lỗi xảy ra. Vì loại thập phân được thực hiện dưới dạng phiên bản giới hạn tỷ lệ kèo bóng đá tối nay loại số, tràn không thể xảy ra với chuyển đổi này.

31.8.2. Các Loại tỷ lệ kèo bóng đá tối nay

Loại tỷ lệ kèo bóng đá tối nay trong C cho phép các chương trình của bạn xử lý dữ liệu của tỷ lệ kèo bóng đá tối nay SQL. Nhìn thấyPhần 8.5cho tương đương Nhập vàoPostgreSQLMáy chủ.

Các chức năng sau đây có thể được sử dụng để làm việc với tỷ lệ kèo bóng đá tối nay kiểu:

pgtypesdate_from_timestamp

Trích xuất phần tỷ lệ kèo bóng đá tối nay từ dấu thời gian.

tỷ lệ kèo bóng đá tối nay pgtypesdate_from_timestamp (dấu thời gian dt);

Hàm nhận được dấu thời gian là đối số duy nhất của nó và trả về phần tỷ lệ kèo bóng đá tối nay được trích xuất từ ​​điều này Dấu thời gian.

pgtypesdate_from_asc

phân tích tỷ lệ kèo bóng đá tối nay từ biểu diễn văn bản của nó.

tỷ lệ kèo bóng đá tối nay pgtypesdate_from_asc (char *str, char ** endptr);

Hàm nhận được c char* chuỗistrvà tỷ lệ kèo bóng đá tối nay con trỏ tới c char* chuỗiendptr. Hiện tại ECPG luôn luôn phân tích chuỗi hoàn chỉnh và hiện tại nó không hỗ trợ lưu trữ địa chỉ tỷ lệ kèo bóng đá tối nay người đầu tiên ký tự không hợp lệ trong*EndPtr. Bạn có thể đặt tỷ lệ kèo bóng đá tối nay cách an toànendptrđến VÔ GIÁ TRỊ.

Lưu ý rằng chức năng luôn giả định được định dạng mdy tỷ lệ kèo bóng đá tối nay và hiện tại không có biến để thay đổi điều đó Trong ECPG.

Các định dạng đầu vào sau đây được cho phép:

Bảng 31-1. Định dạng đầu vào hợp lệ chopgtypesdate_from_asc

INPUT result
tỷ lệ kèo bóng đá tối nay 8 tháng 1 năm 1999 tỷ lệ kèo bóng đá tối nay 8 tháng 1 năm 1999
1999-01-08 tỷ lệ kèo bóng đá tối nay 8 tháng 1 năm 1999
1/8/1999 tỷ lệ kèo bóng đá tối nay 8 tháng 1 năm 1999
1/18/1999 18 tháng 1, 1999
01/02/03 tỷ lệ kèo bóng đá tối nay 1 tháng 2, 2003
1999-JAN-08 tỷ lệ kèo bóng đá tối nay 8 tháng 1 năm 1999
Jan-08-1999 tỷ lệ kèo bóng đá tối nay 8 tháng 1 năm 1999
08-Jan-1999 tỷ lệ kèo bóng đá tối nay 8 tháng 1 năm 1999
99-JAN-08 tỷ lệ kèo bóng đá tối nay 8 tháng 1 năm 1999
08-Jan-99 tỷ lệ kèo bóng đá tối nay 8 tháng 1 năm 1999
08-JAN-06 tỷ lệ kèo bóng đá tối nay 8 tháng 1 năm 2006
Jan-08-99 tỷ lệ kèo bóng đá tối nay 8 tháng 1 năm 1999
19990108 ISO 8601; tỷ lệ kèo bóng đá tối nay 8 tháng 1, 1999
990108 ISO 8601; tỷ lệ kèo bóng đá tối nay 8 tháng 1, 1999
1999.008 Năm và tỷ lệ kèo bóng đá tối nay của năm
J2451187 tỷ lệ kèo bóng đá tối nay Julian
tỷ lệ kèo bóng đá tối nay 8 tháng 1, 99 Bc Năm 99 trước khi phổ biến ERA
pgtypesdate_to_asc

Trả lại biểu diễn văn bản của một tỷ lệ kèo bóng đá tối nay Biến.

char *pgtypesdate_to_asc (tỷ lệ kèo bóng đá tối nay ddate);

Hàm nhận tỷ lệ kèo bóng đá tối nayddatelà tham số duy nhất của nó. Nó sẽ xuất tỷ lệ kèo bóng đá tối nay trong biểu mẫu1999-01-18, tức là trongYYYY-MM-DDĐịnh dạng.

pgtypesdate_julmdy

Trích xuất các giá trị cho tỷ lệ kèo bóng đá tối nay, tháng và năm từ một biến của loại tỷ lệ kèo bóng đá tối nay.

void pgtypesdate_julmdy (tỷ lệ kèo bóng đá tối nay d, int *mdy);

Hàm nhận tỷ lệ kèo bóng đá tối nayDvà tỷ lệ kèo bóng đá tối nay con trỏ tới tỷ lệ kèo bóng đá tối nay mảng 3 số nguyên Giá trịmdy. Tên biến chỉ ra thứ tự tuần tự:mdy [0]sẽ được đặt để chứa số tỷ lệ kèo bóng đá tối nay tháng,MDY [1]sẽ được đặt đến giá trị của tỷ lệ kèo bóng đá tối nay vàmdy [2]sẽ chứa năm.

pgtypesdate_mdyjul

Tạo giá trị tỷ lệ kèo bóng đá tối nay từ một mảng gồm 3 số nguyên Chỉ định tỷ lệ kèo bóng đá tối nay, tháng và năm của tỷ lệ kèo bóng đá tối nay.

void pgtypesdate_mdyjul (int *mdy, tỷ lệ kèo bóng đá tối nay *jdate);

Hàm nhận được mảng tỷ lệ kèo bóng đá tối nay 3 số nguyên (mdy) là đối số đầu tiên của nó và như đối số thứ hai của nó, một con trỏ tới một biến của loại tỷ lệ kèo bóng đá tối nay sẽ giữ kết quả của hoạt động.

pgtypesdate_dayofweek

Trả về một số đại diện cho tỷ lệ kèo bóng đá tối nay trong tuần cho một Giá trị tỷ lệ kèo bóng đá tối nay.

int pgtypesdate_dayofweek (tỷ lệ kèo bóng đá tối nay d);

Hàm nhận được biến tỷ lệ kèo bóng đá tối nayDlà đối số duy nhất của nó và trả về số nguyên chỉ ra tỷ lệ kèo bóng đá tối nay trong tuần cho việc này tỷ lệ kèo bóng đá tối nay.

  • 0 - Chủ nhật

  • 1 - Thứ Hai

  • 2 - Thứ ba

  • 3 - Thứ tư

  • 4 - Thứ năm

  • 5 - Thứ sáu

  • 6 - Thứ bảy

pgtypesdate_today

Nhận tỷ lệ kèo bóng đá tối nay hiện tại.

void pgtypesdate_today (tỷ lệ kèo bóng đá tối nay *d);

Hàm nhận được một con trỏ tới một biến tỷ lệ kèo bóng đá tối nay (D) mà nó đặt theo hiện tại tỷ lệ kèo bóng đá tối nay.

pgtypesdate_fmt_asc

Chuyển đổi một biến số tỷ lệ kèo bóng đá tối nay thành văn bản của nó Biểu diễn bằng mặt nạ định dạng.

31995_32066

hàm nhận tỷ lệ kèo bóng đá tối nay để chuyển đổi (ddate), Mặt nạ định dạng (FMTSTRING) và chuỗi sẽ giữ biểu diễn văn bản của tỷ lệ kèo bóng đá tối nay (Outbuf).

Khi thành công, 0 được trả về và giá trị âm nếu tỷ lệ kèo bóng đá tối nay xảy ra lỗi.

Các nghĩa đen sau đây là các nhà xác định trường bạn có thể sử dụng:

  • DD- Số lượng của tỷ lệ kèo bóng đá tối nay của tháng.

  • mm- Số lượng tỷ lệ kèo bóng đá tối nay tháng trong năm.

  • YY- Số lượng tỷ lệ kèo bóng đá tối nay năm dưới dạng số hai chữ số.

  • Yyyy- Số lượng tỷ lệ kèo bóng đá tối nay năm dưới dạng số bốn chữ số.

  • DDD- Tên của tỷ lệ kèo bóng đá tối nay (viết tắt).

  • MMM- Tên tỷ lệ kèo bóng đá tối nay tháng (viết tắt).

Tất cả các ký tự khác được sao chép 1: 1 vào đầu ra sợi dây.

Bảng sau đây cho biết một vài định dạng có thể. Điều này sẽ cho bạn một ý tưởng về cách sử dụng chức năng này. Tất cả các dòng đầu ra đều dựa trên cùng một tỷ lệ kèo bóng đá tối nay: tháng 11, 23, 1959.

Bảng 31-2. Định dạng đầu vào hợp lệ chopgtypesdate_fmt_asc

FMT result
MMDDYY 112359
DDMMYY 231159
YYMMDD 591123
yy/mm/dd 59/11/23
YY MM DD 59 11 23
YY.MM.DD 59.11.23
.mm.yyyy.dd. .11.1959.23.
MMM. DD, Yyyy nov. 23, 1959
MMM DD YYYY 23 tháng 11 năm 1959
Yyyy DD MM 1959 23 11
DDD, mmm. DD, Yyyy Thứ Hai, tỷ lệ kèo bóng đá tối nay 23 tháng 11, 1959
(DDD) Mmm. DD, Yyyy (Thứ Hai) tỷ lệ kèo bóng đá tối nay 23 tháng 11, 1959
pgtypesdate_defmt_asc

Sử dụng mặt nạ định dạng để chuyển đổi chuỗi c char* thành a giá trị của loại tỷ lệ kèo bóng đá tối nay.

int pgtypesdate_defmt_asc (tỷ lệ kèo bóng đá tối nay *d, char *fmt, char *str);

Hàm nhận được một con trỏ tới giá trị tỷ lệ kèo bóng đá tối nay nên giữ kết quả của hoạt động (D), Mặt nạ định dạng để sử dụng để phân tích cú pháp tỷ lệ kèo bóng đá tối nay (FMT) và c char* Chuỗi chứa biểu diễn văn bản của tỷ lệ kèo bóng đá tối nay (str). Văn bản Đại diện dự kiến ​​sẽ phù hợp với mặt nạ định dạng. Tuy nhiên bạn không cần phải ánh xạ 1: 1 tỷ lệ kèo bóng đá tối nay Chuỗi theo mặt nạ định dạng. Hàm chỉ phân tích thứ tự tuần tự và tìm kiếm các chữYYhoặcYyyyĐiều đó chỉ ra vị trí tỷ lệ kèo bóng đá tối nay năm,mmĐể chỉ ra vị trí tỷ lệ kèo bóng đá tối nay tháng VàDDĐể chỉ ra vị trí của tỷ lệ kèo bóng đá tối nay.

Bảng sau đây cho biết tỷ lệ kèo bóng đá tối nay vài định dạng có thể. Điều này sẽ cho bạn tỷ lệ kèo bóng đá tối nay ý tưởng về cách sử dụng điều này chức năng.

Bảng 31-3. Định dạng đầu vào hợp lệ chordefmtdate

FMT str result
ddmmyy 21-2-54 1954-02-21
DDMMYY 2-12-54 1954-12-02
DDMMYY 20111954 1954-11-20
DDMMYY 130464 1964-04-13
mmm.dd.yyyy Mar-12-1967 1967-03-12
yy/mm/dd 1954, tháng 2 Thứ 3 1954-02-03
mmm.dd.yyyy 041269 1969-04-12
yy/mm/dd Trong năm 2525, trong Tháng 7, nhân loại sẽ sống vào tỷ lệ kèo bóng đá tối nay 28 tỷ lệ kèo bóng đá tối nay 2525-07-28
DD-MM-YY Tôi đã nói vào tỷ lệ kèo bóng đá tối nay 28 của Tháng 7 năm 2525 2525-07-28
mmm.dd.yyyy 9/14/58 1958-09-14
yy/mm/dd 47/03/29 1947-03-29
mmm.dd.yyyy tỷ lệ kèo bóng đá tối nay 28 tháng 10 năm 1975 1975-10-28
MMDDYY tỷ lệ kèo bóng đá tối nay 14 tháng 11 năm 1985 1985-11-14

31.8.3. Các loại dấu thời gian

Loại dấu thời gian trong C cho phép các chương trình tỷ lệ kèo bóng đá tối nay bạn đối phó với Dữ liệu tỷ lệ kèo bóng đá tối nay dấu thời gian loại SQL. Nhìn thấyPhần 8.5cho tương đương Nhập vàoPostgreSQLMáy chủ.

Các chức năng sau đây có thể được sử dụng để làm việc với Loại dấu thời gian:

pgtypestimestamp_from_asc

phân tích dấu thời gian từ biểu diễn văn bản tỷ lệ kèo bóng đá tối nay nó vào một biến dấu thời gian.

Timestamp pgtypestimestamp_from_asc (char *str, char ** endptr);

Hàm nhận chuỗi vào phân tích.str) và tỷ lệ kèo bóng đá tối nay con trỏ tới c char* (endptr). Hiện tại ECPG luôn luôn phân tích chuỗi hoàn chỉnh và hiện tại nó không hỗ trợ lưu trữ địa chỉ tỷ lệ kèo bóng đá tối nay người đầu tiên ký tự không hợp lệ trong*EndPtr. Bạn có thể đặt tỷ lệ kèo bóng đá tối nay cách an toànendptrđến VÔ GIÁ TRỊ.

Hàm trả về thời gian phân tích cú pháp thành công. Trên lỗi,pgtypesinvalidtimestampđược trả về và errno được đặt thànhpgtypes_ts_bad_timestamp. Nhìn thấypgtypesinvalidtimestampĐối với quan trọng Ghi chú về giá trị này.

Nói chung, chuỗi đầu vào có thể chứa bất kỳ sự kết hợp của một đặc tả tỷ lệ kèo bóng đá tối nay được phép, một ký tự khoảng trắng và đặc điểm kỹ thuật thời gian được phép. Lưu ý rằng múi giờ không được ECPG hỗ trợ. Nó có thể phân tích chúng nhưng không áp dụng bất kỳ tính toán nào làPostgreSQLMáy chủ không Ví dụ. Máy chỉ định timezone âm thầm bị loại bỏ.

Bảng sau đây chứa tỷ lệ kèo bóng đá tối nay vài ví dụ cho đầu vào Chuỗi:

Bảng 31-4. Định dạng đầu vào hợp lệ chopgtypestimestamp_from_asc

INPUT Kết quả
1999-01-08 04:05:06 1999-01-08 04:05:06
8 tháng 1 04:05:06 1999 PST 1999-01-08 04:05:06
1999-Jan-08 04: 05: 06.789-8 1999-01-08 04: 05: 06.789 (Trình xác định múi giờ bị bỏ qua)
J2451187 04: 05-08: 00 1999-01-08 04:05:00 (thời gian Kẻ xác định vùng bị bỏ qua)
pgtypestimestamp_to_asc

Chuyển đổi một tỷ lệ kèo bóng đá tối nay thành chuỗi c char*.

45826_45878

Hàm nhận được dấu thời gianTSTAMPlà đối số duy nhất tỷ lệ kèo bóng đá tối nay nó và trả về Chuỗi được phân bổ có chứa biểu diễn văn bản tỷ lệ kèo bóng đá tối nay dấu thời gian.

pgtypestimestamp_civerse

Truy xuất dấu thời gian hiện tại.

46379_46428

Hàm lấy dấu thời gian hiện tại và lưu nó vào biến dấu thời gian đóTSĐiểm đến.

pgtypestimestamp_fmt_asc

Chuyển đổi biến dấu thời gian thành c char c* bằng cách sử dụng a Định dạng mặt nạ.

46908_46997

Hàm nhận được một con trỏ tới dấu thời gian tới Chuyển đổi dưới dạng đối số đầu tiên tỷ lệ kèo bóng đá tối nay nó (TS), tỷ lệ kèo bóng đá tối nay con trỏ tới bộ đệm đầu ra (đầu ra), Độ dài tối đa đã được phân bổ cho bộ đệm đầu ra (str_len) và mặt nạ định dạng để sử dụng cho Chuyển đổi (FMTSTR).

Khi thành công, chức năng trả về 0 và âm giá trị nếu xảy ra lỗi.

Bạn có thể sử dụng các định dạng định dạng sau Định dạng mặt nạ. Các định dạng định dạng là cùng tỷ lệ kèo bóng đá tối nay định dạng được sử dụng trongstrftimechức năng trongLIBC. Bất kì Bộ xác định không định dạng sẽ được sao chép vào đầu ra bộ đệm.

  • %A- được thay thế bởi Đại diện quốc gia của toàn bộ tên tỷ lệ kèo bóng đá tối nay trong tuần.

  • %A- được thay thế bởi Đại diện quốc gia của tỷ lệ kèo bóng đá tối nay trong tuần viết tắt tên.

  • %B- được thay thế bởi Đại diện quốc gia tỷ lệ kèo bóng đá tối nay toàn bộ tên tháng.

  • %B- được thay thế bởi Đại diện quốc gia tỷ lệ kèo bóng đá tối nay tháng viết tắt tên.

  • %C- được thay thế bởi (năm / 100) dưới dạng số thập phân; các chữ số đơn được đi trước bởi tỷ lệ kèo bóng đá tối nay số 0.

  • %C- được thay thế bởi Đại diện quốc gia về thời gian và tỷ lệ kèo bóng đá tối nay.

  • %D- tương đương với%m/%d/%y.

  • %D- được thay thế bằng tỷ lệ kèo bóng đá tối nay trong tháng dưới dạng số thập phân (01-31).

  • %E* %O*- Tiện ích mở rộng địa phương POSIX. Các trình tự%EC %EC %Ex %Ex %EY %EY %OD %OE %OH %OI %OM %OM %OS %OU %OU %OV %OW %OW %OYđược cho là cung cấp Đại diện thay thế.

    Ngoài ra%OBđược triển khai để thể hiện tên tháng thay thế (đã sử dụng độc lập, không có tỷ lệ kèo bóng đá tối nay được đề cập).

  • %E- được thay thế bằng tỷ lệ kèo bóng đá tối nay trong tháng dưới dạng số thập phân (1-31); đơn các chữ số được đi trước một trống.

  • %F- tương đương với%Y-%M-%D.

  • %g- được thay thế bằng a năm như một số thập phân với thế kỷ. Năm nay là một trong đó có phần lớn hơn trong tuần (Thứ Hai là tỷ lệ kèo bóng đá tối nay đầu tiên trong tuần).

  • %g- được thay thế bằng Cùng năm với%g, nhưng như tỷ lệ kèo bóng đá tối nay Số thập phân không có thế kỷ (00-99).

  • %H- được thay thế bằng giờ (đồng hồ 24 giờ) dưới dạng số thập phân (00-23).

  • %H- giống như%B.

  • %I- được thay thế bằng giờ (đồng hồ 12 giờ) dưới dạng số thập phân (01-12).

  • %J- được thay thế bằng tỷ lệ kèo bóng đá tối nay trong năm dưới dạng số thập phân (001-366).

  • %K- được thay thế bằng giờ (đồng hồ 24 giờ) dưới dạng số thập phân (0-23); các chữ số đơn được đi trước trống.

  • %L- được thay thế bằng giờ (đồng hồ 12 giờ) dưới dạng số thập phân (1-12); các chữ số đơn được đi trước trống.

  • %m- được thay thế bằng phút như tỷ lệ kèo bóng đá tối nay số thập phân (00-59).

  • %m- được thay thế bằng tháng dưới dạng số thập phân (01-12).

  • %N- được thay thế bằng a NEWLINE.

  • %O*- giống như%E*.

  • %P- được thay thế bởi Đại diện quốc gia tỷ lệ kèo bóng đá tối nay "Ante Meridiem" hoặc "Đăng meridiem" khi thích hợp.

  • %R- tương đương với%H:%M.

  • %R- tương đương với%I:%M:%s%p.

  • %s- được thay thế bằng thứ hai dưới dạng số thập phân (00-60).

  • %s- được thay thế bằng Số giây kể từ kỷ nguyên, utc.

  • %T- tương đương với%H:%M:%s

  • %T- được thay thế bằng a tab.

  • %U- được thay thế bằng Số tuần của năm (Chủ nhật là tỷ lệ kèo bóng đá tối nay đầu tiên của Tuần) dưới dạng số thập phân (00-53).

  • %u- được thay thế bằng tỷ lệ kèo bóng đá tối nay trong tuần (thứ Hai là tỷ lệ kèo bóng đá tối nay đầu tiên của tuần) với tư cách là Số thập phân (1-7).

  • %V- được thay thế bằng Số tuần của năm (thứ Hai là tỷ lệ kèo bóng đá tối nay đầu tiên của Tuần) là một số thập phân (01-53). Nếu tuần chứa tỷ lệ kèo bóng đá tối nay 1 tháng 1 có bốn tỷ lệ kèo bóng đá tối nay trở lên năm, sau đó là tuần 1; Nếu không thì đó là lần cuối cùng tuần của năm trước, và tuần sau là tuần 1.

  • %V- tương đương với%e-%b-%y.

  • %W- được thay thế bằng Số tuần của năm (thứ Hai là tỷ lệ kèo bóng đá tối nay đầu tiên của Tuần) dưới dạng số thập phân (00-53).

  • %W- được thay thế bằng tỷ lệ kèo bóng đá tối nay trong tuần (Chủ nhật là tỷ lệ kèo bóng đá tối nay đầu tiên của tuần) với tư cách là Số thập phân (0-6).

  • %x- được thay thế bởi Đại diện quốc gia thời đó.

  • %x- được thay thế bởi Đại diện quốc gia của tỷ lệ kèo bóng đá tối nay.

  • %y- được thay thế bằng năm với thế kỷ như tỷ lệ kèo bóng đá tối nay số thập phân.

  • %y- được thay thế bằng năm không có thế kỷ như tỷ lệ kèo bóng đá tối nay số thập phân (00-99).

  • %Z- được thay thế bằng Tên múi giờ.

  • %Z- được thay thế bằng Múi giờ bù từ UTC; Một dấu hiệu cộng với dấu hiệu hàng đầu Đối với phía đông UTC, một dấu hiệu trừ cho phía tây UTC, giờ và phút theo sau với hai chữ số mỗi chữ cái và không phân định giữa chúng (biểu mẫu phổ biến cho tỷ lệ kèo bóng đá tối nay RFC 822 tiêu đề).

  • %+- được thay thế bởi Đại diện quốc gia của tỷ lệ kèo bóng đá tối nay và giờ.

  • %-*- Tiện ích mở rộng GNU LIBC. Không làm bất kỳ phần đệm nào khi thực hiện số đầu ra.

  • $ _* - Tiện ích mở rộng GNU LIBC. Chỉ định rõ ràng không gian cho phần đệm.

  • %0*- Tiện ích mở rộng GNU LIBC. Chỉ định rõ ràng số 0 cho phần đệm.

  • %%- được thay thế bằng%.

pgtypestimestamp_sub

Trừ một dấu thời gian từ cái khác và lưu dẫn đến một biến tỷ lệ kèo bóng đá tối nay khoảng thời gian.

57889_57964

Hàm sẽ trừ biến dấu thời gian đóTS2Các điểm từ dấu thời gian Biến đóTS1Điểm đến và sẽ lưu trữ kết quả trong biến khoảng thời gianIVĐiểm đến.

Khi thành công, chức năng trả về 0 và âm giá trị nếu xảy ra lỗi.

pgtypestimestamp_defmt_asc

phân tích giá trị dấu thời gian từ văn bản tỷ lệ kèo bóng đá tối nay nó Biểu diễn bằng mặt nạ định dạng.

int pgtypestimestamp_defmt_asc (char *str, char *fmt, dấu thời gian *d);

Hàm nhận được biểu diễn văn bản tỷ lệ kèo bóng đá tối nay a Dấu thời gian trong biếnstrnhư cũng như mặt nạ định dạng để sử dụng trong biếnFMT. Kết quả sẽ được lưu trữ trong biến đóDĐiểm ĐẾN.

Nếu mặt nạ định dạngFMTIS Null, chức năng sẽ trở lại mặc định Định dạng mặt nạ là%y-%m-%d %H:%M:%s.

Đây là hàm ngược lạipgtypestimestamp_fmt_asc. Xem tài liệu ở đó để tìm hiểu về có thể định dạng các mục mặt nạ.

pgtypestimestamp_add_interval

Thêm biến khoảng vào biến dấu thời gian.

int pgtypestimestamp_add_interval (dấu thời gian *tin, khoảng *span, dấu thời gian

Hàm nhận được tỷ lệ kèo bóng đá tối nay con trỏ tới dấu thời gian biếntinvà tỷ lệ kèo bóng đá tối nay con trỏ tới tỷ lệ kèo bóng đá tối nay biến khoảngspan. Nó thêm khoảng thời gian đến dấu thời gian và tiết kiệm kết quả Dấu thời gian trong biếnToutĐiểm đến.

Sau khi thành công, chức năng trả về 0 và âm giá trị nếu xảy ra lỗi.

pgtypestimestamp_sub_interval

Trừ tỷ lệ kèo bóng đá tối nay biến khoảng từ dấu thời gian Biến.

int pgtypestimestamp_sub_interval (dấu thời gian *tin, khoảng *span, dấu thời gian

Hàm trừ biến khoảng thời gian đóspanCác điểm từ Biến thời gian đótinĐiểm và lưu kết quả vào biến đóToutĐiểm đến.

Khi thành công, chức năng trả về 0 và âm giá trị nếu xảy ra lỗi.

31.8.4. Các loại khoảng

Loại khoảng thời gian trong C cho phép các chương trình tỷ lệ kèo bóng đá tối nay bạn đối phó với Dữ liệu tỷ lệ kèo bóng đá tối nay khoảng thời gian loại SQL. Nhìn thấyPhần 8.5cho tương đương Nhập vàoPostgreSQLMáy chủ.

Các chức năng sau đây có thể được sử dụng để làm việc với loại khoảng:

PGTyPesInterval_New

Trả lại tỷ lệ kèo bóng đá tối nay con trỏ cho tỷ lệ kèo bóng đá tối nay khoảng thời gian mới được phân bổ Biến.

Khoảng thời gian *pgtypesInterval_new (void);
PGTyPesInterval_Free

Phát hành bộ nhớ tỷ lệ kèo bóng đá tối nay một khoảng thời gian được phân bổ trước đó Biến.

void pgtypesInterval_new (khoảng *intvl);
pgtypesInterval_from_asc

phân tích khoảng thời gian từ biểu diễn văn bản tỷ lệ kèo bóng đá tối nay nó.

Interval *pgtypesInterval_from_asc (char *str, char ** endptr);

Hàm phân tích chuỗi đầu vàostrvà trả lại một con trỏ cho một phân bổ được phân bổ biến khoảng thời gian. Hiện tại ECPG luôn phân tích cú pháp hoàn thành chuỗi và do đó hiện tại nó không hỗ trợ Lưu trữ địa chỉ tỷ lệ kèo bóng đá tối nay ký tự không hợp lệ đầu tiên trong*EndPtr. Bạn có thể đặt tỷ lệ kèo bóng đá tối nay cách an toànendptrđến null.

pgtypesInterval_to_asc

Chuyển đổi một biến số loại thành văn bản tỷ lệ kèo bóng đá tối nay nó đại diện.

char *pgtypesinterval_to_asc (khoảng *span);

Hàm chuyển đổi biến khoảng đóspanchỉ vào C Char*. Đầu ra trông giống như ví dụ này:@ 1 tỷ lệ kèo bóng đá tối nay 12 giờ 59 phút 10 giây.

pgtypesInterval_copy

Sao chép một biến tỷ lệ kèo bóng đá tối nay khoảng thời gian.

64233_64303

Hàm sao chép biến khoảng thời gian đóINTVLSRCchỉ vào Biến đóintvldestĐiểm ĐẾN. Lưu ý rằng bạn cần phân bổ bộ nhớ cho Biến đích trước.

31.8.5. Các loại thập phân

Loại thập phân tương tự như loại số. Tuy nhiên nó được giới hạn ở độ chính xác tối đa là 30 chữ số quan trọng. TRONG tương phản với loại số có thể được tạo trên đống Chỉ, loại thập phân mới có thể được tạo ra trên ngăn xếp hoặc trên Các heap (bằng các hàm pgtypesdecimal_new () và Pgtypesdecimal_free (). Có rất nhiều chức năng khác đối phó với loại thập phân trongInformixChế độ tương thích được mô tả trongPhần 31.9.

Các chức năng sau đây có thể được sử dụng để làm việc với số thập phân Loại và không chỉ chứa tronglibcompatThư viện.

pgtypesdecimal_new

Yêu cầu tỷ lệ kèo bóng đá tối nay con trỏ tới số thập phân mới được phân bổ Biến.

thập phân *pgtypesdecimal_new (void);
pgtypesdecimal_free

miễn phí một loại thập phân, giải phóng tất cả bộ nhớ tỷ lệ kèo bóng đá tối nay nó.

void pgtypesdecimal_free (thập phân *var);

31.8.6. Các giá trị errno tỷ lệ kèo bóng đá tối nay pgtypeslib

pgtypes_num_bad_numeric

tỷ lệ kèo bóng đá tối nay đối số phải chứa tỷ lệ kèo bóng đá tối nay biến số (hoặc chỉ ra tỷ lệ kèo bóng đá tối nay biến số) nhưng trên thực tế Đại diện không hợp lệ.

pgtypes_num_overflow

xảy ra tràn. Vì loại số có thể giao dịch Với độ chính xác gần như tùy ý, chuyển đổi tỷ lệ kèo bóng đá tối nay số biến thành các loại khác có thể gây ra tràn.

pgtypes_num_overflow

tỷ lệ kèo bóng đá tối nay dòng chảy xảy ra. Vì loại số có thể giao dịch Với độ chính xác gần như tùy ý, chuyển đổi tỷ lệ kèo bóng đá tối nay số Biến thành các loại khác có thể gây ra dòng chảy.

pgtypes_num_divide_zero

tỷ lệ kèo bóng đá tối nay bộ phận theo 0 đã được thử.

pgtypes_date_bad_date
pgtypes_date_err_eargs
pgtypes_date_err_enoshortdate
pgtypes_intvl_bad_interval
pgtypes_date_err_enotdmy
pgtypes_date_bad_day
pgtypes_date_bad_month
pgtypes_ts_bad_timestamp

31.8.7. Hằng số đặc biệt tỷ lệ kèo bóng đá tối nay pgtypeslib

pgtypesinvalidtimestamp

Giá trị thời gian loại biểu thị thời gian không hợp lệ con tem. Điều này được trả về bởi chức năngpgtypestimestamp_from_ascTrên phân tích lỗi. Lưu ý rằng do đại diện nội bộ tỷ lệ kèo bóng đá tối nay Kiểu dữ liệu dấu thời gian,pgtypesinvalidtimestampcũng là hợp lệ Dấu thời gian cùng tỷ lệ kèo bóng đá tối nay lúc. Nó được đặt thành1899-12-31 23:59:59. Để phát hiện lỗi, đảm bảo rằng ứng dụng tỷ lệ kèo bóng đá tối nay bạn không chỉ Kiểm tra chopgtypesinvalidtimestampnhưng cũng choerrno! = 0sau Mỗi cuộc gọi đếnpgtypestimestamp_from_asc.