������� Database-SQL-RDBMS HOW-TO ��� Linux (PostgreSQL
-����������������� ������ ������ ����� ��������)
Al Dev (Alavoor Vasudevan)
[email protected]
v11.0, 8 �������� 1999
��� �� ������� ����� ���� "�������� �����" ��� �� �������������
������� ��� SQL Database engine ��� �� front end �������� ��� �� ���
������ Unix. ���� ������ ��� �� ������ ����� ������ (International
Standard language) ANSI/ISO SQL ��� �������� �� ������������� ��� SQL
database engine �� ��� �������� �� �� world-wide internet ���
�� ��� "������ ���������� ��������". �������� ��� �� ��� (HOW-TO)
�� ������������� ��� ���������������� ������� SQL ���� �������
������ "PostgreSQL" �� ��� ������ Unix �� ����� ������ ��
�������������� ��� Application Database Server � ��� Web Database
Server. � PostgreSQL �������� ��� �������� �� ������� ������ ISO
��� ANSI SQL 1998,92,89. ��� �� ������� ����� ������ ���������� ���
�� ����������� ���������� �� �� ���� ��� �� Front End GUIs, ���
�������� RAD (Rapid Application Development), ��� interfaces �����
�������������� "C", "C++", Java, Perl, ODBC, JDBC ������ ���
�������� ������� ��� ����� �� Web ��� ����������� �������
����������. �� ���������� �� �������� �� ���� ��� ���� ���
�������� Unix ��� ��� ����� ������ ������ ��� �� ����� ��� ��������
�� ����� ��� ��� ���� �� �����, ��� ������ SQL ��� ��� PostgreSQL.
��� �� ������� ��� ������ ���� ��������� ��� SQL, ��� � ������ SQL
�� ����� ��� ������� ���� �������. �� �������� �� ���� �������
�� �� ������� ��� ������ ���� �������. ��� ��� ��������, ��
���������� �� �������� �� �� ��� ����� ������ �� ����� ���
������ ����� �� �� ������� ���� �������� PostgreSQL, ��' ���
������ �� ����� �� ������� ��� ������� SQL ���� ��������.
______________________________________________________________________
Table of Contents
1. �������
2. ����� ����� ��� �� �������
3. �� ���� ��� ������ ���������� ��� ��������!
4. �� ����� � PostgreSQL ;
5. �� ���� �� �� �� ;
6. � PostgreSQL ����������� ���������� ������� ������, ���������� �� 200 Gig
7. �� ���� �� �������� ��� PostgreSQL ; �� ������ Regression ��� ���� ��������� �� ������� ����������� ���� ������
8. ����� �������� ����������� (GUI FrontEnd Tool) �� ��� PostgreSQL
9. �������� ��� ����������� ��������� �������� ��� PostgreSQL (GUI IDE)
10. ������ ���������� �� ��� PostgreSQL
10.1 ODBC Drivers ��� ��� PostgreSQL
10.2 UDBC Drivers ��� ��� PostgreSQL
10.3 JDBC Drivers ��� ��� PostgreSQL
10.4 Java ��� PostgreSQL
11. Perl Database Interface (DBI) Driver ��� PostgreSQL
11.1 ��������� Perl 5 �� PostgreSQL
11.2 Perl Database Interface DBI
11.2.1 �� ���� �� DBI ;
11.2.2 ����� DBI ��� ��� PostgreSQL - DBD-Pg-0.89
11.2.3 ������ ���������� ��� �� DBI
11.2.4 �� ����� �� DBI, DBperl, Oraperl ��� *perl;
11.2.5 ����������� DBI
11.2.6 ���������� ������������ � ����� "����� ���� ���������!"
11.2.7 ������������� �� DBI ��� �� �������� Windows 95 / NT ;
11.2.8 �� ����� �� DBM; ��� ����� �� ������ �� ���������� �� DBI ��� ���� ��;
11.2.9 ������������� [lt ] �� ���� ������������� [gt ] ��� DBI;
11.2.10 ��������� ����� �� DBI ��� ������������� �� CGI;
11.2.11 �� ������ ������� ����� ������� �� DBD Oracle ��� CGI;
11.2.12 �� ������� ������ (persistent) �������� ����� DBI ��� CGI
11.2.13 ``���� ���� ��� perl script �� ��� ������ �������, ������, ���� ���� �� ���� �� ��� httpd, ���������!'' �����;
11.2.14 ���� �� ��� multi-threading �� �� DBI;
11.2.15 �� ���� �� ����� stored procedures �� �� DBI;
11.2.16 �� ���� �� ��� ��� ����� �� ������������ �� ��� stored procedures �� �� DBI;
11.2.17 �� ���� �� ��������� � �� ��������� ��� ���� �������� �� �� DBI;
11.2.18 �� ������������ �� DBI ��� ����� NULL ;
11.2.19 �� ����� ���� �� ������� func (func methods);
11.2.20 �������� ���������� ��� ���������
12. �������� ���������� ��� PostgreSQL
12.1 PGACCESS - ��� ����� �������� ��� �� ��������� ��� PostgreSQL
12.2 Windows Interactive Query Tool ��� PostgreSQL (WISQL � MPSQL)
12.3 Interactive Query Tool(ISQL) ��� ��� PostgreSQL - ���������� PSQL
12.4 MPMGR - �������� ���������� ����� ��� PostgresSQL
13. ���������� �������� ����� PostgreSQL �� ��� ����
14. �������� ��� �������� ��� ��� PostgreSQL
14.1 ����� 4�� ������ (4GL) PostgreSQL ��� �������� �� web ��� ���� �������� - ������� �������� AppGEN
14.2 WWW Web interface ��� PostgresSQL - DBENGINE
14.3 Apache Webserver Module ��� PostgreSQL - NeoSoft NeoWebScript
14.4 �� HEITML ���������� ��� HTML ���� server ��� ��� ����� 4�� ������ ��� ��� PostgreSQL
14.5 America On-line AOL Web server ��� PostgreSQL
14.6 Problem/Project Tracking System Application Tool ��� PostgreSQL
14.7 ��������� ����� dbase dbf �� PostgreSQL
15. �������� ��� �������/��������� Web ����� �������� ��� ��� PostgreSQL - EARP
15.1 �� ����� �� EARP ;
15.2 ���������
15.3 �� ���������� ��� �� ������� �� EARP
15.4 �� ������ ;
15.5 �� �� �� �� ;
16. PHP Hypertext Preprocessor, ��� scripting ����� ��� ��� PostgreSQL � ����� ����������� �� html ��� ���������� ��� Server
16.1 ���� ��������������
16.2 ���������/����������
16.3 PHP 3 - ������ �������
16.4 �� ���� �� ���, �����, �� �� PHP/FI ;
16.5 ��� ��� ����������
16.6 CGI Redirection
16.6.1 ��������� ��� ��� Apache 1.0.x
16.6.2 Netscape HTTPD
16.6.3 NCSA HTTPD
16.7 �������� �� PHP/FI �� �� ������ ������
17. ��������� �� PostgreSQL ��� Python
17.1 �� ���� �� �� �� PyGres ;
17.2 ���������� ��� ����������
18. ���������� ����� PostgreSQL ��� WWW - WDB-P95
18.1 ������ �� �� wdb-p95
18.2 ����� ���������� � ����������� ��� PostgreSQL, �� pgperl, ��� �� httpd �� ����� ���� ���� host;
19. ����������������� ����������� ��� "C", "C++", ESQL/C ��� ������� �������� ��� ��� PostgreSQL
19.1 ��������� ������ "C" �� ��� PostgreSQL
19.2 Interface ������ "C++" ��� ��� PostgreSQL
19.3 ESQL/C ��� PostgreSQL
19.4 ������� �������� ��� ��� PostgreSQL
20. Japanese Kanji ������ ��� ��� PostgreSQL
21. ������� ��� PostgreSQL �� Windows 95/Windows NT
22. ������ ������������
22.1 ��������� ��� ����� ��������� e-mail
22.2 ������� ����� ������������
22.3 ����� ��� ������ ������������
22.4 �������� ����� ������������
23. ��������� ��� �����������
23.1 ������ ��������� ��� ���������
23.2 Online ���������
23.3 ������� ����������� �������
23.4 ������� ���������� ANSI/ISO SQL - SQL 1992, SQL 1998
23.5 ������ ANSI/ISO SQL 1992
23.6 ������ ANSI/ISO SQL 1998
23.7 ����� ��������� SQL ��� �������
23.8 �������� �������� (extension) ��� SQL92
23.9 ����� 0 - ��������� �� ������� ISO/ANSI SQL
23.10 ����� 1 - ������ ��������� �� ISO/ANSI SQL
23.11 ����� 2 - ISO/ANSI SQL Foundation
23.12 ����� 3 - ISO/ANSI SQL Call Level Interface
23.13 ����� 4 - ISO/ANSI SQL Persistent Stored Modules
23.14 ����� 5 - ����������� - ��������� ISO/ANSI SQL/ ISO/ANSI SQL/Bindings
23.15 ����� 6 - ISO/ANSI SQL XA Interface Specialization (SQL/XA)
23.16 Part 7 - ISO/ANSI SQL Temporal
23.16.1 �������
23.16.2 �� ������- ���������� ���������/��������� �����������
23.16.3 ������ - ���������� ��������� �����������
23.16.4 ������ - ������� (PROJECTION)
23.16.5 ������ - ����������� (JOIN)
23.16.6 ������ - ����������� �������� (AGGREGATES)
23.16.7 ��������
23.17 ����� 8 - ISO/ANSI ������� SQL (SQL MULTIMEDIA - SQL/MM)
24. ������ ���������� ��� ��� PostgreSQL
25. ���������� ��� ������������� ������
26. ����� ���� ����� ��������
27. �������� ������� ��� ����������� ��� Internet World Wide Web
28. ���������
29. ���� ���������� �������� ������ �� ��� PostgreSQL
30. ������� ��������� ���������
31. ��������� A - ������ �� ANSI/ISO SQL 1992
32. ��������� B - ����� ��������� SQL ��� �������
32.1 ����� ��������� ��� PostgreSQL
32.2 ������� Internet ��������
33. Appendix C - ������� ��� ������� ����������� Linux
______________________________________________________________________
1. �������
� ����� ��� �� ������� ����� �� ���� ���������� �������/URLs
��� �� ������� ������� ��� PostgreSQL ��� ������ �� ������������ ��
������������� ��� ������� ��������� ������ ����� (Open Source
Code) ��� � PostgreSQL, Linux.
���� ������ ���������� ���� ���� ���������� ��� ���� �������� ���
�� ��������� /������ ����������. � ����� ���� �� �������������
��� ���������� ����� ��� �� ����������, �� �������� ��� ��
�������������� ��� ��������� ��� �� �� ������ ��� ��� �������,
������������� ���� ����. �������, �� ������ ������ �� �����
���, ��������, ��������� ��� ��� ����� ��� ����� ��. � ����
�������� ����� ������ ������� ������ ��� ���� ������� ���� ����
��� ��� �� ��� ������������ ��� ���������� ����������. �� ���
������� �������� ����� �������� ���������� ���� SQL �����������
�� ������� ��������� ������ ISO (International Standard
Organisation) �� ������ ���������� �� �� ����� ��� ��o ����� ANSI
SQL (�����������). �� ������� ����������� �� ���������������
���� ����� �� ISO/ANSI SQL 1992. �� ��������� ����� ����� �� SQL
1998/99 ���� ��� ��� SQL-3 ��� ����������� ����. ��������� ������
��� � Oracle, � Sybase ��� Informix ����� �������� ��������� �� ���
�� ����� � ��������� �� �� ����������.
��� �������� �� �� �� �������, ������ ���������� �� 20
���������� �������� ����� ��������, ��������/��������� ���
internet, �� ��������������� �� ��� ��� ���� ��� ����� ����������
�� ��������� ��� ������� ������. ���� ��� ����� ��� ��
ANSI/ISO SQL, �� ���� ��� ������ ��� ��� ������ �� �������� ���
������� ��� ��� ���� ��� �� �� ����� �� ��� �� �������� �����
��������. � �������� ������� ����� �� �������� ��� ������� ���
���� �������������� ISO SQL, ODBC, JDBC ��� �� ��� ������� ���� ��
��������������� �� ��� �� ���������� �������� ����� �������� ����
����.
� ������������ ��������� ����� ����, �� �������� ����� �� ISO
SQL, ANSI SQL/98, SQL/92 ��� ANSI SQL/89 RDBMS ����� � PostgreSQL. �
PostgreSQL ����� � ����������������� ������� SQL ���� �������
������ ��� �� ���������� ����� ANSI SQL ��� �� SQL 1998 (SQL-3) ���
���� �� ��������� ��� ��� ���������� �� ������������������ ������
��� ���� �������� ����������� (Object data types). � PostgreSQL
����� �� ��� ����� RDBMS ���� ���� �� �����������
������������������ ������ ��� SQL. ��� �� ������� �� ��� ��� �� ��
������������� �� ���� ���, ������, ��� �� ������ ������ �� ������,
�� �� ������������� Web database, application database, ������
����������� ����������� ��� �������� (front end GUIs ��� �����������
interface). ��� ��������� �� ������ ���������� ��� ��������
����� 100 % ������� �� �� ����� ISO/ANSI SQL, ODBC, JDBC, ����
���� � ������� ��� �� ����� ���������� �� ������ ������ ��� ��
PostgreSQL, Oracle, Sybase, Informix ���.
�� ��� PostgreSQL, �� ���� ��� �������� ������� ��� ����� ����
�������������� ��� ��� �������� �� '������ ������� �������� ������
�����' (Open Source Code development). �� ������ ������� ��������
������ ����� ����� �� ��� �� ����� �������� �� ������ ���� ���
������ �����, ��� � ������� ������� ��� internet �� ����������
������ ����� �������� ����. � ���������� ��� ��������� ��� �
��������� ������� ��������� �� ������� ���� �����������
"��������� ���������" (Information Super-Highway) �� ��������
��� ��� ����. ��� ����� �� �������, � ������� �� internet ��
����� ��������� � ����� �� �� ����� ��� �� ���������� �� �������
��������� ��� PostgreSQL �� ��� �������.
���������� ��� ���� ��� ������� (�������������, ��������,
������������), �� ���������� ��� ��� ����������� ���� ������� ��
���������, �������� ��� �������� ������� ��������� ��� �� ���
'������ ������ ������ �����' ��� � PostgreSQL ���������� ���
������ ����� �� ��� ������ ����� �������� ���� �������������
��� ��� ��������� ���������. ��� ���������� � ������ ��
������ �� ���������� ��� �' ��, ��� ������� �� ����� �
������� �� ���������. �� ������ ������� ������ ����� ��
��������� ������ ��� ������� �� ���� �� ��� ��� , �� ������ ��
����� ������ ��� �� ����� ��� ���������, �� ����������� ���� ���
������� ��� �������� ��� ���� ��� ��������� ���������� ���
�������������� �� ������ ��� ������ ���. ���� ��� �������
��������� ��� ����� �� �����, ��� ��� ���������� �� ��� ������
����� ����. �� �� ����������� ��� ������� ���� ��� �� ���� �� ���
��� ����� ����. ���� �� �������� ���� 21� ����, �� ������ ������
���� ���� �� �������� �� �������� ��� �����. �� ������� ��
�������� �� ������� �������� ��������� ��� � PostgreSQL, �� Linux
���.
�� ��������� ���������� �����������, �� �� ������ ��� ��� ����� ���
�� ��������� ��. � ������� ������ ����� ���������� ������� �� ��
���������� ��� ��� ����� ����. �� �� ��������� �������� ������ ��
������ ��� �������. ��� �� ��������� ��� ���� (hardware), ������
�� ������� ������� ��� �� ������ �� �������� �� �� internet.
�������� ������ ����� �� ���� �� ���������� �� ����� ����� ���
���� ���� ��� �������. To ���� ����� �� ����� �� ����� �� ������
�� �� �������� ���� �� ������. �� ���� �� ���������� ����� ���
�������� ��� ��� 6 �� ��� 180 ����� ���� ���� ���� ��� ���
��������� ��� �������� �������� ��� ��������� �������/�����
����������. � �������� ��� � �������� chips ���������� �����
��������� ���������. ����� ��� ��� ������ ����������, ��������,
������� ������� ��������� �� ���������� ��� ������ �������� ��
������ �� ��������� 0.18 micron. �� ��� ���� chip ��������
���������� �����������/������� ����� ����� �������������. ���������
��� �� AMD, Intel, Cyrix, Hitachi, IBM ��� ����� ����� ��������
����� �� ���������� ��� �� ����� ����� ����� ��������� ���
� ���������������� (Micro-electronics) ��� � ��������������� (Nano-
electronics). Micro �������� (���-������������ �� ����� 10^-6),
Nano �������� (���-��������������� �� ����� 10^-9). � ������
��������� ������������ ���������������� �� ��� 0.35 micron
�������������� ����� ��������, ��� ������ �� 0.25 micron
�������������� ����� ���������� �� ����. ��� ������ ��� ������
�� �������������� ��������� �� 0.10 micron �� ���� ���
��������������� ��� �� ������� �������� ����������. �� �����
�������� �� �������������� �� ���� ��� chips �� ����������,
���� � ����� ����� �������� ���� �� ����������. ���
�������������, �� �������������� ������� �������� ������������,
������� � � ������ ���������� ��� ������ ������� �� ����������
������ �������� �� 0.15 micron.
�� 20 ����� �� ���, �� ���� �������� �� �������������� ��
�������� ����������� ��� �������� �� �� ����� ������������� �����
���������� �� �� ���� ��������. �� ���� ����� ��� ����� ����.
��� �� ����� ����� �� ����� �������� �� �������� �,�� ������� ��
�� ��� ����. �� �������� ����������� �� ������������ �� ���� ���
���� ��� ������������ �������� on/off. ���� � �������� ����� ON
�������� 1, ��� ���� ����� OFF �������� 0. ��� �� ����������� �� ���
��� ���� ���������� ��� ����� ������.
� ������� ������� ������ �� ����� ��� ��� ����������� ������
����� �� chips �� ����������.
Advancement of chip capabilities in future
********************************************
+--------------------------+---------+---------+---------+---------+--------+---------+
| Item/Year | 1997 | 1999 | 2001 | 2003 | 2012 | 2020 |
+--------------------------+---------+---------+---------+---------+--------+---------+
| Feature size(micron) | 0.25 | 0.18 | 0.15 | 0.13 | 0.05 |< 0.00001|
+--------------------------+---------+---------+---------+---------+--------+---------+
| Wafer size(mm) | 200 | 300 | 300 | 300 | 450 | Mol/Bio |
+--------------------------+---------+---------+---------+---------+--------+---------+
| Min Operating Voltage | 1.8-2.5 | 1.5-1.8 | 1.2-1.5 | 1.2-1.5 | 0.5-0.6| < 0.001 |
+--------------------------+---------+---------+---------+---------+--------+---------+
| Max power dissipation | 70 | 90 | 110 | 130 | 175 | 600 |
+--------------------------+---------+---------+---------+---------+--------+---------+
| On-chip frequencey (MHz) | 750 | 1,250 | 1,500 | 2,100 | 10,000 | > 50,000|
+--------------------------+---------+---------+---------+---------+--------+---------+
| DRAM capacity | 256 MB | 1 GB | 2 GB | 4 GB | 256 GB | > 1000GB|
+--------------------------+---------+---------+---------+---------+--------+---------+
��� �������, �� ���� ����� ������ ���������� ��� �������� �� ��
�������� ����� ������� ������ ���������. ���, � ��������
�����/�����-����� ����� ������ �������� ��� ��� ������ ���������!
��������� ��� �� Compaq, Dell, Sun Microsystems, HP, IBM ��
����������� ����������� ����� �� ����� ������������ ����
��������� ��� �������� ������ ��� ��� ������!!
�� ��� ����, ���� ���� ���������� ���� ���� ���������/�������
��������. ���� �������������, ������������ ���� ���� �� ��� ����
PC ������-����� ������ �� ����������� ��� ������ ���� �����
�������� ��� ��� Oracle . ���� �� �� ������� 10 ����� (�
����������� ��� Oracle ����� ������ 10 ������-��� ������). ���
������-���� ����� ��� ����� �� ������ �� ����� �������� ��� ���
������� ����. �� 10 ������� ���������� ��� 10 ��� ��� ���
������� 10 ������-���.
������ ��� �� Oracle, Informix, Sybase, IBM DB2 (Unix) �������� ��
����� "C" ��� �� ���������� ������������� ��������������� ���
����� ��� ���� ������������ ���� �������. �� ������ Oracle, Sybase,
Informix ����� ����������� 100 % "C"!!
��� ��� ��� ����� ����� ������ ���� PostgreSQL �� �������� 12
�����, ��� ��� ���� ���������������� �� ��� ��� ��� ���� ����
�� �� ���������� �� ����� ANSI/ISO SQL. ����� ������ ����������� ��
��������������� ��� �������� ����� ��� �� ���������� ��
�������������� �� ������ � ��������� ���� PostgreSQL ��� ��
������� �� �� ������������� �����.
� PostgreSQL ��� ����� ���� ��� ����� ���� ���� ��� ����� ��������
'���� Internet'. ����������� ��� � ������ ������ "Made By
Internet" �� ������ �������� ��� ��� ����� ���� �� �������� �����
�������, ����� �����, ���������� ������ ���� ������ ��� ���� ��
��������� �����. ���� �� ���� �� �� ������������ �� ������
'Made By Internet' �� ����� ������ ��� "���������� World-wide
Internet" ��� �� ������ ��� ��� �� ��� ����� �����. � ���� �����
��� �� ���� �� "Internet" ����� � ��������� �������� ��������
��������� �� ��� ��� ����!
2. ����� ����� ��� �� �������
��� �� ������� ����� ������ �� 10 ����������� �����, ���������� -
DVI, Postscript, Latex, LyX, GNU-info, HTML, RTF (Rich Text Format),
Plain-text, ������� �������� Unix (Unix man pages) ��� SGML.
� �������� �� ������ �� �� ������� HOWTO ��� ��� ����� tar ��
���� HTML, DVI, Postscript � SGML �� �� -
<
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/other-formats/>
� � ���� ���� ������� ��������� ���:
<
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO>
� ��� ����, ������������, ���������, ���������� ���� ���
��������� ��������� ��� �� HOWTO, ������� email ���� ����
������ :
[email protected] � ���� ������� �������� :
[email protected] ��� ����������� :
[email protected]
� ���������� �� ����� ������ ��� �������, ���������, ��������,
��������, ���������� ���������� ���
<
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO> ����������� �������
��� �������� �� ����� ������ ����� ���������.
�� ������� ������� �������������� �� "�������� SGML" �� ����� ��
�� ������ ��� - <
http://www.xs4all.nl/~cg/sgmltools/> ���
������������� ��� ����� �� ���� ������� ���
� sgml2html databasehowto.sgml (��� �� ������������ ����� html)
� sgml2rtf databasehowto.sgml (��� �� ������������ ����� RTF)
� sgml2latex databasehowto.sgml (��� �� ������������ �����
latex)
�� ������� ��������� ��� -
� <
http://sunsite.unc.edu/LDP/HOWTO/PostgreSQL-HOWTO.html>
�������� ������ �� ������ �� ������� ��� ������� mirrors sites -
� <
http://www.caldera.com/LDP/HOWTO/PostgreSQL-HOWTO.html>
� <
http://www.WGS.com/LDP/HOWTO/PostgreSQL-HOWTO.html>
� <
http://www.cc.gatech.edu/linux/LDP/HOWTO/PostgreSQL-HOWTO.html>
� <
http://www.redhat.com/linux-info/ldp/HOWTO/PostgreSQL-HOWTO.html>
� ���� mirror sites ����� ��� (network-address-wise) �������� ��
������ ��� <
http://sunsite.unc.edu/LDP/hmirrors.html> �������� ���
site ��� ��������� ���� �������� /LDP/HOWTO/PostgreSQL-HOWTO.html
��� �� ����� �� ������� �� ���� dvi, �������������� �� ��������
xdvi. �� �������� xdvi ��������� ��� ������ tetex-xdvi*.rpm ���
Redhat Linux �� ����� ��������� ��� ������ ControlPanel |
Applications | Publishing | TeX menu. ��� �� ��������� ������� dvi
���� ��� ������ -
xdvi -geometry 80x90 howto.dvi
��� ������� �� ������� �� ������� �� �� �������. ����� �� ������
�������� ��� �� xdvi.
��� �� ������������� �������������� �� �������, �� ������� Page Up,
Page Down, �������� �� ��������������� ������ �� �������� 'f', 'd',
'u', 'c', 'l', 'r', 'p', 'n' ��� �� ������������� ���� �� ���, ���,
��� ������, ���� ������ ������, ���� ���������� ������ ���.
��� �� ���������������� �� expert ���� ������� 'x'. �������� ��
��������� ����� postscript �������������� �� 'gv' (ghostview) �
'ghostscript'. �� �������� ghostscript ��������� ��� ������
ghostscript*.rpm ��� �� �������� gv ��� ������ gv*.rpm ��� Redhat
Linux �� ����� ��������� ��� ������ �� ���� ControlPanel |
Applications | Graphics. �� �������� gv ����� ��� ��� ����� ���
������ �� �� ghostscript. �� ghostscript ��� �� gv ����� ������
��������� ��� �� ����� �������� ��� �� OS/2, Windows 95 ��� NT,
������� �� �� ������� ���� ��� �� ���� ��� ��������.
��� �� ��������� ������� postscript ���� ��� ������ -
gv howto.ps
��� �� ��������������� �� ghostscript ��� ������ -
ghostscript howto.ps
�������: �� ������� �� ����� ������, � ������� ������ ������ (��
postscript) �� ����� �� ����� ������ 113 ������� ��� ������� (���
�������� �� ������ �� ����� �����������).
�������� �� ��������� �� ������� �� ���� HTML ��������������
Netscape Navigator, Microsoft Internet explorer, Redhat Baron Web
browser � ����������� �� ��� ����� 10 web browsers.
�������� �� ��������� ��� ����� �� �� latex, LyX �������������� ��
LyX, ��� X-Windows ����� �������� ���������� �� latex.
3. �� ���� ��� ������ ���������� ��� ��������!
�� �� �� �������, �� ��� ������� �� � �������� ������ ��������
��� ��� ��������� ����� ����������� ��� �� ��������, ��
�����, �� �����, ��� �������� ���� ��� ���� ��� �����! ��� ��
������� �� ��� ������ ������ ����� � ���� ��� ��������� ����� ���
��������� ���� �� ���������� �� �������������� �� ������ ���. ��
����������� ������������ �,�������� - ��� ���������� � PostgreSQL, �
�����, � ����, � ��������, �� ��������, � �����, �� �������, ��
�������, �� ��������, �� ������� ���... ����� �����������
������������ ��� ���������. ��� �� ������� ��������� ������ ��
�� ���� ��� ��������� ��� � ���������� ����� �� �������� open-
source code ��� � PostgreSQL ��� �� Linux. ���� � ������ ���
�������� �������� ����������, ��� �� �������� ������� ������ ���
��� ������, �� �������� open-source code ������� ������� �������.
��� �� �� ����������� ������ ��� �� ���� ��� ������� ����� �����,
�� �������� closed source-code �� �������� ������ �� ��� �������.
�� ��������� �� �������� ������� �� ��� ������ - "��� ��������
����� � ��������, ��� ��������� ����� ��� ��� ������ ��� �� ������
�� ���� ��������� ��� � PostgreSQL, �� Linux".
�� �� ��������� ��� project ��� � PostgreSQL, ������� �������� ���
����, ��� � PostgreSQL ����� ���� ��������� ��� ����. ��� ��� �
�������� ��� � ����� ������ �� �������� ��� ������������, ������
��� �������� ���� ����� ��� ������� ��� �� ���� ��������� ��� �
PostgreSQL, �� Linux.
�� ������������� ���� (�����) ���������� �����, ������, �� �,��
������ ���� ��� ��� ���� ��������� ��� �������� ����� ��������.
� ����� ��������� ���� ��� ���� ������ (������ �����), ���������
(����� ����� ����� ��� ��������), ��������� ��� ������ � ������
��������. ������ ������ ��� ��������� ��� � ������, � ������ ���.
��������� �� ��� ����� ������, �� ���������� (������ ����� ���
��� �� ��������� ��� �� ��������). ��������� �� �� ��� ����
��� ������ ����� ��� ����������, ������������������ ��� PostgreSQL.
� PostgreSQL ������������ �� '�������� �������' ,��� ��� ����
��������� �� ���������� . � '�������� �������' ��������� �� ��
'����� ����', �� '������� �������', �������� �� Groups, Rings,
Collections, Sets, Unions, Intersections, Exclusions, Domains, Lists,
���...
�������� ��� � PostgreSQL ������ ������ �� ��� ��������� ��� ��
����. � �������� ����� ��� �� ���������� ��� ����, ���
�������� ������� ��� ����� ���� ��������! � ���� ��� � ��������
����� � ��� �������! �� ������ ��� � ���� ��� � �������� ����� ��
���� ������ ���� ������ ���� ������� 100 ����� ����!
�� ����� ���� �������� ������� ���������� �������� ����
�������������� (������� ��������) ������������� �� ������ ��������
�� ������� ��������. ���� ��� ��� �� ��������� ��� ��� ��������,
�� ����� ���� ������ ��� ����� ������� ��� ������������ ���
��������. ��' �� �������� � ������� ���! � �������� ��
����� (����� ���� �������) ������ �� �������� ��� ����������.
��� ����������, ������ ����� ������ ��� �� "�������� ������" ���
���� ������� ������ �� ������ �� �������� ��� �������� ��
���������� � ��������.
��� ��� ������� ��� � ��������� �������� ����� ��� ������������
���� ���������. ������ � ������� ����� ��� ������������ ����
���������, �� ���� ��� ������������� ���������� ���� ������� ���
���� � ������������ ��� ������ ������������ �� �������� ��� �
PostgreSQL.
��� �� ���� ��������, ����� ������ �� ������� ����������� ������ �
����� (����������������� ��� ��������� ����� ��������) �� ��
����� 100 % ������ ��� ����� �������. ����� �� �� ������� ����
������������ , �� �� ��������� ���� �� �������� �� ������ ������
� �����. ����������� ����������� ��������/��������� ��� ���
������� ��� ������� ��� '������ ���������' ����� ������ �� �����
�� ���� ������� �� ���� ��� �� �������.
��� ��� ������ ���������� ������� ��������� �� ��� ������ �����
��������� �� ������ ��� ����. ����, �� ������� ������ ��
��� � �� ����� 4 ���������� ���� �� ���������� ������ ��
���������� ����� ��� ����� ����������.
����� ���������� ����� '������ ���������' �� �� ����� ��� �� ���� ��
����� ����� �� �� ����� ��� ��� ����� ��� �� �������� ���� ��
������ �� �� �������! �� ���������� ����� ��� ���� ��� ���
������ �� ������� ��� �� �������� �� �������/ ������ ���� ���
������. � ����� ��� ��� ���� ������� ������� �� ��� ���������
�� ���� ����� ��� ���������. ��� �������� ��� � ����� ��� ���
����� ����� (��� ������) ��� �� ����� �� ���������� �� ���� �����.
��� ���������! ��������, �������� �� ������ �� ��� ���� ��� ���
�� ��������� ������� ���������� (������������� ��� ����) ��
������� ���� ��� �� ���������� ���� ���� ��� �� ��� ���������
������ �� �������! � ������� ����� �� ���� ��� ��� �� ����
���� ����� ���������� ��������!
���� ��� �� ������ ������� ������ ���������, ������ ���� ��
������/ ����������� �� ��� ���� ����� ������ ���������.
������� ������ ��������� ������ �� �������� ��� �� ���������
�� ����� ����������. �� ����� ���������� ���� �������� ��� �����
���������� ����� ���� �� �������������. �� �����������
������������ ���� ��� ����� ���������� ��� �� ���������� ��
������� ��� �� ������ �� ��������. � ����� ���� ����� ����� ������
������������ �� �� BIG BANG ������������� ����� ���� (���� 20
������������� ����� ����) �� ����� ������������ ��
��������������� ������� �������� ���� ���������. ���� ���� ��
big bang ����� ��� ��� ���� ������ ��� �� �����, �� ������ ��� ��
���� ���� ����� (������, � ����� ��� ��� ����� ����!!) �� ����� ��
������� ����� ��� �� ����� ����������. ������ �� ������� ������ ���
������ �����, �������, �������� ��� ��������! �� ����� ���� ��� ���
��� ��� ������ ����! ���� �����, �����, ��� ����� �������� ����
�� ����������!
�� Big bang ��� ������� ��� � ������� �� ���� ��� ���������� ��
���� ����� ���� ���������. ������ (����;) ��������� �� �������
������� ��� ����� ���� ���� ��������� �� ���������� ��
��������� �� ���� ���, ��� ���������� ���� ���������� ����,
�����, ������, ���� ! ������� �� ���� ������ �� ��� ��
����������. ���� � ���������� ��� ����� ��� ��� ��������� �� ���
������.
� ������� ��������� �� ����������� ���� ���� ���� ��� ����������
�������������� �� ������ big bang (��������� �� �������� ����
��������� ��������� ���� ����, ���� ��� �������� ��� ������, �
������� ��������� �� �������� ���� �����������). ������ �����
���� ���������, ��� ���� �� ����� ����� ���� ��� ��� ����.
��������, �������� �� ������������/�������� ������ ����� ����!
���� � ���������� ����� �����������, ������ � ����� ��� ������ ��
��������� �� ������ ����� ���� ���������! ����� ������� �� �� ��
����������� �� �� ������������� ����� �� ������ �� ���������
��� �� ����������� ��� ��� ����. ���� � ��� ������������
������ ���������� ��� ���������������� �� 6 ��������������
������� ���� �� ����� ���� ������� ���� 6 ���� (������ �����!).
������ ������� ��������� ����� ������ ��� ��������, �� �����
��������� ��� ������� �������� ��� ��� �� �������. ��� ��� �����
������ ��� ����� ��������� (��� ��� � �������� �� �����
���������), �� ����� ��� ��� ����� ��� ���������� ��� ��������
������� �� ��� ������ ����������. ��� ��� ������ ������� �������,
��� ������������� ����������� �� ��� ��������! � ����� ���
�������� �� ������ ���, ��� ����� �������, �������� ����� ���
�������. ���� � ����� �� ������� �� �������� ���� ��
����������� ���� �� �� ���������� ��� ���� ��� ����������
������� �� ��������� ���������� �� �� ���������� ��� ��
��������� ��� ���� ���! ������ �� ���������� - �� �����������
� ���� �� ��� ���� ��� ��� �� ���� ���� (���� ����������), �
�� ��������� ��� ���� ���� ���� ���� ��� ��� �� ����� ����
(������� ���������� ������� ��������). ������ �� ������
���������� ����� ���� ����� ����� ���� �� ������������� ��
����� ����������. ��� ���� ������� ��� �� ����� ��� �� ����
���� ��� �� ����� ���� ���������! ���� ����� ����� �� ����� ���
�� �������� �� ���� ��� ����� ����������� ��� ����������������
��� ������������� ������ �� �������� ���� ���������! ��� ������
���� ����� ����� � �����, �� ������ ��� �� ���� ����� �����! ��� �
���� ���� ����� � ���� ������/������� ��� ��� �� ����� �����.
����� �������/������ ���� ����� ����� ������ �� ������� �����,
���� ��� ���� ��� ��� ���! ������ �� ������ ������� ������
������, ����� ����������, ����� ���� ���������� ��� ������ ����
��� ������ �� ������� �� ���� ������ ����, ����� ����������, �����
� ������! ��� �� �������� �� ���� ����� ��� ��� ������ ������
���� (���� ������), ������, ���� �������� � �����! � ���� �����
��� ��� ������������.
���������� ��� �������� ���������� ������ �� ��� ��� ���� ���
internet, ����� ���� �� �������� ��� ������ ������ ������
(����������������� ��� ��������� ����� ��������). � �������� ��
���� ������ ������� ����� �������, ���� ������������ ��� ������
����� ������, � ������� �������� �� ����� �������� ��� ��
����������� ��� ���� ������ ������. �� ������� ����� ���� ��
������������ �������� ��� ���������, ��� ��� ��� �� ����
��������� ���� �� ���� ���� ��� ��� ������. ������ � ���� ��� ���
���� ��������� �� ���� ������ ������� �� ��� ����������
������������, �� ����������� �������� �� ��� � ������� ��� ���
������� ��� ������������ �������, � ������� ��� � ������� ��
���� ��������� (bugs) �� ������������ �� ������ ������
����������� �� �� ��������� ����� ����� ������-���� ��� ��
������������ �� ����������� �������. ���������� �����
���������� ����������� ��������� ��� ����� ��� ��� ���������
��������� ��.
����� �������� ��� �� �������� ������ �� ���������� ��� ��������
����� ������, ��� ���� ���� �������� ��� �������� ��� ����. ��
�� ������ ��� ������ �� ������� ������ ��������� ���������
�������� �� ��� ������� ���� �� ������� �� ��������� ���������.
���� ��� ������� ��������� ��� � Microsoft, � IBM �� ������ ��
��������� ��� �� �������� ��� ���� ��� ������ ���� ��
��������� ������ �� ����!
������, ������ ���� ������ ������ �������� �� ��� ��� ���� ��
������ ��� ���� ����������� ANSI/ISO SQL. �� ������� ��� ������
�� ��������� �� ���� ��� ��� �� ����������� ��� �����
������/������ ������ ��������� �� ������ ���� ����� ������
��� ��������� �� ����������� ������. �� ��������� ����� �� ���� :
�������� �� ��� ��� ���������, �� '������ �������� ������
�����' ��� � PostgreSQL, �� Linux �� ����� ����� ��� ������� ��
�� '������� �������� ������ �����' ��� �� ����� ���� ��
��������� ��� ������������.
4. �� ����� � PostgreSQL ;
� PostgreSQL ������ 6.4 ����� ��� ����� ����, �� ��� ����� ���
������� ���� � ������� ������ ��� ����� ��� ������
�����������������-������� ����� �������� ���� ������ ��
(��������� ��� ��� ����������) �� �� ANSI SQL1998,92,89 ��� ����� ��
����������� �������� hardware ��� ���������� ��������.
������� ����� ������� �� �������� �������� ���������, �������� (patches) ��� ���������
���� ���� ��� ������ GA PostgreSQL. �������� �� �������� �� ����������� patches
������� �� ��� ������� ��� �������� ���. ���������� �� �������
������ ��� �� �������� �� patches -
��������� ���� �������� �� ��������� � ������ ��� postgresql
cd /usr/src/postgresql6.3.1
patch -p0 < patchfile
make clean
make
����� ������ �� ������ �������� �������� 'man patch'
�� ����� ��� patch ���������� ���
� PostgreSQL patches : <
ftp://ftp.postgresql.org/pub/patches>
� ������ ����� ��� � ������ ���� ��� PostgreSQL ����� ����� 100
% ������ �� ��� ANSI/ISO SQL ��� �� ����� ������ � ������ ��
������� ������ ���� ���� ����. � PostgreSQL ������ �� ��������,
�������, �������, ������������� ��� ���������� �� ������ ���
ANSI/ISO SQL. ��� �����, � ��������� ��� �� ����� �������� ����
���� PostgreSQL ��� ������ ������������ ���� ANSI/ISO SQL.
� Informix Universal server (������� �� 1997) ��������� ��
���������� ������ ��� PostgreSQL ������ � Informix ������ ���
Illustra Inc. ��� ����������� �� ��� Informix. � ���� Illustra ����
����� ��������� ���� Postgres (���������� ������ ��� PostgreSQL).
� PostgreSQL ����� ��� �������� �� ��������� ���������� ��� �����
�������� POSTGRES, ��� ������� ������ ����� ������ DBMS. �� �
PostgreSQL �������� �� ������ ������� �������� ��� ��� �������
���� �������� ��� POSTGRES, ����������� ��� ����� �������
PostQuel �� ��� ���������� �������� ��� SQL.
� ������� ��� PostgreSQL ������� �� ��� ����� �������������� ���
Internet �� ����� ���� ��������� ��� ����� ������������ ��������
��� PostgreSQL. ���������� ��� ������ ����� � Marc G. Fournier
�
[email protected]
���� � ����� ����� ������ ��� ��� ��� ������ ��� ����������
������� ��� PostgreSQL. �����, � ����� � ������� �����
�������� ����� ��� �� ��������� ��� PostgreSQL! �� ������ ���
�������� ���������� �� ��� ��� ������ ����� ������ ������
����� ��� internet.
�� �������� ��� PostgreSQL 1.01 ����� �� Andrew Yu ��� Jolly Chen.
������ ����� ���������� �� ��� �� �������, �� ����������, ���
����������� ��� ��� �������� �� �����. � ����� ������ ���
Postgres, ��' ��� ������ � PostgreSQL, ���� � ���������� �����
������� ��������, ����������, ��� �������� ��������������
�� ������ ��� �� ��� ������� �� �������� Michael Stonebraker
��� ������������ ��� ��������, ��� Berkeley.
�� ���� ����� �� ��������� ��� Berkeley ���� Postgres. ����
���������� � ������������� ��� SQL �� 1995, �� ����� ������ ��
Postgres95. �� ����� ������ ���� ��� ����� �� 1996 �� PostgreSQL.
���������� PostgreSQL ��� ������������ �� ����������� �����
��������, Web database servers��� Application data servers. �����
��� ���������, ��� ����� ����������������� ������� ����
�������� (ORDBMS).
H PostgreSQL ������ �� ���������� ����������� ���� �������� ��
��� ������������ ���� �������� ��� integer, characters, ���. -
�������� �� ������������ ��� ����� ��� ��������� ����,
����������, �������������� ���. � PostgreSQL ����� �� Solaris,
SunOS, HPUX, AIX, Linux, Irix, Digital Unix, BSDi,NetBSD, FreeBSD, SCO
unix, NEXTSTEP, Unixware ��� �� ����������� ��� Unix. � ������� ���
�� Windows 95/NT ����� �� �������.
� ������: PostgreSQL SQL RDBMS Database (������
���������� ����������������� �������� ����� ��������)
� ������ ������: 6.4
� ����������: � PostgreSQL ����� 12 �����. ����������� �� ��
1985
� ��������: ����������� ��
����������/������������/��������� ��� internet ��� �� �������� 12
�����
� PostgreSQL ��� �� ������ �������� �� ������� ��������� ����
������� ��������� ���������.
PostgreSQL ������ ���������� ����� ��������
��������� ���������� (c) �� ������������ ��� California
����� ��� �����, ��������, ��������, ��� ������� ��� �� �������� ��� ���
���������� �� ��� ����������� ����, ����� ����, ��� ����� ������ �����
��������, �� ��� �������� ��� �� ������� ���������� ����������� ���
��� ��� �� ������� �� ��������� �� ����������� �� ���� ��� �����.
�� ����� �����, ��� � �������� �� ����������� ��� �������� ����� ��������
�� �����, ������, ������, ����, � �������� ����, ���������������� �� ���
������� ������ ��� �������� ��� ��� ����� ����� ��� ���������� �� ���
����������� ���, ���� �� �� �� ����������� ��� ������� ���� ����������� ��
��� �������� ��� ������ �����.
�� ����������� ��� �������� ����� �������� ��� ��������, �����������������,
��� ��� ������������� ���� �� �����, ��� ������������ �������� ������, �� ������
�� ����� ������������ �����. �� ��������� ��� ������� ��� ���� �� ��� "�� ����"
�� �� ����������� ��� ��������� ��� ���� ��������� �� ����� ����������, �����������,
������������, � �������������.
5. �� ���� �� �� �� ;
�������� �� ��������� �� CDROM Redhat Linux, Debian Linux � ��
Slackware Linux �� ������� ��� ��� Postgresql �� ���� ������ (���
� ������� ������ ��� �� ����������) �� �� :
� Linux System Labs Web site: <
http://www.lsl.com/> 7 (U.S.
�������)
� Cheap Bytes Inc Web site: <
http://www.cheapbytes.com/> 7 (U.S.
�������)
� Debian ������� Web site : <
http://www.debian.org/vendors.html>
� ��������� PostgreSQL ���� ������ ��� 'PostgreSQL CDROM' ��
������� ���� ��� ������ ����� ��� ���������� ��� ����� ����������
�������� Unix ��� ����� ���������.
� �� CDROM ��� PostgreSQL �� �� ������ �� �� ������� Web site ���
��� : <
http://www.postgresql.org> ��� 29 (����������� �������)
������� ��� PostgreSQL ��� �� ����������:
� �������� �� ������� ��� PostgreSQL ����� �� ������������� ���
�����. ������������ �� ���������� ��� Intel-Linux �� �� �����
<
ftp://www.redhat.com/pub/contrib/i386/> postgresql-6.4.i386.rpm.
��� ����� ��� redhat 'rpm' ������ ��� ������� ��� ��� ����� ���
�� ���������� ��� ��� PostgreSQL.
� Site �� ���������� ��� Solaris, HPUX, AIX, IRIX, Linux :
<
ftp://ftp.postgresql.org/pub/bindist> �� ������������� ��� �����
��� ����������� �������, ������� ������� �� ��� site, ������ ��
����� ������� ��� ��� ��������.
� ftp site : ����� �� ���������� ��� Intel-Linux �� �� �����
<
ftp://ftp.redhat.com/pub/contrib/i386/> postgresql-6.4.i386.rpm.
��� ����� ��� redhat 'rpm' ������ ��� ������� ��� ��� ����� ���
�� ���������� ��� ��� PostgreSQL.
WWW Web sites:
� ������� Web site: <
http://www.postgresql.org/>
� ������ Web site: <
http://logical.thought.net/postgres95/>
� <
http://www.itm.tu-clausthal.de/mirrors/postgres95/>
� <
http://s2k-ftp.cs.berkeley.edu:8000/postgres95/>
� <
http://xenium.pdi.net/PostgreSQL/>
� <
http://s2k-ftp.cs.berkeley.edu:8000/postgres95/>
�� ftp sites ������������� ������� :-
� Primary FTP: <
ftp://ftp.postgresql.org/pub>
� Secondary FTP: <
ftp://ftp.chicks.net/pub/postgresql>
� <
ftp://ftp.emsi.priv.at/pub/postgres/>
� <
ftp://ftp.itm.tu-clausthal.de/pub/mirrors/postgres95>
� <
ftp://rocker.sch.bme.hu/pub/mirrors/postgreSQL>
� <
ftp://ftp.jaist.ac.jp/pub/dbms/postgres95>
� <
ftp://ftp.luga.or.at/pub/postgres95>
� <
ftp://postgres95.vnet.net:/pub/postgres95>
� <
ftp://ftpza.co.za/mirrors/postgres>
� <
ftp://sunsite.auc.dk/pub/databases/postgresql>
� <
ftp://ftp.task.gda.pl/pub/software/postgresql>
� <
ftp://xenium.pdi.net/pub/PostgreSQL>
� ������� ������ ��� PostgreSQL ����� ������ ���������� �� ��� ��
mirror sites �� sunsite unc (����� ������ 1000 sites �� ��� ���
����). ��������� ������ ��� ������� �� Red Hat Linux ��� �����
/pub/contrib/i386/postgresql.rpm .
� ��� �� ����� �� mirror sites ��������� ���
<
ftp://sunsite.unc.edu>
6. � PostgreSQL ����������� ���������� ������� ������, ����������
�� 200 Gig
� ������ �� 32-bit ����� cpu �� ����� ������� ���� �� ������� ���
����� ��������� �� 5 gig. �������� �� ������� ���� �� 30 gig �� ���
32-bit cpu ���� � ������ �� �� ����� ��� ��� ���������. ������
����������� �� ������������ �� �� ������� ��� ������ RAM (������� 2
gig ���), ����������� �� �� ������ �� ��������� ����� ��� ������
�� �� ��������� ������.
�� ���������� �� ��������������� ���������� ������� ������, ���
��������� �� ��������������� ������ �� 64-bit ��� Digital Alpha
cpu, Sun Ultra-sparc 64-bit cpu, Silicon graphics 64-bit cpu, Intel
Merced IA-64 cpu, ������ HPUX 64bit, IBM 64-bit. ������������ ���
PostgreSQL �� ��� 64-bit cpu ��� �� ������ �� ����������� ���������
������ ��� ������ queries. � ������ ��� PostgreSQL ��� �������� ��
������� ������� ��� ������ �� ����� ������ ����� ������ �� ���
PostgreSQL �� ������ �� cpu 32-bit. �� ����������� �� ����� 64-bit
����� ��� � ����������� �� ���� ������ ����� ��� ������ ��� ��
��������� ������ ������ �� ����������� �������� ������ �����,
������ ������� ������ �� ������� ������, ����������� ���
���������� ����� (RAM), ��� ����������� ��������� ���.
7. ��������� �� ������� ����������� ���� ������ �� ���� ��
�������� ��� PostgreSQL ; �� ������ Regression ��� ����
�� ������ Regression ��� ���� (src/test/regress) �������������� ���
������� ��� ����� ��� ���������� ��� �� ���������� ��� �������
���������� SQL ��� ��� ��������� ��������� ��� PostgreSQL. ��
������ ��� ���� ������� ��� ����������� SQL ���� �����������.
�� ������ �� ��������������� �� ����� �� ���������� ��� �� ��������
��� PostgreSQL, ���� �� ��������������� �� ����� �� ��������
�������. �� ����������� ������ �� ��������� ���� ��� �� ��������
regression ���������� � ���� ��� ������������� ����� ����������
�� ��� �� �������.
��� ������� ������ � ������ �� ���������� �� ����� ������
�������������� ����� ����������� �� ��� �������� �������!
����, ��� ���� �� ��������������� �� ����� �� ���������� ��� ��
������� ��������.
�������� �� ���������� ��� ���� ���� �� �������� �� �� ����������,
��� �������� �� �� �������� ��� ������� web site ��� PostgreSQL ��
�������� ��� �� ����� ������� �� ����� ��� internet. �� ������
Regression ��� ���� ������ ��� ���������� �� ������ ����
PostgreSQL ��� ������� �� ������� ������� ��� PostgreSQL ��
�������� ��������.
�� ������ Regression ��� ���� ������ �� ������� ��� ��� "����
������" ����� ������� �������� �������� ����� ��
�������������� ��� �� ������ ������. �� ��������������� ���
PostgreSQL ������������ ���������� �� ������ regression ��� ���� ����
��� ������� ��� �������� ��� ������ ���� ��� ������ �� ���������
��� ���� ��� �� ���������� ��� ���� �������.
�� ��������� ��� PostgreSQL ������������������ ��� ������ ��� ����
regression. �� �������� �� ��� ��������, ������ � �������������
��� �������������� ��� ������ ��� �������� �� ��������� �����������
�� ��� PostgreSQL. �������� �� �� ��������, ����� ���, ����� ��� ��
���������� �� ���� ��� ��� ������.
8. ����� �������� ����������� (GUI FrontEnd Tool) �� ��� Post�
greSQL
� ������� ��� PostgreSQL ������������ ��� ���������� �� Tcl/Tk, ��
���������� 'pgTcl'. � Tcl/Tk ����� ��� �������� ��� ������� �������
������� ��� ��� ��� ����� scripting �����. ���������� ��� ����
��� ������� ��� ��� ��� ������ ����� : �� NT, Win 95, Linux, OS/2
��� ��� �� �������� unix. Tcl ����� �� ����� �� 'Tool Command
Language' ��� Tk �� 'Tool Kit'. ������ ��� ����������� ����������
�������� (IDE - integrated development environment) ��� ��� Tcl/Tk
�� ������� SpecTcl. �������� �� �� �� rpm ������ ��� ������� Redhat
linux � ��� sunscript site �� ������� �������.
�������� ��� Perl ��� ����� �������������� ��� ��� ����� � ���
����������� �����, ��� ���� ��� ���������� ��� ��� �� ���������
��� ���� ��� �������� ����������. ��� ��������� ��
��������������� Perl-Tk � Perl-Qt � C++ QtEZ � C++ Lesstiff. �
������� Perl, C ��� Tk �� ������������ ��� ������� �� �����������
projects, ����������� ��� �� ��������� ����, ��� ������ ��
���������� ��� ��� ������ ��������������. �������� ��� ��
����������� �� Java ����� ��� ����. ���� ��� �� ����������� ��
����� �������� �� C++ ����� ��� ���� �� �� ����������� ��
�������� �� C. �� ����������� �� C ���������� ������ �� ��
��������� ����������� �������� �� ����������� ���� �����
��������������.
� Perl ��������������� ��� ��� ������������� �� 90 % �� internet
scripts ���� ����. ���� �� ���� ��� ��� �����, ��� "Perl", ���
���� ��� ��� �������, �� �������� ��� ��� ��� internet. ����� ��
Perl Database Interface ��� �� ������� ��� ``''
�� ������ �� ���������� �� ����� ������ ��� Perl �� ������� �� ���
Tcl/Tk ���� ���������� ������ project �� Tcl. � Tcl/TK �������
����� �� ���� linux cdrom. �������� ������ �� �� ������ ��� sites -
� Tcl/Tk <
http://www.scriptics.com>
� ����������������� extension ��� Tcl �� ���������� INCR ���
<
http://www.tcltk.com>
� Visual TCL site <
http://www.neuron.com>
� Visual TCL Redhat rpm ���
<
ftp://ftp.redhat.com/pub/contrib/i386/visualtcl*.rpm>
� <
http://sunscript.sun.com/>
� <
http://sunscript.sun.com/TclTkCore/>
� <
ftp://ftp.sunlabs.com/pub/tcl/tcl8.0a2.tar.Z>
� ������ ������: ����� ������ ������ ��� TCL/TK ����������� ����
�����.
9. �������� ��� ����������� ��������� �������� ��� PostgreSQL
(GUI IDE)
�������� �� ������� �������� �������� �� ����� �������� ��
��������������� �� ������ �� ������ ODBC/JDBC. ����� �����
�������� �� Borland C++ Builder, Borland JBuilder.
�� Vibe ����� Java ��� C++ IDE (Integrated Development Environment)
��� ������� ���� Unix ��������� ��� �� ����������� ��������
�������� ��� �������.
� ����������� ���������� ��� �� Vibe ���
<
http://www.LinuxMall.com/products/00487.html>
� �� 'QT' ����� ��� ������� �������� ������� ��� Windows95/NT
��� Unix <
http://www.troll.no> ��� �� ftp site �� ����� ��
<
ftp://ftp.troll.no>
�������� ������ �� ��������������� Borland C++ Builder, Delphi,
Borland JBuilder, PowerBuilder �� Windows95 ��� �� ��������� ��
��� PostgreSQL �� ��� ������ unix ��� ����� ODBC/JDBC.
����� ������ �� PERL Database Interface �� �� �� ������� ��� ``'' �
Perl ��� C/C++ ���������� ������ ��� �������� ������ ��� IDE.
����� �������� IDE -
����� �� CDROM ��� �������� redhat linux.
� Lesstiff Mottif Tool
<
ftp://ftp.redhat.com/pub/contrib/i386/lesstiff*.rpm>
� FreeBuilder <
ftp://ftp.redhat.com/pub/contrib/i386/free*.rpm>
� SpecTCL <
ftp://ftp.redhat.com/pub/contrib/i386/spec*.rpm>
� JccWarrior <
ftp://ftp.redhat.com/pub/contrib/i386/jcc*.rpm>
� Kanchenjunga Java RAD Tool for PostgreSQL
<
http://www.man.ac.uk/~whaley/kj/kanch.html>
� Applixware Tool <
http://www.redhat.com>
� XWPE X Windows Programming Environment
<
http://www.rpi.edu/~payned/xwpe/>
<
ftp://ftp.redhat.com/pub/contrib/i386/xwpe*.rpm>
� XWB X Windows Work Bench
<
ftp://ftp.redhat.com/pub/contrib/i386/xwb*.rpm>
� NEdit <
ftp://ftp.redhat.com/pub/contrib/i386/nedit*.rpm>
10. ������ ���������� �� ��� PostgreSQL
10.1. ODBC Drivers ��� ��� PostgreSQL
ODBC ����� ������� �� 'Open DataBase Connectivity', ��� ��������
����� ��� ������� �� ���������� �� ������� ������ ��
����������� ������. �� �������� �� ��� ������ ��������������
ODBC drivers, �������� ��� �� ������ �� ������� ������ ���
PostgreSQL, Oracle, Sybase, Informix ���.
� �� PostODBC ��� ����������� ��� ��� �������. ����� �� �������
web site <
http://www.postgresql.org>. ���������������� ��� CDROM
��� PostgreSQL.
� <
http://www.openlinksw.com> � Open Link Software Corporation
������ ODBC ��� PostgreSQL ��� ����� ������. � Open Link �����
������ ����� ODBC (������������ ����� ������) - ��������� ��.
� Insight ODBC ��� ��� PostgreSQL
<
http://www.insightdist.com/psqlodbc> ��� ����� �� ������� site
�� PostODBC.
������ ������ ���� �� ���������� FreeODBC Pack Package. ��� ������
�' �� ������ ��� PostgreSQL, ��� �������� �� ���������.
� <
http://www.ids.net/~bjepson/freeODBC/> ���� ����� � ����� ������
��� ODBC.
10.2. UDBC Drivers ��� ��� PostgreSQL
�� UDBC ����� ��� ������� ������ ODBC ���������� �� �����������
����� (driver managers) ��� ���������� DLL, ��������������� ��� ��
��������� ���������� �������� ���������� �� ���� ���� ����
��������.
� <
http://www.openlinksw.com>� �������� Open Link Software ���� UDBC
��� ��� PostgreSQL ��� ����� ������. � Open Link ����� ������
����� UDBC (������������ ����� ������) - ��������� ��.
10.3. JDBC Drivers ��� ��� PostgreSQL
JDBC ����� ������� �� 'Java DataBase Connectivity'. � Java �����
��� ����� �������������� ���������� �������� �� ��������� ��
��� Sun Microsystems. �� ��������������� Java ������������ ��
����� �������� ����� �������� �������������� JDBC ��� ��
��������� �� ������������� ����� ����� ��� � PostgreSQL,
Oracle, informix, ���. �� ������ ������� �� Java �������� �� ������
��� ������ JDBC ��� PostgreSQL �� �� ������� sites:
� ����� JDBC �������������� ��� ��� ������� ��� PostgreSQL.
� <
http://www.demon.co.uk/finder/postgres/index.html> ��������� Java
(��� Sun) �� PostgreSQL
� <
ftp://ftp.ai.mit.edu/people/rst/rst-jdbc.tar.gz>
� <
http://www.openlinksw.com> � �������� Open Link Software ����
JDBC ��� PostgreSQL ��� ����� ������. � Open Link ����� ������
����� JDBC (������������ ����� ������) - ��������� ��.
� JDBC UK site <
http://www.retep.org.uk/postgres>
� JDBC FAQ site <
http://eagle.eku.edu/tools/jdbc/faq.html>
�� JDBC home, guide ��� FAQ ���������� ��� -
� JDBC HOME <
http://splash.javasoft.com/jdbc>
� JDBC guide
<
http://www.javasoft.com/products/jdk/1.1/docs/guide/jdbc>
� JDBC FAQ <
http://javanese.yoyoweb.com/JDBC/FAQ.txt>
10.4. Java ��� PostgreSQL
�� ��������������� Java ������ �� ������� �� ������� sites ���
������� ��� ��� PostgreSQL.
� <
ftp://ftp.redhat.com/pub/contrib/i386> ��� ����� �� postgresql-
jdbc-*.rpm
� <
http://www.blackdown.org>
11. Perl Database Interface (DBI) Driver ��� PostgreSQL
11.1. ��������� Perl 5 �� PostgreSQL
PERL ����� ������� �� 'Practical Extraction ��� Report Language'.
� Perl ����� ��������� ���� �� ���� ��������� ��� �������
hardware. �������� �� �������������� Perl �� Windows95/NT, ��� �� Unix
(Solaris, HPUX, AIX, Linux, Irix, SCO ���.), �� mainframe MVS, desktop
OS/2, OS/400, Amdahl UTS ��� ����� ����. � Perl ����� ����� ��� ��
����� �� �������/������ ������ ���������� �������� ��� �����!!
����, ��� ���������� �� ����� ��� perl �� ����� �� ����� ��� ���
��������������� ����������.
�������� �� ����������� ��� �������� ���� ������ ��� ��������������
�� Perl.
� ��������� Perl �� PostgreSQL �������������� ��� ������� ���
PostgreSQL. �������� ���� �������� src/pgsql_perl5.
� �� Email ��� ���������� ������ �� ��� Pgsql_perl5 :
[email protected]
� ���� ���� ����� �� -
<
ftp://ftp.kciLink.com/pub/PostgresPerl-1.3.tar.gz>
� Perl Home page: <
http://www.perl.com/perl/index.html>
� �������� ��� Perl, ����� ��� ����� Tutorial ��� :
<
http://reference.perl.com/>
� �� Perl FAQ ����� ��� :
<
http://www.yahoo.com/Computers_and_Internet/Programming_Languages/Perl/>
� ����� ���������� ��� Perl, Perl-Qt :
<
ftp://ftp.redhat.com/pub/contrib/i386> ��� ����� ��� ��
PerlQt-1.06-1.i386.rpm
� ����� ���������� ��� Perl, Perl-Qt :
<
http://www.accessone.com/~jql/perlqt.html>
� ����� ���������� ��� Perl, Perl-XForms :
<
ftp://ftp.redhat.com/pub/contrib/i386> ��� ����� ��� �� �����
Xforms4Perl-0.8.4-1.i386.rpm
� ����� ���������� ��� Perl, Perl-Tk :
<
ftp://ftp.redhat.com/pub/contrib/i386>
� Perl GUIkits : <
http://reference.perl.com/query.cgi?ui>
� Perl Database Interfaces :
<
http://reference.perl.com/query.cgi?database>
� ���������� �� Perl �� "C" : <
http://www.perl.com/CPAN-
local/modules/by-module/B/> ��� ����� ��� �� Compiler-a3.tar.gz
� ���������� �� Perl �� ����� Bourne :
<
http://www.perl.com/CPAN/authors/id/MERLYN/sh2perl-0.02.tar.gz>
� �� awk �� perl a2p ��� �� sed �� perl s2p �������������� �� ��
������� ��� PERl.
� ����� ������ �� newsgroups ��� PERL ��� comp.lang.perl.*
11.2. Perl Database Interface DBI
11.2.1. �� ���� �� DBI ;
�� ������� ����� �������� �� ��� �������� ������ �� Perl DBI.
To Perl Database Interface (DBI) ����� ��� ��������������� interface
(API) �� Perl ��� ��������� �� ������ ��������. �� �������������
�� Perl DBI API ������ ��� ����� �� �������, ���������� ���
�������� �� ������ ��� ������� interface ����� ��������
���������� �� ��� ���������� ���� �� ���������������. ��
���������� ��� �� �� ����� DBI ������� �� �� ������� 'DBI FAQ' ��
����� ��� ����� � Alligator Descartes �� ������������� �� ��� �����
��.
� �������� �� ������������� �� ��� Alligator Descartes Hermetica ���
[email protected]
11.2.2. ����� DBI ��� ��� PostgreSQL - DBD-Pg-0.89
��������� �� DBD-Pg-0.89.tar.gz �� ��
� DBD-Pg-0.89 : <
http://www.perl.com/CPAN/modules/by-module/DBD/>
� Comprehensive Perl Archive Network CPAN <
http://www.perl.com/CPAN>
� ����� ����� DBI ��� ������� DBI module
<
http://www.hermetica.com/technologia/perl/DBI>
� ���������� ��� �� DBI �� ������ ��� <
http://www.fugue.com/dbi/>
� ������� ftp site <
ftp://ftp.demon.co.uk/pub/perl/db>
� ������ DBI link <
http://www-ccs.cs.umass.edu/db.html>
� ������ DBI link <
http://www.odmg.org/odmg93/updates_dbarry.html>
� ������ DBI link <
http://www.jcc.com/sql_stnd.html>
� � ���� PostgreSQL <
http://www.postgresql.org>
���������:
� - �� �������, �� ��������� ��� �� ������������� ��� Perl 5
(��������� ��� 5.002)
� - �� �������, �� ��������� ��� �� ������������� �� module DBI
(��������� �� 0.89)
� - �� �������, �� ��������� ��� �� ������������� ��� PostgreSQL
(��������� ��� 6.2)
11.2.3. ������ ���������� ��� �� DBI
������� ������� �� ���� ��� ��� ������� ���� ���
�
[email protected]
������������ ������� ��� ����� ��� ������ perl -v, ��� perl -V, ���
������ ��� PostgreSQL, ��� ������ �� DBD-Pg, ��� ��� ������ �� DBI
���� ������ ����.
11.2.4. �� ����� �� DBI, DBperl, Oraperl ��� *perl;
��� ���� ��� � Tim Bunce, � ��������� ��� �������� �� DBI:
``�� DBI ����� ��� ��������������� interface (API) �� Perl ���
��������� �� ��������� �� ������ ��������. �� ������������� �� DBI
API ������ ��� ����� �� �������, ���������� ��� �������� ��
������ ��� ������� interface ����� �������� ���������� �� ���
���������� ���� �� ���������������.''
�� ���� ����, �� DBI interface ��������� ���� ������� �� ���
������ ������� �� ��������� ���� �����. ����, �� �������� ���
Oracle, Informix, mSQL, Sybase � ����������� ���� ����, �� ����������
�� �������� ��� ����������� ��������� �� ������� 3GL. �� API
�� �������� �� �� DBI �� ������ �� ���� ��� ���� �����.
��� ������� ����������� ����� � �������� �� ��������� �� �� ������
���������� ��� ��� �� ���� perl script, �, ������ ��
��������� �������� �� ��� ���� Oracle ��� �� �� �������� �� ��� ����
Informix ���� ��� ���� ��������. �� ������� DBI ��� ��������� �� ��
������ �� ���� ��� ����.
DBperl ����� �� ���� ����� ��� ��� ����������� �� interface.
��������������� ����� ��� �� ��������� �� perl4 modules ���
��������� �� ������, ���, oraperl, isqlperl, ingperl ��� �����. ����
�� interfaces ��� ���� ������� API ��� ������ ��� ��������������.
�� ��� ����� �� DBperl modules, �� ��������� DBI ����� ��� ���
���������� �����������. �������� ������ �� ��� ���� DBI �� ������
�� ���������� ��� ����� ������������ dbi-users .
����� Module ���������� ���� �������� DBI
------------ ----------------- ---------- ---
Sybperl Sybase Michael Peppler DBD::Sybase
<
[email protected]>
http://www.mbay.net/~mpeppler
Oraperl Oracle 6 & 7 Kevin Stock DBD::Oracle
<
[email protected]>
Ingperl Ingres Tim Bunce & DBD::Ingres
Ted Lemon
<
[email protected]>
Interperl Interbase Buzz Moschetti DBD::Interbase
<
[email protected]>
Uniperl Unify 5.0 Rick Wargo -
<
[email protected]>
Pgperl Postgres Igor Metz DBD::Pg
<
[email protected]>
Btreeperl NDBM John Conover SDBM;
<
[email protected]>
Ctreeperl C-Tree John Conover -
<
[email protected]>
Cisamperl Informix C-ISAM Mathias Koerber -
<
[email protected]>
Duaperl X.500 Directory Eric Douglas -
User Agent
����� ���, ������ DBI modules ��� ������� ����������� DBperl.
����, � DBD::Oracle ������ �� ��� ������� ����������� Oraperl, ��
��� ��������� �� ������� ����������� oraperl scripts ����� �������. ��
������� ����������� ��������� ��� ������� �� oraperl API �� �������
DBI ��� ��� ������� ��� �� DBI switch.
�� ���� ������� �� ���������� ��� �� ������� ����������� :
Module ������� ����������� ���������
------ --------------------- ------
DBD::Oracle Oraperl �����������
DBD::Informix Isqlperl �� �������
DBD::Sybase Sybperl ������; (���������� ��������� )
DBD::mSQL Msqlperl ������� ����������� �� ���
DBD::mSQL-0.61
� ���������� Msqlperl ����� ��� ������ ��������. �� Msqlperl �����
���� ����� perl5 ��� mSQL ������, ���� �� ���������� �� ���
����������� �� DBI. � ����� �������������� ���� ��� ���� ��
DBD::mSQL. �������� �� ���������� ��� Msqlperl �� �� CPAN �� ��:
� <
http://www.perl.com/cgi-bin/cpan_mod?module=Msqlperl>
11.2.5. ����������� DBI
������ ����� ����� ���������� ��� DBI.
� ����������� DBI
<
http://www.hermetica.com/technologia/perl/DBI/doc/dbispec>
������ �� ����������� ���������� �� �� �� link, �� ����
������� (Draft) DBI �����������, �� �� ������� ������� ����������
���� � ����� �������� ������� ���� ��� ������ interface, ��� ��
������ ��������� DBperl ����������� �� ��� ������ ��������� ��
����� DBI interface.
�� �������� ������� ������ �� ��������� ��� ��� ��� �� �������
��������� ��� �� �� �������������� �� ��������� ��������������, �
�� ����� �� ����������� ������. ����� ���, ��������� ��� ����
������� ���� �������.
��������� POD �� PODs ����� �������� ���������� �� ������������
����� �� ����������� perl �� ���������� ��� ����� ``in place'',
��������� ��� ������� ������� ��� ��������������� ��� �������
modules. �� POD ��� DBI ��� drivers ������� ��� ��� ����������
��������, ��� � ��������� ��� ��� �� modules ������ �� ��������� ��
��� ������� �������.
����������� DBI �� POD ��� ����������� DBI ������ �� ��������� ��
��� ������:
perldoc DBI
Oraperl �� ������� �� ������� ����������� Oraperl �� ������ ����
�� ��� DBD::Oracle, ������ �� ������� �� �������� ��� �� �� ��
�������������� �� �� Oraperl ��������������:
perldoc Oraperl
��� �� ������� ��� ���������� �������� ��� ������ ������� ��������
oraperl, �� ������� �� ��� Kevin Stock ��� perl4. �� API ���
oraperl ���������� ��� ����������� ���� �����.
DBD::mSQL �� ������� �� DBD::mSQL module ������ �� �������� ���
������� private functions ��� ���������� ��� �� ����� (driver)
��������������:
perldoc DBD::mSQL
���� ���������� �������� (FAQ)
To �������, Frequently Asked Questions ����� ������ ��������� ��
��������� �� POD ! �������� �� �� ��������� ��� ��� ��� ������,
��������������:
perldoc DBI::FAQ
��� ������ �� ����� ��������� ��� ������� �� ��� �����
����������� ����� � �����, ��� Internet.
�� POD ������ ��������� ��� �� ������ POD, ��� ��� ��� ��������
�� POD ���������, ������ �� ��������� ��������:
perldoc perlpod
������� �� ��� ������������ �� Tk module ��� �� ������������ ��
����� �� ������ ���������� ���� POD ��������� ���������� �� Tk ��
������� tkpod, ��� ��������� POD �� ��� ������ ��� ��������� ����.
``�������������'', ``���������'' ��� ������������ ������ ��� �����
�� ������������� ``�������������'' �� ������� ���� ������
������������ ��� DBI.
� <
http://www.hermetica.com/technologia/perl/DBI/tidbits>
``DBI -- The perl5 Database Interface'' ��� ����� ��� ����� �� ���
Alligator Descartes ��� ��� Tim Bunce ��� �� ���� �� DBI.
����������� ��� ���� 5 �� ``The Perl Journal''. ����� ����������
���. ��������� ��� �������� �� ��������. �� �� �� ����, ��������
��� �� ���! ``The Perl Journal''s WWW site is:
� <
http://www.tpj.com>
``DBperl'' ��� �� �����, �� ����� ����������� ���� ������ ��������
�� 1996 ``Dr. Dobbs Journal'' ��������� �� DBperl.
``The Perl5 Database Interface'' ��� ����� ��� ������ �������� ��
��� Alligator Descartes ��� ������� �� ��� O'Reilly ��� Associates.
������ ������������ ������ ����� ������ ������������ ��� DBI ��
������������ � Ted Lemon. �� ���� �������� �� �������� ��� ��
���������� �� �� World Wide Web ��� ������� :
� ������ ������������ <
http://www.fugue.com/dbi>
�� ������ ���� ������ ������ �� �������� �� ������� �����:
dbi-announce ���� � ����� ������������ ��� ��� �����������. �� ���
�������� �� ��������������� ��� ����� ��� ������� WWW �������,
��������� ��� ����� �� ��� ������ ����:
� Email:
[email protected]
�� ������� ��� ��� (body) �� �������� 'subscribe'
dbi-dev � ����� ��� ������ �� ����� �� ��� ��������������� ��
����� �������, �� ������� ����� ��� ������� ��� �� �� DBI
interface, API ��� driver. �� ��� �������� �� ��������������� ���
����� ��� ������� WWW �������, ��������� ��� ����� �� ��� ������
����:
� Email:
[email protected]
�� ������� ��� ��� (body) �� �������� 'subscribe'
dbi-users ���� � ����� ������������ ����� ��� ����� ������
�������� �� ��������������� ��� ������� �������, �������
���������� ��� ������� �����������. �� ��� �������� ��
��������������� ��� ����� ��� ������� WWW �������, ��������� ���
����� �� ��� ������ ����:
� Email:
[email protected]
�� ������� ��� ��� (body) �� �������� 'subscribe'
�������/����� �� ����� ������������
� ����������� ����� ����� ������������
<
http://outside.organic.com/mail-archives/dbi-users/>
� ������ ����� ����� ������������ <
http://www.rosat.mpe-
garching.mpg.de/mailing-lists/PerlDB-Interest>
11.2.6. ���������� ������������ � ����� "����� ���� ���������!"
�� ���� core dump, ��������� �� module Devel::CoreStack ��� ��
������������ ��� stack trace �� �� core dump. �� Devel::CoreStack
��������� ��� CPAN ���:
� <
http://www.perl.com/cgi-bin/cpan_mod?module=Devel::CoreStack>
������� Email ��� ����� dbi-users �� stack trace, ��� ������ ��
modules, ��� perl, �� ���� �� ������, ��� ������ �� ����������
��������� ��� ������ ����� ������� ����������. ���� �����������
���������� ��������, ��� ���������� �� �������� ��
��������������� �� ����������. �� �� ��� ������� ������, ��� ���
���������� ������ ��� �� ����.
-->
11.2.7. ������������� �� DBI ��� �� �������� Windows 95 / NT ;
� ������� �� DBI ��� DBD::Oracle Win32 ����� ��� ��� ������� �����
�� DBI, ����, �� ���������� ������ �� DBI ��������� �� 0.81 ��
������ �� ������ ��� ����. �������� �� ���� ������� ���� ������
Microsoft Access ��� SQL-Server �� �� DBI ��� ODBC. ���� �� ��
DBI-0.79 (��� ���������) ������� ��� ���������� DBI '�������
�����������' ��� �� module Win32::ODBC. ���������� DBI::W32ODBC. ��
����������� �� module Win32::ODBC.
� Win32 DBI <
http://www.hermetica.com/technologia/perl/DBI/win32>
� Win32 ODBC <
http://www.roth.net>
11.2.8. ��; �� ����� �� DBM; ��� ����� �� ������ �� ���������� ��
DBI ��� ����
�� UNIX ��������� �� ��� ��� �� ����� ``������'' ���������� ��
������� �����, ������ ��� ������ dbm. �� dbm ��� ��������� ��
���������� �������� �� �����, ��� �� �������� �� �������� �������
�������, �� ��� ��� ������ �������������.
������� ����� (File Locking)
�� �������� dbm ��� ������� ��������� ����� ��������� ���
������� �����, ��� ����� �������� ��� �� ������ ���������� ��
��������� �� �������� ������� [��� ����].
���������� ����� �������� (Arbitrary Data Structures)
�� �������� dbm ��������� ��� ��� ������� ���� ��������: �������
�������-���� (key-value pairs). ���� � ���� ������ �� ����� ���
������ �����������, ��� ��� [ C ] struct, ���� �� ������ ������ ��
����� �������. ��� ���� ������� ���������� ��� ���������� ��
�������� dbm.
�������, �� �������� dbm ���� ����� ������� ��� ������� �� ����
����� �������� ��� ������������� ����, ��� ��� ����� �������,
����� ��� ���������� ���� ��������. �� modules ��� Perl ��� ���
������� �� �������� dbm ��� ��������� ��� ���� ������� ���,
��� �� module AnyDBM_File.
�����������, �� DBM ����� ��� ���������������� ��� ��� (���� �����)
read-only ������, � ����� ��� ���� ����� ��������. �������, ���
���������� ���� ��� ���������� ����� ��������, ����� ��� ��� ��
��������� ��� �� �������� transactional locking, �������� ����
������� �� �������������� DBI.
11.2.9. ������������� < �� ���� ������������� > ��� DBI;
������� ��� �� ������������� �� �������� ����� ��� ��-�������,
��������� �� ������ ����������� ����, �������������, ��� �
�������� ����� ���.
�� DBI ��������� ��� ����� API �� �� ������ ��� ��� �����������
������, ��� ��� ������ ����� �������� ������������� ��� ������
����������� ���� �������� (database-specific functionality).
�������, �� �������� �� ����� ������, �� �� �������, ��
����������� hooks ���� ������������� ����������/��������������
������� ����� �������� ��� ��� ����� func �� �������� ��� DBI
API. ���� ��������� scripts �� ������ �� �������� �� �
������������� �� �������� ��� �� ����� func ����� ������� ��
��������� �� ����� ������.
11.2.10. ��������� ����� �� DBI ��� ������������� �� CGI;
�� ��� ����, ���! �� DBI ����� ���������� ������� ��� �������������
�� CGI! ���� �������������, �� ������� �� � ��� � ��������������
�� CGI ����� ��� �� ��� ����� ������� �� DBI.
To DBI ����� ��� �������� ���� ��������������� CGI �� ������� ���
������ �� ��� WWW-fronted, ������ �� ������ ���� ������� ��
�������� �� ������ �� ��������� �������� �������� ��������.
������, ���� �������� �� ��� site ��� ���������� ������ �� ��� �
server ��� ����� �������� ������ �� ������������, �� DBI ����� ��
�������� ����������� �� server ��� ����� �������� ��� ����������,
����� ������� ��� cgi scripts.
11.2.11. �� ������ ������� ����� ������� �� DBD Oracle ���
CGI;
� Apache httpd �������� ��� �������� (pool) �� ������ �� (httpd
children) ��� �� ��������� ��� �������� �� clients.
�������������� �� module �� Apache mod_perl �� Doug MacEachern, �
���������� ��� perl (perl interpreter) ����������� ��� ������ ��
httpd. �� CGI, DBI, ��� �� ������� ��������� ��� modules ������ ��
������� ���� ��� �������� ���� ������ (child). ���� �� modules ��
�� ���������� ��� ��� ������� ��� �����.
��� ����������� ���������� ������ �� ��� Apache, ����� �� Apache
Project's WWW site:
� Apache Project WWW site <
http://www.apache.org>
� Mod_perl module <
http://www.perl.com/cgi-
bin/cpan_mod?module=mod_perl>
11.2.12. �� ������� ������ (persistent) �������� ����� DBI ���
CGI
�������������� �� module Apache::DBI module �� Edmund Mergl, ��
logins ��� ���� �������� ������������ ��� ��������������� �� ���
httpd child. �� � ������� ��� ��������� �� ���� ��� ������ ���
����� ��������, � ������ ������ �� ������� �� ���� child. ����
������, �� �������� ���� ������ �������� ��� ������ �� �����������
����� ���������� ������ �� httpd.
�������� �� ���������� �� Apache::DBI �� �� CPAN ���:
� <
http://www.perl.com/cgi-bin/cpan_mod?module=Apache::DBI>
11.2.13. �� ���� �� ��� httpd, ���������!'' �����; ``���� ����
��� perl script �� ��� ������ �������, ������, ���� ����
������, ���� ���� ��� ��� ����� ������ �� �������� �� ����� ��� �
������� �� ��� ����� ������� �� script ��� ������ ������ ��� ����
��������� ��� ���������� �� �������������, ���� �������� ��
DBD::Oracle, ���������� ��� $ORACLE_HOME, $ORACLE_SID � TWO_TASK.
� ��������� httpd ����� ����� ��� �� �� ������ nobody, ������ ��
�������� ��� ��� ��� ��������� �� ���������� ��. ����������� script
���������� �� ������ ��� �� ���� ��� ��������� �� ������
������.
��� �� ����� �� �� �������, ����� �� ���������� ��� �� ���� ��� ��
��� ����� BEGIN ( ) ���� ��� �� script ���. ���� �� �������� ��
�������.
�������, �� ������ �� �������� �� logfile �� �� httpd ���� ��� ��
���������, ��� ��� �� ``Idiot's Guide To Solving Perl / CGI
Problems'' ��� ``Perl CGI Programming FAQ'' ��� �����������
����������. ����� ������� �� ������� �� ��� ���� �� �� DBI.
�������� ��� �� �� ��� ������� ����������!
� �� ``Idiot's Guide To Solving Perl / CGI Problems'' �� �� ������
���: <
http://www.perl.com/perl/faq/index.html>
11.2.14. ���� �� ��� multi-threading �� �� DBI;
���� ��� ���������� ��� �� FAQ, ���. � perl ��� �����������
multi-threading. �������, �� multi-threading ���������� �� �����
����� �� ����� ��� �������� ��� perl ���� ������ 5.005, �� ��������
��� �� DBI �� ������ �� ����������� multi-threading ������ ������
���� ��' ��.
��� �� ����� ������������ ����� OCI ��� ��� Oracle �� ��� multi-
threaded ������� SELECT, ��������� ���:
� <
http://www.hermetica.com/technologia/oracle/oci/orathreads.tar.gz>
11.2.15. �� ���� �� ����� stored procedures �� �� DBI;
�� ��������� ��� ���� ����������� ��� stored procedure ���� ��
������ ����, �, ���� Oracle, �������� �� ��������������� �� $dbh->do
��� �� ���������� ����� �� ���������� (procedure). ��� ����������,
$dbh->do( "BEGIN someProcedure END" );
11.2.16. �� ���� �� ��� ��� ����� �� ������������ �� ��� stored
procedures �� �� DBI;
��������, ���, �� ������ ����� ��� ����!
$sth = $dbh->prepare( "BEGIN foo(:1, :2, :3); END;" );
$sth->bind_param(1, $a);
$sth->bind_param_inout(2, \$path, 2000);
$sth->bind_param_inout(3, \$success, 2000);
$sth->execute;
11.2.17. �� ���� �� ��������� � �� ��������� ��� ���� ��������
�� �� DBI;
� ��������� ��� ������� ���� ����� ����� ������� ��� ��������� ���
�� �������������� ������������� �� �� DBI. ��� ����������, � Oracle
��� ����������� ��� ��� ������ ��� �������� ��� �����! ���� Oracle
������, � ����������� ��� ����� �������� (database server) �����
��������� � ����, �� ���� mSQL, � ��������� �� ���������� (server
process) ����� ��� ���� ����� �� ��� ����������� ����� ���� ��
���. �� ������� ����� ��� ������ ��� �� �� ������.
��' �� �� ���, ������� ������ ����������� ��������� ��� �������
����� ��� �� private func methods. ����� ��� ��������� �� �����
�� �������������� ��� �� ����� �� ����������� �� �� �������.
11.2.18. �� ������������ �� DBI ��� ����� NULL ;
�� ����� NULL ��� DBI ��������������� ��� � ���� undef. �� �����
NULL ������ ��������� ���� ������ �� NULL, ��� ����������:
$rv =
$dbh->do( "INSERT INTO table VALUES( NULL )" );
���� ���� �������, �� ����� NULL �� ������ �� �������� �� ���
undef. ��� ����� ������� ��� ���� ��� ������.
11.2.19. �� ����� ���� �� ������� func (func methods);
� ������� func �������� ��� DBI ��� �� ������ ����� ���
������������� ��������� �� �� ����, �, � �������� ��
������������ � �� ��������� ������. �� �� �������� ���� ���
������ �� ��������� �� ��� ������ ����� ���, ��� ����������,
��� �� �������� �� ������ createDatabase �� ������� ��� ���������, ��
������:
$rv =
$dbh->func( 'argument', 'createDatabase' );
���� ��������� �������� �� ������ �������� ��� �� ������� func
��� ����� ����������� ����� ���������� �����.
11.2.20. �������� ���������� ��� ���������
�� Interface ��� Perl5 ��� ������ ����� ��� ����� ��������. ������
����� ��� ������� ������������ ������.
�������, ������� ���������� ������ ���� ������ ���������� ����
����������� ��������� �� DBI.
Perl Clinic : � Perl Clinic ������ �� ������� ������� ��� ��������
���������� �� Perl, DBI, DBD::Oracle ��� Oraperl. ���������� ��������
�� ��� �������� ���� ����� ������ � Tim Bunce, � �������� ��
DBI. ��� ����������� ��������� ������ �� ��� ��������� ���, �����
�� :
� <
http://www.perl.co.uk/tpc>
12. �������� ���������� ��� PostgreSQL
12.1. PGACCESS - ��� ����� �������� ��� �� ��������� ��� Post�
greSQL
�� PgAccess ����� ��� Tcl/Tk interface ��� ��� PostgreSQL.
���������������� ��� ��� ������� ��� PostgreSQL. ����� ��� ����� ��
�� �� web site ��� ������ ������
� <
http://www.flex.ro/pgaccess>
� �� ���� ����������� ����, ������ ��� �������, �� ��������� ��
�������� e-mail ��� :
[email protected]
�������������� �� PgAccess
������� �� PgAccess : ������� ������� , ��������� ������ (table
builder) , ������� ������ (�������) (table(query) view),
��������� ������� ������ (visual query builder).
�������
� - ������� ������, ������� 200 ������� (������� �� �� ����
preferences)
� - ������ ������� ������, ��������� ��� ������ ������ (������� ���
���� �� ������ �� ��� ���� ���������� �� ������)
� - text wrap ��� ����� - ��������� ��� �������� ���� ������
� - import/export �� �������� ����� (SDF,CSV)
� - ��������� �������������� (���� ��� ������ ��� price>3.14)
� - ��������� ���������� (���� ����������� ��(��) ����� ����
���������)
� - editing in place
� - ��������� ������� ��� ������� ������ (table generator
assistant)
� - ���������� ��������� ������� �����
�������� (Queries)
� - ���������, �������� ��� ��������� "�������� �� ��������� �
�������"
� - ��������� �������� ��� views
� - ������� ��������
� - ������� ������������ ������� ��� select
� - ������� ��� ������ ������� �������
� - ����� ������� ������� �� ��������� drag & drop. ��� ����
�� ���� ����� ������ �� Tcl/Tk plugin ��� �� Netscape Navigator,
�������� �� �� ����� �� ������ ������� ��
Sequences
� - ��������� sequences, ������� ��� ����� ��� ����������
� - ���������, ������ ��� ������� ��������� �� ����� SQL
����������� �����������
� - �������� ������ (�������� ��� �����, ������ �������, ���.)
� - ��������� ���������
� - ��������� report
� - ����� scripting
�� ���� ����������� ����, ������ ��� �������, �� ��������� ��
�������� e-mail ��� :
�
[email protected]
����������� ���������� ��� �� ���������� libgtcl
�� ����������� ������ �� ������� ���� ����� �� ���������� ����������
PostgreSQL �� Tcl ��� ��� Tcl/Tk 'load'-able module. ����������
libpgtcl ��� � ������� ������ ��� ��������� ���� �������� ���
PostgreSQL /src/interfaces/libpgtcl. �� ����������� ���������, ���
���������� libpgtcl �� �� ������ �� ������� �� Tcl/Tk. ��� �����
��������� ������ �� ��� ���� PostgreSQL loadable object �����,
������ � libpgtcl ����� ��� ������ �� object �����. ��� �� Linux,
���������� libpgtcl.so. �������� �� ���������� �� �� ��� ������ ���
�������������� ��� �������� Linux i386. ���� ��������� ��
libpgtcl.so ���� �������� ���������� �� ��������� (/usr/lib)���
���������. ��� ��� ����� �� ��������� �� ��� ������ ����� ��
������ �� ������� �� ������ ��� libpgtcl.so ��� �� �������� ��
pgaccess.tcl ��� �� wish, ���� �� pgwish (� wishpg) �� �� wish �� ��
����� ��� ����� link �� �� ���������� libpgtcl.
12.2. Windows Interactive Query Tool ��� PostgreSQL (WISQL � MPSQL)
� MPSQL ������ ���� ������� ��� ����� SQL interface ��� ���
PostgresSQL. � MPSQL ����� ������� �� �� SQL Worksheet ��� Oracle
��� �� �������� ������� �� Microsoft SQL Server WISQL. ���� �����
����� interface ��� ������� ������. ������ �������� �� ������ cut
��� paste ��� ��� ��� ���� ����� �������������� �� �������� ���
������������.
� <
http://www.troubador.com/~keidav/index.html>
� Email:
[email protected]
� <
http://www.ucolick.org/~de/> ��� ����� tcl_syb/wisql.html
� <
http://www.troubador.com/~keidav/index.html>
� Email:
[email protected]
12.3. Interactive Query Tool(ISQL) ��� ��� PostgreSQL - ����������
PSQL
�� ISQL ����� ��� ��������� �� Character command line. ��������������
��� �������, ��� ������� PSQL. ������� ��� �� �� ISQL ��� Sybase, ���
�� SQLplus ��� Oracle. ��� unix prompt ���� ��� ������ 'psql' � �����
�� ��� ������ �� psql> prompt.
������� \h ��� �� ����� �� ������� �� ������.
��� ����� ��� ������ ��� ����� ��� �����. �������� �� ����
������� �� �� ��� �� scripts �� �����.
12.4. MPMGR - �������� ���������� ����� ��� PostgresSQL
�� MPMGR ������ ��� ����� interface ���������� ��� PostgresSQL. ��
�� ������ ���
� <www.mutinybaysoftware.com/>
� Email:
[email protected]
� <
http://www.troubador.com/~keidav/index.html>
� Email:
[email protected]
� <
http://www.ucolick.org/~de> in file tcl_syb/wisql.html
� WISQL ��� ��� PostgreSQL <
http://www.ucolick.org/~de/Tcl/pictures>
� Email:
[email protected]
13. ���������� �������� ����� PostgreSQL �� ��� ����
�������� �� ���������� �� �����-cpu ��� �� ��������� �� ��� ����
��� �� ��������������� �� ������� ��� �� ��������� �� host. ���
����������� ���� ��� �� ���������� ������ �����, ����������� ���
�������� (������������� ������ 100 �� 500 US ������� ��� ���) ���
�������� ������ �� ��� �����������.
�������������� ��� ��� ������, �������� �� ���������� ������
PostgreSQL servers (��� �������, �����, �������), Web servers, ftp
servers, Intranet servers, Mail servers, News servers �� ��� ��� ���
���. � �������� ������ �� �������������� ������ ��� ����� ��
Windows 95/NT � OS/2.
����� ��� ����� ��� ������� sites:
� ��������� ����������� �� ��� DataComm Warehouse Inc, �� 24���
����, ��� ��� ��������, ��� 1-800-328-2261. ������ ���� ���
����� �/� <
http://www.warehouse.com>. �� 4-��� KVM switch
(PS/2) �������� �� ��� $89.99. Part No. DDS1354
� Network Technologies Inc
<
http://www.networktechinc.com/servswt.html> (120 �������/PC 8
ports) �� ����� ��� ������ ��� 'Server Switches' ��� 'switches
��� ��� Video '
� Scene Double Inc, ������
<
http://www.scene.demon.co.uk/qswitch.htm>
� Cybex corporation <
http://www.cybex.com>
� Raritan Inc <
http://www.raritan.com>
� RealStar Solutions Inc <
http://www.real-star.com/kvm.htm>
� Belkin Inc <
http://www.belkin.com>
� Better Box Communications Ltd.
<
http://www.betterbox.com/info.html>
� ��������� ��� ����������� ������ hardware ��� ������� �� "Server
Switch" ���� ��� ��� "KVM Auto Switches".
����� ��� ����� ���������� yahoo ��� �� ������ ����������� ���������
�� "Server Switches" � "KVM Switches".
��������� ��������� �� ���� ��� unix box ������ �������� ��� ����
PostgreSQL data-server ��� ������� ������. ����� ����
�������/��������� ��� ������ �� ����� �� �� �� �������. ����� ��
����� "�������������" ���� ������� ��������� ��� ������� ������ ��
���� ��� ����� intel, 13" ������� ����� (���� ��� ������
�����). �� ������� ������ ���� ��� �� hardware ����� Microsoft
Windows/DOS (���� ������������� $ 150). �� ���������� ����� ����
��� �� ���������� ��� ����� ��������, ���� �������� �� ������
������������ ��������� (remote administration) �� ����� �����
��������. ����� �� RedHat (� ������ ���� �������) Linux cdrom �� ��
-
� Linux System Labs Web site: <
http://www.lsl.com/> 7 (U.S.
�������)
� Cheap Bytes Inc Web site: <
http://www.cheapbytes.com/> 7 (U.S.
�������)
����������� ��� �� ���� �� ��������� ������������� �� ��
Redhat Linux. ����� �� ftp site �� Redhat ���� ��������� ����, ���
������������ SCSI adapters, ������ ������ ���. �� $ 600 ���
�������� �� ������ ��� ��� ���� intel �� Redhat Linux ��
����� PostgreSQL. �������������� odbc/jdbc/perl/tcl ��� ��
��������� �� ��� PostgreSQL �� Windows95, OS/2, Unix Motif �
������ web browser (�.�. Redbaron, Opera, Netscape, 20 �����). (��
Web browsers ��� ����� ��� standard client).
�� ��� ��� ���� �������� �� ������� ����� ����� cpu �� ��� ����
��� ��� �����������!
������� �� ������ ��� �������� �� ��� networktechnic Inc ���
"Server Switches"
������������ ��� ��� 800-742-8324 (����� ������ ��� �������)
��� �� ������ ��� ������� ��� ������� ������� Email ��� �������:
[email protected]
����������� ���������� ��� �� PC �� ��� �����������, ���� ���
������� �� ������������ �������� ��������� �� ��� �����������,
���� ��� ������� �� ����������� 64 PC. ����������� ���������������
����������� ��� ������� ������������, ����� ��� �������� �� ���
�� ������������ PC 100% �� ����.
�������������� ��� ��������
� �����������, ����������� ��� ��� ����� � ��������������
� 9 pin D Serial � 6 pin miniDIN ���������� ��� �������
� 5 pin DIN � 6 pin miniDIN ���������� ������������
� 1600x1200 ������ �����
� ������������ ����� ������
� �� Desktop ���� � ��� ��� rack
����������� - �����������
� ��� �� ������ ����� �����
� 5 pin DIN � 6 pin miniDIN
� ������ �� ������� ����������� ������ ������������ �/�
����������� - ��������� ������
� ��������� �� ���� �/� �� �� ������ ��� ������
� �������� �������� ����������� ����� ��� ���������� �� ���
���������� ��� ������ �� ���� ���������� SCAN, BROADCAST �
COMMAND
� �� LEDs ���������� ��� ���� ���������� �� ������������
� ������� CTRL+* ��� ������ �� ���� ���������� COMMAND
� ����� ���������� �� SCAN, BROADCAST ��� COMMAND ����� ����������
�������
* 9 pin D serial
� o �������� NTI �� ����������� �� ������� ������� ��� Microsoft
� o 9 pin D ������� ��� �������
� o 9 pin D ���� ��� ��� �/�
* 6 pin miniDIN
� o �������� NTI �� ����������� �� ������� IBM PS/2
� o ��� �� ������ ����� �����
������� �����������/����������
� ���������� --�� ������ �� ��������� �������
� ����� ��� ������� �� "����������� - ��������� ������"
����-VGA
� ���� 150 MHz
� 1600X1200 ������ ����� ��������
� 1/4�� �� ������ ����� �����
14. �������� ��� �������� ��� ��� PostgreSQL
14.1. ����� 4�� ������ (4GL) PostgreSQL ��� �������� �� web ���
���� �������� - ������� �������� AppGEN
�� AppGEN �������� �� �� ���������� �� ��
� <
http://www.man.ac.uk/~whaley/ag/appgen.html>
� <
ftp://ftp.mcc.ac.uk/pub/linux/ALPHA/AppGEN>.
�� AppGEN ����� ��� ����� �������, �������� ������ ����� ���
������� �������� ������� ��� ��� ������� ������� ���������
��� World Wide Web (WWW). ����� �� �������� ����� ���������������
��� internet � ��� intranet ��� ���������. �� �������� �� AppGEN
����������� �� C scripts �� �������� �� ����� �� Common Gateway
Interface (CGI), �� ����� �������������� �� ��� ����������� Web
Servers.
��� �� ��������������� �� AppGEN �� ����������� �� ������ :-
��� PostgresSQL, ������ ���������� ������� ����� ��������
���� web server �� �� ����������� CGI ��� � HTTPD �� NSCA
���� ������������ ansi C ��� � GCC
�� AppGEN ����������� �� �� ������ ���������� ��� Unix (Linux) :-
� defgen, �� ����� ������� ��� ������ ����� ������� (template
application) �� ������� ������� ����� ��������. �� ��������
������ �� �������, ���������, �������� ��� ����� �������
���� ���� �������� �� ��������� �������� ������ ��� ���
���������� �� �������� (referential integrity).
� appgen, � ������������� AppGEN �� ������������ ����� appgen ��
���������� CGI C ����� ��� ������� HTML ������ ��� ����� �� ����
web server.
� dbf2sql, ��� ������� ��� ��������� ����� ������ �� dBase III
.dbf �� ���������� SQL scripts. ��� ��������� �� �������� ��
����������� ��� ���������� ������ ����� �������� ��� DOS/Windows
�� ��������� �� ���� SQL server ��� � PostgresSQL.
� ��������, �� AppGEN ������ ��� ������ �� ������� HTML , �����
GIF ��� Java applets �� ��������������� �� �� ������, ���
������, ��� ���� ��� ��������, �������������� ��� ��� �����
������ �����.
�������� �� ������������� �� ��� �������, Andrew Whaley, ���
�
[email protected]
14.2. WWW Web interface ��� PostgresSQL - DBENGINE
�� dbengine ����� ��� plug 'n play Web interface ��� ��� PostgreSQL
�� ������������ �� ��� Ingo Ciechowski. ��������� ��� :
� <
http://www.cis-computer.com/dbengine/ >
������ �� �� DBENGINE : �� dbengine ����� ��� interface ����������
WWW ��� Postgres95 �� ������ ���� ������� �� ����������� ���� ����
�� ���� �����.
�� PHP 3 ����� ��� ����� �� ������� �� ��� Perl ��� ������� ���,
���� ��� ���������� Perl �� �� AppGen ��� �� wdb-p95 ������� ��
������������ ������ ����� ������� ��� ���� ��� �� ��� ������ ���
-- ������� ��� �� ������ ���� ��' ��� �� ������ ������ ����� ����
������ ���� �� ����������.
�������� �� �� ���� ��������, ��� ���������� �� ������ �����
������������� � ������ scripting language ��� �� ���������� ��
������� �� �� dbengine. ��� ������ ������ ������ ����� �������
��� ���� ����, ���� �� ���������� �� ������������ �� ��� ��� ����.
������� - �� �������� �� ������ �� ���� ������� �� ��� ��
�������������� �� dbengine �� ���� ���� ���� �� ������ �� �����
Perl.
��� �� ������ ������ �� �������� ��� ���� �������� �� ���
������� ���� �������� �� ������� ���������� ������ �� �� �� ��
�������������� �� �������� ���. �������� ������ �� ������� virtual
Fields �� ����� ������������� ����� ���� �� ��������� ���� ����.
����� �� dbengine ����� ����� �������� ��� �� ��� ����� ����
��� ��� � Perl. �������� ��� ����� ��� �� ��� ����� ������� ��� ��
�������� � ��� �������� �� ������. �� ������ ������, ��� ����� ���
����������� ��� ��� ���� ������ �� ��� GNU ����� -- ��� ��������� ��
������ ��� �� ������ �� "�����������" ���� �� �� dbengine � ��
����������� �������� �� �� ��� ����� ��� �������� �������!
14.3. Apache Webserver Module ��� PostgreSQL - NeoSoft NeoWebScript
� Apache ����� ���� ��� ����� Web Server. ��� module ����������
PostgreSQL �� ��� Apache Webserver ��������� ��� -
� <
http://www.neosoft.com/neowebscript/>
�� NeoWebScript ����� ��� ����� �������������� �� ��������� ���
���� ��� ������ ����������� �� ��������� �� ����� HTML.
���� �������� ��� ������ HTML �� ������� ���������� �����
NeoWebScript, � webserver �� ����������� NeoWebScript ������� ��(�)
���������� script(s), ��� ������� ��� web ������ �� ���������
������� ��� ������� ���� ����������� �� ��������������, � �����
������������ �� �� �� ��������.
�� NeoWebScript ����� ���� ��������, ������, ������ ����� ��� ��
������ ���, server-based ������������� ���� ����� HTML �� web
������. �� �� NeoWebScript, ����� ����� �� �������� ��������
(counters), ������ ��� email, ������� ���� �������, guest books ���
�� ������� ������� ��� ��� ����������, ���� ��� ��� ���� ������
��������������. ����� ��� ���� �� NeoWebScript ����� �� ���� �� ��
������� �� ��� PERL ��� �� JavaScript.
�� ������ �� ������������� �� NeoWebScript ���� webserver ���, �
Webmaster ��� ������ �� �������� �� Sysop FAQ ��� �� ���������. �
"����� �� ���������" (Theory of Operations) �� �������� ��
������ �� NeoWebScript, �� � ����������� �� ��� ����������� ���
������ ������ ���. � ��������� ��������� �� ������ ������� ���
��������� �� server, ������� ������ ��������� �� ���� ���������
�� NeoWebScript ��� ��� � ����������� ��������� �� �� ����������
�� server.
��� ������ ������ ����� ��� �� ����� �� NeoWebScript-2.2 ��� ���
ISP ���, �� intranet ��� � �� extranet ���. �� ����� ��� ����� �����
������, ���� ��������� ��� �� �� ����������, ���� � ���� ����� ��
�� ������ 99 ����������� ������� �� ������ �� �� ���������� ��� ����
��� ������ � �� �� ��������������� �� ���� server ��������
���������� (�.�. SSL).
�� NeoWebScript ����� ��� module ��� ��� Apache webserver �� ���
��������� ��� �������� ��� ������ �������������� Tcl/Tk ����
����������� ��� ��� ��� �������� scripting. ���������� �� ��� Karl
Lehenbauer, ��� ����� ������� ��� NeoSoft, ��� �����������,
������������ ��� ���������� �� ��� ��������������� ��� �������
�������� ��� NeoSoft.
� Apache webserver ����� � ����� �������� webserver ���� ����,
���������������� ��� 68 % �� sites �� �����������.
� Tcl/Tk ����� � �������, �����, ���������� �������� �����
scripting, �� ��������� �� ��� ��. John Ousterhout. ���������� ��
���� ��
"� Tcl/Tk ��������� ���� ��������������� ��������� �� ����� ���
������ ���� ����� ������ �� ��� �������������� �������������
(toolkits) ���������� �� C � C++. ����� ������ ��� ������ �����
��������� ��� ������� ������� �� ��� ����� ��� ������� ���
��� ��������� �� Internet-���� ���������".
� Karl Lehenbauer, ������ ��� ����������� �� ������ �������� ���
NeoSoft, �������� ����� ��� �������� ��� Tcl/Tk �� �� ���� ���
������. ���� �� ��� Mark Diehkans, ����������� ��� Extended Tcl,
����� ������ ��� �� TclX � NeoSoft Tcl, ��� ��� ����� ���������
��� �����. ������ �� ��� ������� ������� ��� Tcl ������� �� ���
Extended Tcl, ��� ���� ��������� �� ��� Dr. Ousterhout ��� �����
����� ��� ������.
NeoSoft Inc., 1770 St. James Place, Suite 500, Houston, TX 77056 USA
14.4. ��� ��� PostgreSQL �� HEITML ���������� ��� HTML ���� server
��� ��� ����� 4�� ������
�� �������� heitml ����� ���� ����� ����� ��� �� ���������� �
postgres �� �� world wide web. ��� ����������� ����������
������������ �� ���
Helmut Emmelmann H.E.I. Informationssyteme GmbH
Wimpfenerstrasse 23 ���. 49-621-795141
68259 Mannheim Germany ���. 49-621-795161
� ������� email ���� �. Helmut Emmelmann ���
[email protected]
� � ���� ������ �� Heitml <
http://www.heitml.com>
� � ��������� ������ �� Heitml <
http://www.h-e-i.deom>
�� heitml ����� ���������� ��� HTML ���� ����� �� server ���
������� ����� 4�� ������. �������� �� ������ �������� ��� �� web
�� ��� HTML �������������� HTML-����� tags.
�� heitml (�������� "��"-������) ����� �������� �� HTML ��� ���
����� ����������� ����� 4�� ������ �� ��������� �� �������� Web ��
������������ �� �������� �� ����������� �� SQL ������, ����� ��
�������� �� ��������� CGI scripts.
�� heitml ���������� �� HTML ���� ����� �� server, �������������
������� ����� ".hei" �� HTML ��� ����� ����� ����� �� ���� web
browser. ������������ ��� ������, ������ ������ HTML ��� ������
����� ���������������� Tags ��� ���������� ��� �� ���� ������
�� ���� ��� ����������� CGI. ��� ��� �� XML, �� heitml ������
tags �������� �� ��� ������. �� �� heitml �� �������� �� ��� ������
tags ������������� �� HTML ��� ���������� ���� browser.
�� heitml ������ ��� ���� ��������� HTML ��� ���� �������������
���������������. �� ��������� HTML ������ �� ������������ heitml
Tags ��� �� ������� �������� ������� web, �� ����������� SQL
������, � �� ��������� ������� �������� web. ��������, ������ ��
������� ���������, ������ ����������, ������ email , ��������
����, ��� ������ �� ������������ ���� ��������������
�������������� HTML-����� Tags �� ���������� ���� �������
�����������.
��� ��� ���������������, �� heitml ��������� ��� ����� ����� 4��
������ �� HTML
(�.�. <if>, <while>, ��� <let> Tags),
�� ����� ��������� ���������� ������� �� ��������,
�����������, �������, �������������, tuples ��������. �� Tuples
��������������� ��� ���� ��������� ������������������ ������ ���
����������� �� ���������� ��� (heap variable). �� ���������� ���
heitml, ����������������� ��� ��� �� ������ ���� ��������,
����������� ��� �� ���������� ��� ������ ��� ����� ����� ��
������ �������������� �� Session Mode. ����� ����� �� ������� ��
���� ��� tags � tags �� ������������� ��� ���� ��� �� ����������� ��
HTML-tags.
�� heitml ����� ���� �� ��
- - - �������� Web Sites �� ��� �������� ��� ������� ����, ����
�� ������ �������� � ���������� �� ���������.
- - - �������� ����� ��� ���������������� Web Sites, ��
��������� �� ������������ ������� ���� ������� �� ������.
- - - ��������� �� ��������� SQL ����� ����� �� ��������� �����
�������������� ���� �� �� �� ��������������� �� ���������� ��� ��
�������������� "dba" Tags.
- - - �������� �������� ������ ����� �������� ��� �������
����� �������������� ��� Session Variables
�� heitml ����� �� Linux �� ������������ Web Server �� ������������
CGI interface, ��� ����� ��������� ������� (���������� ���
���������� �� CGI) �� ��� APACHE Web Server �������������� ��
Apache API. ���� ��� �������������� �� ������ MSQL (������ 1 ��� 2),
PostgreSQL (������ 6), mysql, ��� � yard. �� heitml ������ ������ ��
Linux, BSDi, Solaris ��� SunOS, ���� ��� �� Windows NT �� CGI ���
ISAPI ��� ODBC ��� Windows 95.
�� heitml (�� linux) ����� ����� ��� ���������, ��-�������� ���
������� �����. �� �������� Web Sites ������ �� ������� ���� ��� ���
����� ������. � ������ ���������� ������ �� heitml ����� ���������
�� ��� ���������� ��� ��� ������� ������� �����. (��������,
�������, ��� ���� Web ������ ".hei" �� ���������� �� �������� ���
����� �� �� �� ������������ ��� ������ ��� �� �������� �����. ����
��� ������, �� ������ ��� ������ ��� �� ���������� �� �� �����
����� �� ��������� �� ����������������� �� ��������.)
�� heitml (��������� "��"-������) ���������� ��� ����������
��������� �� ������������� ��� HTML �� ��� ����� tags ���
�������������� ������ ��������������. ��� ����� ����� ��� ������
������� ������� ���������� ��� ����� �������� ���� ���� ����
��� HTML, ����� CGI ��� ������� scripting � ����� ������
��������������. ��� �������� ��� �����, ��� �������� HTML,
�������� �� ���������� �������� ���� web ������� ���, ��������������
���� ������ ��� tags ����� CGI ��� ����� �������������. �� ���
����, ��� ���������� ������� � ��������������� �������� ��
������������ ����� ����������������� ����������� �� tag. ���� �
���������� ����� �� heitml ��������� ��� ��� ��� ������� ����
HTML ��� ��� ��� ��� ������������� ���������������. �� heitml �����
��� web server ��� ��������� ������� HTML, ���� ���� �� heitml ��
����� ����� �� �� ������� �� internet ��� �� ����������� web
browser. ��������� ����� ������� �� ������ �� ���������� �� ������
�� ��� ������� ����������� �� CGI. �� heitml ��� ��������
���� �� ������� ������ ��� �� �������� ���������
������������ ��� �������� (transaction).
�� ������� heitml ������������ ��� ��� �� ������� HTML, �� ���� text
editor � ���� HTML editor, ��� ������������ ��� web server �� ��
���� ����. �������, �� ������� ������ �� ������� ��� �������
heitml tags ��� ����������� tag ��� ������� �� ������. �������� ��
��������������� ��� �� tags ��� �� ���� ������� �� ������, ��
������������ ������ ���������, �� �������� emails, ��� ��
������������ ���� ����� �������� ��� ������ �� ������ ���
�������� �����.
�� ������� ���� ����� HTML ��� �� ������������� ��������������� ��
������ ��������� �� �� ��� ������� ��� ����� ������ �� ��������
����������� �������� ��� �� Interactive Guestbook ����� ��
���������� �� ����� �� ����� ������ ��� �������� CGI scripts,
���� ��� ��� �������������� �� �������� �� ��������� �� �� dba
���������� ���.
�� heitml ��������� �� ��� ������ ������ tag ����������, ��� ��
������������ guestbooks, �������� ��������� ��� �����, �����������
������ �������, ����� ������ email � �� ������� �� web site ���
�������������� ��� ������� ����. ���� �� �������� ����� ������,
���� ��������� �� ��������� tags ��� web site ���.
��� �������� ���������������, �������� �� ������ ����� ����� ���
heitml ������������� ������� ������: �� heitml ��� ����� ���� ���
scripting ����� �� �������� ����, ���� ���� ���������
�������, ����������� ������� ��� ������� ���������� ���������,
���� �������������� ������ �� �������� ������� ��� ��� ������
��������� �� �������� ��� session ���������� �������.
14.5. America On-line AOL Web server ��� PostgreSQL
� ����� �������� webserver, AOLserver ������� 2.3 �����������
�������� ��� ���� PostgreSQL ������ 6.2.1 ��� ���������. ���
����������� ���������� ����������� ��
� AOL Web Server <
http://www.aolserver.com>
14.6. Problem/Project Tracking System Application Tool ��� PostgreSQL
��������� ��� :
� <
http://www.homeport.org/~shevett/pts/>
14.7. ��������� ����� dbase dbf �� PostgreSQL
�� �������� dbf2msql ������ ���� �� mSQL ��� PostgreSQL. ��������
�� �� ������ ���
� <
ftp://ftp.nerosworld.com/pub/SQL/dbf2sql/>
� <
ftp://ftp.postgresql.org/pub/incoming/dbf2pg-3.0.tar.gz>
�� �������� �� ������� �� ��� Maarten Boekhold, Faculty of
Electrical Engineering TU Delft, NL Computer Architecture and Digital
Technique section
�
[email protected]
�������� �� ��������������� ������ python ��� �� ��������� ����� dbf
��� �� �� �������� �� ��� ���� �������� postgres.
� ����� �� <
http://www.python.org>
15. �������� ��� �������/��������� Web ����� �������� ��� ���
PostgreSQL - EARP
� <
http://www.oswego.edu/Earp>
� <
ftp://ftp.oswego.edu> ���� �������� 'pub/unix/earp'.
15.1. �� ����� �� EARP ;
�� EARP ����� ��� �������� ��� �������/��������� Web �����, ��
������� ��� �� �� ������ ����� �������� PostgreSQL. ���
������������� �� ���������������:
� ��� ������ ������ ��������.
� ��� interface ��� sendmail. (������ �� ��������� �� ��������� ���
�������� mail)
� ��� ������� ������� ��������.
� ���� ���� cgi.
15.2. ���������
� ���� ��������� �� EARP ����� ��� ���������� CGI �� ����� ���
�� �� ������� http ��� ������ ������� ��� ���������� ��� �����
��������. ��� �� �������� �������� ����� �������� ���� ���� ����,
� �������� ��� ������� ���� ��� �� web. �� ���� �� ��������
������� ��� ����� browser, � ��������� �� ����������� ��
����������� �� �� �������� ����� ���������� �� ���� ����������,
��������� ��� ������� ������� ����������.
15.3. �� ���������� ��� �� ������� �� EARP
�� EARP ������ �� ����� ������ �� ������ �������� �� ���� � �����
�������. �� ������ �������� �� ����� ����� �� ����:
� Solaris 2.5
� Linux 1.2.13+
� GNU C++
� PostgreSQL (������ 1.01 / 1.02 )
� netsite server
� NCSA httpd
� GNU C++
� PostgreSQL (������ 1.01 / 1.02 )
� NCSA httpd
� Apache httpd
� ������ ������ (1.3) �� Earp ���������� ��� ���� ������ ��
libpq �� ������ �� ��� PostgreSQL v1.01/1.02. �� ��������������
��� ��� ������ ������ ��� Postgres, �� ���������� �� ��
�������� �� ��������� ������� ������� ��� �� ������ ����. ����
����������� ������ (Earp 2.0), � ���������� libpq �����������
��� module.
15.4. �� ������ ;
��� �� �� ������� �������������� �� EARP ����� ��� ������������
���������������� ������ ��� �� ������� html ������� �� ����������
�� �� ����. �� ����������� ������� ����������� �� ������
����������� (objects). ���� ����������� ��������� �� ������ ���
�������� ��� �� �� ����� ��� �����, �� ����������� ���������
����� ��� �� ��� �������� �� ������ �� �������� �� �� ��������
��� ������� (page tool). �� ����������� ����� ������ ��
�������������� �� ��������� �������. ������ ������ �������� ���
HTML, �������� (Querys), �� �������� ����� �� ��� ������, ��
��������� �������� ��� ����������� �����, ��� �� ������� �����
��� �� ����������� �� ���� �����������. ���������� ����������
�������� ������������ �� �������� ��� mail ��� �� multithreaded
�������� �������.
���� ������������� �� EARP ����� � ����� �������. � ������� ��
������� ������� �� ��������� EARP ������ �� ����������� ��
������� �����. ��� �� ������� ��� ����� �������, �� EARP
������ ��� ���� ������ ��� ������, ��� ������������ �� ���� ids ���
����� ������ � ����������� agent. � ������� �� ������� �����������
�������, ��� � ������� ��������� �� ����������� � ������� ��
��� ����������� ������ �� Earp. ��������, �,�� ���������� ��� ��
����������� �� �������������� �������� ����� ���� http server ��
����������� ����� (� �������) user authentication.
15.5. �� �� �� �� ;
�������� �� ���������� �� EARP �� anonymous ftp �� ��
� <
ftp://ftp.oswego.edu> ���� �������� 'pub/unix/earp'.
16. PHP Hypertext Preprocessor, ��� scripting ����� ��� ��� Post�
greSQL � ����� ����������� �� html ��� ���������� ��� Server
�������� ���������� �� �� WWW
� <
http://www.php.net>
� <
http://www.vex.net/php>
�� ���� ����� ����� Professional Home Pages (PHP 3) ��� �� ���
����� ����� PHP Hypertext Pre-Processor
� ������ Mirror sites �� ������ ����� ��� ��
www.COUNTRYCODE.php.net
� <
http://www.fe.de.php.net>
� <
http://www.sk.php.net>
� <
http://php.iquest.net/>
��� ��������, ������� e-mail ��� :
�
[email protected]
�� PHP 3 ����� ��� scripting ����� ��� ��� PostgreSQL � �����
����������� �� html ��� ���������� ��� Server. ��� ��������� ��
������ ���� scripts ��� ����� .HTML ������� �� ��� JavaScript, ���
�� �������� �� ��� JavaScript, �� PHP 3 ��� ��������� �� �� browser.
�� JavaScript ����� ��� ����� � ����� ����������� �� html ���
����� ��� client-����� �� �� PHP 3 ���������� ��� Server. �� PHP 3
����� ������� ���� ����� �� �� ���� ��� Netscape LiveWire Pro. ��
���� �� ���������� �������, ��� ������ ��� ������� Server ���
Netscape ��� ���� ��� �� �� ������������� ���������� ��������,
��� �� ������ �� ������ ��� ����� ��� LiveWire Pro. �� ��� ������ ��
�����, ������ ����������� �������� �� ������ �� ��� ��� ������
����� ������ �� ��� ������ �� PHP 3.
16.1. ���� ��������������
���������� ������� CGI, FastCGI ��� Apache module. ��� ��� �������
�������� CGI, �� PHP 3 ������ �� ������������ �� ����������� �����
Unix ��� �� ������ �� ����������� Unix web server. �� ��� ����������
�� ��� ������� FastCGI, �� PHP 3 ��� �� ����������� �� ��������
���� ������ �� ��������� �� �� �� �������. ��� Apache module,
�� PHP 3 ������� ���������� ��� ��� ���������� ������� �����������
�� �������������� �� CGI.
� �������� �� ��������� (Access Logging) �� �� ��������
��������� �� ��������� �� PHP 3, �� ������� ������ ��
��������� �� ��� ��� ������� ��� ��������� ��������� (hit
counting and logging). �� ������������ �� ������ ���� �� ��������
����� �������� ��� ������, ��� ������ ������������ ���������
�� ��������� ����. �� Log Viewer Script ������ ��� ������
������� �� ��������� �� ��� ����� ������ ��� ���� ������
������. ��������, �� ������ ������ �� �������� ���� �� ������� ���
footer �� ���� ������ �� ����� ������ ���������� ������ �� ���
�������. ����� �� ����� ���� ��� ������� ��� ��� ���������� ��
���.
� ������ ��������� ��� ���������� ����, ��������� ��� web,
���������� ��� �������� ��� ��� ����� �� ���������. �����
���� �� ������������ ������ ��� ���� � ������� �� ��� web
������� �� ��� ������ ����������� �����, �� ����� �����
������� ����������� ��� �� ����� ������ �� ������ ���� ���
������� ��� �� �� ��� ������. �� ������� ������ �� �������������
�� ����, �� ����� ����� ������������, �� ����� ����������������
� �������� (logging disabled) ��� ���� ���������� ��������� ���
domain �� client, browser,�� ������� e-mail � ���� ��� ��
����� �������.
� ���������� ��� Postgres � Postgres ����� ��� ���������� �����
RDBMS. �� PHP 3 ����������� ��� �������� Postgres95 ���
PostgresSQL SQL ������� ��������� ���� �� ����� .html.
� ���������� RFC-1867 ��������/�������� ����� (File Upload) ��
Upload ����� ����� ��� ��� ������������� ��� Netscape 2.0.
��������� ���� ������� �� ������� (upload) �� ����� ��� ��� web
server. �� PHP 3 ������ �� ��������� Mime decoding ��� �� ��
����� �� �� ������ ��� ������ ������ �� ������� ��� �� ������
���� ������� �� �� ����� �� ��������, ���� �� ����� � server.
� HTTP-based authentication control �� PHP 3 ������ �� ��������������
��� �� ����������� ��������� authentication ��� ����������,
���������� �� HTTP, ��� ��� Apache web server.
� ����������, ������� (arrays), ����������� ������� (Associative
Arrays) �� PHP 3 ����������� ���������� ��� (typed variables),
������� ��� ���� ��� Perl-������� ����������� �������
(associative arrays). ��� ��� ������ �� ������ �� �� ��� web
������ ���� ���� �������������� ��� ������ �� �����, GET �
POST.
� Conditionals, While Loops �� PHP 3 ����������� ��� ����� scripting
�� ��� �� �������������� ��� C. �������� �� ���� �������
if/then/elseif/else/endif ��� ��� while loops ��� �������
switch/case ��� �� ��������� �� ������ ��� �� �� �� ����������
� html ������.
� Extended Regular Expressions �� Regular expressions
��������������� ��� ��� ���������� (pattern matching),
��������������� �� pattern ��� ����� ������� ������������. ��
PHP 3 ����������� ���� ��� ������ �������� �������� �������.
� Raw HTTP Header Control � �������� �� ������ ��� web ������� ��
������� ������ �������������� ����������� HTTP ������� �� �������
������� ����� ���������� ��� ������� web sites ����� �������.
���� ����� ���, ����� � �������� ���� ����������: URL header ���
����������� �� ������ �� ����� ��� ����� ���� ���� URL. ������
�� �������������� ������ ��� �� ���������������� �� caching � ��
������������� ��� �������� ���������� ���������.
� ��������� GIF ������ ��� ���/���� ���� (On-the-fly) �� PHP 3
����������� �� GD ���������� ����� �� Thomas Boutell � ����� ���
����� �� �������� �� ������������ GIF ������ ��� ���.
� ���������� ISP "Safe Mode" �� PHP 3 ����������� �� ������� "Safe
Mode" �� ����� ����� ������ �� �� ���� ������ ������� �� �����
PHP scripts ���� ���� server.
� ����� �����! ��� �� ����� �������� �������������. �� ������
����� ������ �����. ��������� ��� �� ��� ����� GPL � ����� ���
��������� �� ��������������� �� �������� ��� ����������� ����,
������� � ������������ ����. ����� �� ������� ��� ������� ������
GNU ��� ����������� ������������.
16.2. ���������/����������
* ������ �������� ��� �� ����� ���������� ��� ��� ��� ��
������������ �� ������. ������ ��������� ���� Lee Oattes ��
�������� �������� ����� �� ������������ ��� ��� ������
��������������� �������� ��.
* � ������ ����������� ��� PostgreSQL ������� �� ��� Adam Sussman
�
[email protected]
* ����������� �����, �������� ��� �� ������� ��� �� ������������ ��
������.
16.3. PHP 3 - ������ �������
�� PHP �������� ��� �� �� �� cgi ������ �������� (cgi wrapper)
��������� �� Perl. ��� ���������� ��� ������ ���� �� ��������
�����. �� ����� �� ���� ��� ������ ���� Personal Home Page
Tools, ��� ������� ����� Personal Home Page Construction Kit.
������� ��� �������� ��� �� ��������� ����� �������� SQL �� web
�������. ���� ������ ��� ���� CGI wrapper �� �������� �������� SQL
��� ����� ��� ��������� ����� ��� ������ �� ��� �������� ���
����� ������. �� �������� �� ���������� FI (Form Interpreter).
�� PHP/FI ������ 2.0 ����� ��� ������ ��������, ��'��������
������������, �� �������� ��� ������ �� �� ������� ������.
���� ��� ��� �������� �� ������ �� ����� ��� ���� ����������������
����� ���������� �� ����� HTML. �� ���� �������, PHP, ������.
��� ����� ��� ������������� ���. �� PHP/FI ���������������
���������� �� ������� web sites ������, ���� ��� ������
������������� �������� ������ (Personal Home Page). �� ����� �����,
�������� ��� ������ ��� �� ��������� ����� Perl cgi �����������,
������������ ��� �� ������ ����� scripts �������� ��� HTML �����
���. ��� �������� ��� ����� ������ �� web pages ���, ��� �� �
���������� �� ������� (forking) ��� Perl �� �������� ������� ���
���������. ����� ������ �������� ��� ��������� ������ web sites
����������� ��� �� �������� ���� web page �� ��� ��� html �����.
������������ ���������� ��� ������� ������, ����� ��� �������
������-��-���������-������-����� ����������. ������ ������� ���
���������� ���� �� ������������ ��� �������� ���� �� ��
��������� �� ��������� ������� ����� HTML ��� CGI.
���� �� �������� ���� ��� ����������, ���� ������ ��� PHP, FI � ���
PHP/FI ������ ��� �� ���� ������. �� ������ ����� �� PHP ��� �� FI
����� ��� ���� ��������. ��� �� �� ��������� �� ��� ����� ���
����� ��������. ��� �� PHP/FI ������������� �� PHP 3.
16.4. �� ���� �� ���, �����, �� �� PHP/FI ;
�� ���� ������ �� �� ������������ �� ������� ��� ������ ��� ��
PHP/FI ����� ��� ��������� ��� footer �� ���������� ������ �� ���
����� ��������� ��� ������ ��� (�� ���� ������������ ��� ��������
��������� ��� ����������). ��� ����� ��� ��� ���� ������ �� ��
������ �� ����� ��� ��� �� PHP/FI. ������ ��� ����� �������� ���
�� ��������� cgi �� ������, �� ���� ������� ��� to FI ����� ��
�������. ��� ����������, �� ������������ ��� ����� �� ��� �� ���
web ������� ���, ���������� ���� ��� �� ������������ ��� ��������� ��
��� �� �����. ���� ��� �� ���� ������ �� �������� ��������� �� ���
���� ������, �� ������ �� ��������������� ��� �������� cgi ��� �� ��
������ ��. To PHP/FI ����� ���������� ����� �� �� ������ ��������
�� ��� ����� ��� �� ������ ���� �� ���.
16.5. ��� ��� ����������
�� ��������� ��� ���� ��� �����:
<FORM ACTION="/cgi-bin/php.cgi/~userid/display.html" METHOD=POST>
<INPUT TYPE="text" name="name">
<INPUT TYPE="text" name="age">
<INPUT TYPE="submit">
<FORM>
�� ����� display.html �� ������� �� ������� ���� ��� �� �������:
< ?echo "Hi $ name, you are $ age years old!<p>" >
����� ��� ���! �� PHP/FI ��������� ������ ��� ��������� ��� ����
input field ��� ����� ���. �������� ��� �� ��������������� ���� ���
���������� ��� ����� ACTION URL.
�� ������ ���� �� ���� ��������� �� �� �������������� ���
���������� ����� �� ���������� �� ������� �� ������ tags ������� ����
���� ������� ���. ��� ����������, �� ������ �� ��������� ����������
������� ��������� �� ���� �� ������� � �������, �� ���������������
�� ������ if/else. ��� ������� ����������, ������� �� ���������
���������� �������� �� ���� ��� ������ �� ���� � ������� ����������
�� ����� display.html �� ����:
<?
if($age>50);
echo "Hi $name, you are ancient!<p>";
elseif($age>30);
echo "Hi $name, you are very old!<p>";
else;
echo "Hi $name.";
endif;
>
�� PHP/FI ������ ��� ��� ���� scripting ����� �� �� ����� ���
���������� ��' ��� ����� �� ������� ���� ������������. ����� ��
����� ��� "PHP/FI Script Language" ��� ����������� ����������.
�������� �� ���������� ������ ��� PHP/FI ����� ����������� �� ���
������� ���� ������� ���. ��� ����������� �� ��� ����������
���� �������. �� ��� �� ��������� ��� ���������� �� ���������� ���
��� �� ����� �� ����������� domains �� ������ �� ��� ��� �������
���, � �� ��������� �� ������������ ��� ����� �� �� ���������
������� ������� ��� �� ����. ����� �� ����� "������ ���������" ���
����������� ����������.
�� PHP/FI ����� ������ ���� �� ������ uploads ����� ��
����������� web browser ����� �� RFC-1867. ��� �� �������������
��������� �� ������� �� �������� ��� text ��� binary �����. �� ���
����� ��������� �� PHP/FI ��� ��� ������� ����������, ���� �����
����� ��� ��� ����� ����������� �� �������� (upload) ����� ��� ��
������ �� ����� �� �� ����� �� �� ��������. ����� �� ����� "File
Upload" ��� ����������� ����������.
�� PHP/FI ����������� �� ������ ����� �������� PostgreSQL.
����������� ����������� SQL �������� ��� .HTML ����� ���. ����� ��
��������� ����� ���� "���������� ��� PostgreSQL" ��� �����������
����������.
�� PHP/FI ����������� ������ ��� �� ������ ����� �������� mysql.
����������� ����������� SQL �������� ��� .HTML ����� ���. ����� ��
��������� ����� ���� "���������� ��� mysql" ��� �����������
����������.
16.6. CGI Redirection
16.6.1. ��������� ��� ��� Apache 1.0.x
���� ���� ����� �� ������� �� PHP/FI ����� �������������� ��� cgi
redirection module �� ��� Apache server. ������� �������� ��� ��
���������� �� �������� ��� modules ������������ �� ��������������
��� ������ �� Apache module �� PHP/FI. ������ �� �� ��� ��
modules ������������ ���������. ��� �� ��� ��������� �� ���
Dave Andersen
�
[email protected]
��� ����� ��������� ���
� <
ftp://ftp.aros.net/pub/util/apache/mod_cgi_redirect.c>
��� �� ���� ������ ������ �� ��� Apache ��� ������� mod_actions.c.
���� �� modules ����� ���������� �������. ������� ����� ���
����� ���. ��� �� �� ��� ����������� ��� ������ ��
�� PHP/FI.
����� ��� ��������� �� Apache ��� �� �� �������� �� ���������� ���
module. ������, ���������� �� ����� �� module �� ��� ����� ��
���������� Configuration. � ������ �� ������ �� ���������� �� ������
�� ��������������� �� module mod_actions �����:
Module action_module mod_actions.o
�� �������������� �� module mod_cgi_redirect.c ��������� ��� ��
������:
Module cgi_redirect_module mod_cgi_redirect.o
��� ������, ������������ �� httpd ��� ������������ ��. ��� ��
�������� �� cgi redirection ���������� ���� �� ������������ ��� ���
��� mime ��� ����� ��� mime.types ���� �� ��������������� ��� ������
AddType ��� ����� ��� srm.conf ��� �� ���������� ��� mime ���. ���
�� ���������� ��� ��� mime �� ������ �� ���� ���� ��� �� �������:
application/x-httpd-php phtml
�� �������������� �� module mod_actions.c, ���������� �� ����������
��� ������� ������ ��� ����� ��� srm.conf :
Action application/x-httpd-php /cgi-bin/php.cgi
�� �������������� �� mod_cgi_redirect.c �� ������ �� ���������� ���
������� ������ ��� ����� srm.conf :
CgiRedirect application/x-httpd-php /cgi-bin/php.cgi
��� ��������������� ������� ��� �� �� mod_actions.c ���
mod_cgi_redirect.c.
��� ���� ������������ ��� �� �� cgi redirection modules ��� ��
�������� ����, �� �������� �� ������������� ��� ������ ��� ����� ��
����� parsed �� �� php/fi ���� ���������� �� extension �� ����� ��
.phtml. ��������, �� ���������� ��� index.phtml ��� ������
DirectoryIndex �� ����� ��� srm.conf, ��� � top-level ������ ����
�������� �� ����� ������ parsed �� �� php �� �� index �����
���������� index.phtml.
16.6.2. Netscape HTTPD
�������� �� ������������ ������ ��� �������� ��� ����� ��
����������� �������� ����� ���� �� �� ��������� �� PHP/FI �� ��
����� �� Netscape Server CGI Redirection module. ��� �� module �����
��������� ��� "File Archives" ��� ������ �� PHP/FI. �� ����� README
�� ������ ���� ��� ������ ������ ������ �� �� �� �������� ���
����� �� �� PHP/FI.
16.6.3. NCSA HTTPD
� NCSA ��� ����������� ���� �� ���� modules, ��� ���� ��� �� ������
����������� cgi �� ��� server ���, �� ����������� �� �������������
��� ����� �� server ���. ��� ������/������ (patch) �� �� �����
��� ��� NCSA 1.5 ���������� ��� ����� �� site �� PHP/FI.
16.7. �������� �� PHP/FI �� �� ������ ������
�� ������� �� CGI ������ �� PHP/FI, �������� �� �� ���������������
�� �� ������ ������ ���� ��������: php.cgi filename ��� ��
filename ����� �� ����� �� ������ �� ������ parse. �������� ��
������������ ������ standalone PHP/FI scripts �������� ���� ����
������ �� script ��� �� ����:
#!/usr/local/bin/php.cgi -q
�� "-q" ��������� ��� ������ �� HTTP headers. �������� �� ������
�� ��� ��� ������� �� ������.
17. ��������� �� PostgreSQL ��� Python
� Python ����� ��� scripting �����, �����������������, �� ����
��������� (interpreted). ���� ���� ��� ����� (����� ������, �����
��� �������� �������) ��� ��� ������ ���������� ��� ��� ���������
������ ���������� (GUIs), ���������� �� �� WWW, ���. ���� ������
web browser (��� HotJava) ��������� �� ������� (���������. 1995)
��� �� �� ������� ���� ��������������� ������ �����. � python
����� ���������� ����������� �� Stichting S Mathematisch Centrum,
Amsterdam. The Neverlands ��� ����� �������� �����������.
����������� ������ ������ �����������, ������, modules, ���
��������� (exceptions). ������� ����� � �������� ���������� ��
���� ����������� ��� ����� C, ������ �� ����� ��� Python �����
��������� ��� �������� ��������.
� Python ����� ��� scripting ����� ����� ������� �� X interface.
� Python ���������� �� �� Linux cdroms �� ������������ ��
���������� ������� Python modules, ���� �� modules ��� ��������� ��
�� ����� Tix widget ��� ��� Tk.
To PyGreSQL ����� ��� python interface ��� ��� PostgreSQL. ���������
��� ���������� ������� PostgreSQL ��� �� ��������� ��� ����� �����
�� ������� ��������� ��� PostgresSQL ���� �� Python scripts.
To PyGreSQL ������� �� ��� D'Arcy J.M. Cain ��� ��� Pascal Andre.
� ��� site ��� PyGreSQL <
http://www.druid.net/pygresql/>
� ���������� �� ��� D'Arcy at <
http://www.druid.net/~darcy/>
� �� ���� site ����� ���
<
ftp://ftp.via.ecp.fr/pub/python/contrib/Database/PyGres95.README >
� D'Arcy J.M. Cain
[email protected]
� Pascal Andre
[email protected]
� Pascal Andre
[email protected]
17.1. �� ���� �� �� �� PyGres ;
�� home sites �� ���������� ������ �����:
� Python
<
ftp://ftp.python.org:/pub/www.python.org/1.5/python1.5b2.tar.gz>
� PyGreSQL <
ftp://ftp.druid.net/pub/distrib/PyGreSQL-2.1.tgz>
� Old site
<
ftp://ftp.via.ecp.fr/pub/python/contrib/Database/PyGres95-1.0b.tar.gz
>
�� ������ �� ������ �� ������ ������ mirror site ����� ���� ������
���. ���������� ��� ����������� ����� ��� �� �� �� ������ ���
�� sites. �� PyGres95 �� ������ �� ��������� ���� ��������
contrib �� sites �� Python ��� PostgreSQL.
17.2. ���������� ��� ����������
�� ���������� ����������� ���������� ��� ��� �� ������,
����������� ������� �� web sites ���:
� Python : <
http://www.python.org/>
� PostgreSQL :
<
http://epoch.cs.berkeley.edu:8000/postgres95/index.html>
� PyGreSQL <
ftp://ftp.druid.net/pub/distrib/PyGreSQL-2.1.tgz>
� Old site PyGreSQL :
<
http://www.via.ecp.fr/via/products/pygres.html>
��� ���������� :
� ����� ������������ ��� PyGreSQL. �������� �� ��������� ����������
����� ���
[email protected] �� ��� ������ "subscribe pygresql
name@domain" ��� ��� �� �������� �������������� ��
"name@domain" �� ��� ���� ��� ����������� ������� ������������.
� Newsgroup for Python : newsgroup comp.lang.python
� PyGreSQL : ������������ �� ��� Andre ���
[email protected] ���
������� �������, ����, ������
18. ���������� ����� PostgreSQL ��� WWW - WDB-P95
18.1. ������ �� �� wdb-p95
WDB-P95 - ��� Web interface ��� ������ PostgreSQL �� ��� J. Douglas
Dunlop ��������� ���
� ��� WDB �� ��� J Rowe ��������� ���
<
http://www.lava.net/beowulf/programming/wdb>
� ���� ������� �� WWW-WDB ��� <
http://www.eol.ists.ca/~dunlop/wdb-
p95/>
� ��� �������� � ��� ������ ���� ������ ������������,
������������ �� ���
[email protected]
����� ��� ������������� ������ �� wdb-1.3a2 �� ������ ��� ������
��� WWW ��� ��� PostgreSQL. ���� � ������ ������� ������ ��� Browser
���� �� ���������� ������� HTML ��� ��� ����� �� ������� (tabular
output). ��� ��� ���������� �� �� ���� wdb ��� ������ ��
���������� ���� ����� ���� �� ������ �����.
�������� �� ���������� �� CASI Tape ��� Image Query. �������� ��
������ ��� ������� ����� ��� Form Definition File (FDF) ��
������������� ��� �� ����� �� CASI Tape ��� Image Query ������, ��
������������ ��� JOIN 2 ������.
���� � ������ ������� ��� �� ���������� ����� ��� ��� �����������
��� �������� �� WDB-P95 ��� ��������� �� ��� PostgreSQL ������ ���.
� ������� �� ��������� �� ���� ���� �� ������ �� ����� ������
����� - �� ��� �������� �� ����������� ������� SQL ��� ���
interface �� Perl.
18.2. ����� ���������� � ����������� ��� PostgreSQL, �� pgperl, ���
�� httpd �� ����� ���� ���� host;
�� - � ����������� ��� PostgreSQL ����������� �� ���������� �� �����
��� ���� host. �� WDB-P95 ������ �������� �� ��� http �������, ������
�� ����� ��� ���� host - ��� ���� �� WDB-P95 ������� ��� ��
������������ �� Pg.pm - �� pgperl ������ �� ����� ��� ���� host
������. �� Pgperl ������� �������������� �� ���������� libpq, ����
������ �� ��� ������� �� ����������� ���������� PostgreSQL
��������� ��� �����, ��� ������������ ����� ������� PostgreSQL.
��� �������� �������
(WWW Client (Netscape)) => (HTTP Server (NCSA's http) + WDB-P95 +
pgperl + libpq)=> (PostgreSQL server)
�� ����������� () ����������� ���������.
���� ������� ������ �� ����� ���������� ��� : NT, SUN, HP, ...
���� ���������� �� ���������� ���������� libpq ��� ��� ���
���������� �� �������� �� ��������������� �� WDB-P95, ��� ��
������������� �� pgperl. (�� ������ ���������� ��� �� ������������
HTML ������� ��' �� ����� ����������� ���� ������� WWW client).
19. ����������������� ����������� ��� "C", "C++", ESQL/C ���
������� �������� ��� ��� PostgreSQL
19.1. ��������� ������ "C" �� ��� PostgreSQL
���������������� ��� ������� ��� ���������� 'libpq'. ����� �������
�� �� Oracle OCI, Sybase DB-lib ��� ��� ����������� Informix CLI .
19.2. Interface ������ "C++" ��� ��� PostgreSQL
���������������� ��� ������� ��� ���������� 'libpq++'.
19.3. ESQL/C ��� PostgreSQL
O '����������� ���������������� C' ��� ��� PostgreSQL, ESQL/C �����
��� �� Oracle Pro*C, ��� �� Informix ESQL/C. To PostgreSQL ESQL/C
����� ��� ��������������� ���������� ���������� (API) ��SQL, ��
��������� ���� �������������� C �� ��������� ������� �������� ��
��������� ���������� ��� ����� ��������. ��� ��������� ��
�������������� ��� ����� ������ ������ �� ��� ����� �������
������������ ��� �� ������������� ��������� ��� �� ������������� ���
��������� ������ ������� (SQL).
To ESQL/C ����������� �� �� ������� �������� ���������:
� ��� ����������� ESQL/C �� ���������� C �� ����� ������� ����
��� ���������� ��� ����� �������� (database server).
� �� ����� ���������� �� ESQL/C �� ����� ��� ������� ��� ���
����� ��������, ��� ��������, ��� ������������ �������� ��� ��
�������� ESQL/C.
� � ��������������� ESQL/C, ����� ���� ��������������� ������ �����
�� ���������� ��� C ����� �� ������� ������� SQL �� ���
���������� �����.
��������� ���
� � ESQL/C ��� ��� PostgreSQL �������������� ���� ������� ��������.
� �� ���� site ����� <
ftp://ftp.lysator.liu.se/pub/linus>
� Email :
[email protected]
19.4. ������� �������� ��� ��� PostgreSQL
�� ������� �������� �������� �� ��� Nicolas Moldavsky
�
[email protected]
�� "C" ���������� �� �������� ��� ������� �������� (AND, OR,
XOR, �������� �� ���� 2) �� pgsql. �������� �� �� ���������� ��
anonymous FTP �� ��
� <
ftp://ftp.overnet.com.ar/pub/utils/linux/bitpgsql.tgz>
�������������� Makefile ��� Linux.
20. Japanese Kanji ������ ��� ��� PostgreSQL
��������� ��� ������� site
� <
ftp://ftp.sra.co.jp/pub/cmd/postgres/>
21. ������� ��� PostgreSQL �� Windows 95/Windows NT
� ������� ��� Windows 95/Windows NT ����� �� �������. � �������
������� �������������� �� gcc ��� �� gmake ��� Win NT/95. ��� ��
������������� ��� ������ ����� �� win32 ������������� �� ��������
gnu-win32. �� GNU gcc ����� ��������� ��� win32. ��������� ��� site -
� <
http://www.cygnus.com/misc/gnu-win32>
��� ��������� �� ����� cdk.exe (���-������������� ����� ���
gnu-win32)
� ������� ������ ������ �� ����� �������������� �� ������ ��������
"Unix-Emulator on NT" �� ��
� <
http://www.softway.com>
22. ������ ������������
22.1. ��������� ��� ����� ��������� e-mail
������� ��� ����� �������� - ��������� ����� ����������� e-mail
�� ��
� Yahoo <
http://www.yahoo.com> ��������� ��� e-mail
� Lycos <
http://www.lycos.com> ��������� ���� ���� ����������� e-
mail (new email accounts)
� hotmail <
http://www.hotmail.com> ��������� ���� ����
����������� e-mail (new email accounts)
�������� ��� ����� ������������ ��� PostgreSQL ��� �� Yahoo ���
����� ��� �������� �������� �� ������������ ��� ������ ������
��� �� e-mails ��� PostgreSQL, ���� ���� �� �� ��� ������������ ��
�� ���� �������� ��� e-mail. �������� �� ���� Email- > Options- >
Filters ��� �������� ������ ������ ��� email. �� �� ��
��������� e-mail �������� �� �������� � �� �������� mail ��
��������� ���� ���� ���� ���� ������� �� web ������.
�� ���� ������ ���� e-mail, �������� �� ��������������� ��� �������
"Mail Filters" ��� �� ��������� ������ �� mails ��� PostgreSQL ��
������ ������. �� �� ��� ���� �� mails ��� ����� �������
��������� ��� �������� ��� �� ��������� �o��.
22.2. ������� ����� ������������
����� ��� ������ ������������ ���� �������� ������ ��� web ��� :
� <
http://www.postgresql.org/>
� �������� ��� Email ���:
[email protected]
� Developers
[email protected]
� Port specific questions
[email protected]
� Documentation questions
[email protected]
�� ������ ���������� ��� e-mail �� ������� �� ��� ����!!
�������� �� �������� ������ �� ������ ������������. ����� ������ ��
������� ����� '��������� ��� ����� ��������� e-mail'. ��� ��
�������� � �� ���������� �� ��� �����, ������� mail ���
�
[email protected]
�
[email protected]
�
[email protected]
�
[email protected]
�� ���� ����� (body) �� �������� �� ������� ��� ��� ������
������
subscribe
(�)
unsubscribe
22.3. ����� ��� ������ ������������
��������� ����� �� ����� ������������ �� html ���� ���� �������
��������� -
� ��������� ����� �� ���� ��� ��������� ��� MHonarc ��� WWW ���
<
http://www.postgresql.org/mhonarc/pgsql-questions>
� <
ftp://ftp.postgresql.org> ���� �������� /pub/majordomo
22.4. �������� ����� ������������
������ ��� ��� ��� "���������" ����� ��� ��� postgreSQL ���
��������. ����� ������ �� ������� ����� '����� ���������� ��� ��
��������� �� e-mails ��� PostgreSQL' . ��� �� ���������, ������ ��
�������� ��� ����� ���:
�
[email protected]
�� ���� ����� (body) �� �������� �� ������� ��� ��� ������
������:
inscripcion pgsql-ayuda
23. ��������� ��� �����������
23.1. ������ ��������� ��� ���������
�� ������� ����������������� ��� ������� ��� PostgreSQL �� ����
postscript ��� �� unix ������� �������� (man-pages). �� ����
������� ��� internet, �������� �� ������ �� ������� �� ����������
������� ��� <
http://www.postgresql.org/docs>
� "����� ������������"
� "����� ������" ��� ��� PostgreSQL
� "����� ��������-����������" �� ������������ ��� ��� ���������
���������� ��� PostgreSQL.
� Online ���������.
� Online ��������� �� HTML ����.
� ������, ��������� �� ���� Postscript ��� ������.
23.2. Online ���������
� ����� ��� �������� �� �������������� ��� �������� ���
�������
����� ����� �� ������ PSQL ���� ������ 6.4.
� ����� �� ������������� SQL ����� ������� (keywords)
������ ��� script ���� �������� /tools ��� �� �� ������ ��
� ������ �� ������������� ������ -
�������������� ��� ������ psql \h
� ������� ������� �������� ����� �������� ��� PostgreSQL
(���������) ��� ������ online ������������ (��������) -
�������� ��� regression tests ��� src/test. ���� �� ������ ��� ��������
regress/sql ��� suite/*.sql.
� ����� ��������� ��� ��� PostgreSQL.
�� ������ SQL scripts ��� �������� ��� SQL ���� �������� src/tutorial
����� ������ �� "����� ��������� SQL ��� �������" ��� Appendix B
��� �� ������� ``''
23.3. ������� ����������� �������
� "Understanding the New SQL: A Complete Guide" - �� ��� Jim Melton
��� Alan R.Simon
�� Morgan Kaufman Publisher ����� ��� �� �� ������� ������ ��� SQL. ��������� �� ��� SQL92.
� "A Guide to THE SQL STANDARD" - �� ��� C.J.Date
� �������� Addison-Wesley Publishing ��� ������ ��� ���� ������. ��� ������� ������ ��� SQL.
� SQL - The Standard Handbook, ��������� 1992
Stephen Cannan ��� Gerard Otten
McGraw-Hill Book Company Europe , Berkshire, SL6 2QL, England
� SQL Instant Reference, 1993
Martin Gruber, Technical Editor: Joe Celko
SYBEX Inc. 2021 Challenger Drive Alameda, CA 94501
� C.J.Date, "An introduction to Database Systems" (6th Edition),
Addison-Wesley, 1995, ISBN 0-201-82458-2
��� �� ������ ����� � ������ ��� ���������� �������� ����� ��������.
������� ���������� ��� ��������������, SQL, recovery, concurrency, �������,
integrity, ��� extensions ��� ���� ������ �������, ������� ������
��� client/server �������� ��� ���������������� �������. ������
������� ����������������� ��� ���� ����� �� ����� ����������. �� �������� ���� ����������� �������.
� Stefan Stanczyk, "Theory ��� Practice of Relational Databases", UCL
Press Ltd, 1990, ISBN 1-857-28232-9
������� ������������ �� ����� ������� �����, ������� �������, calculus
��� ��������������. ���� ��� ������� ������ �� ���������� ���� ��� ������������ ��� ������. �� �������� ���� ����������� �������.
� "The Practical SQL Handbook" ����� ������, Addison Wesley
Developers Press ISBN 0-201-44787-8
�� �������� ���� ����������� �������.
� Michael Stonebraker, "Readings in Database Systems", Morgan
Kaufmann, 1988, ISBN 0-934613-65-6
�� ������ ����� ��� ������ �� ������ �� ��� ���������� ��� �� ����� ������ �� ������. ��� ����� ��� ��� ��� ������ ���� ����� ��� ���� ������ ��� ���������� (�����������) �������� � ��������������� �������� ����� ��������.
� C.J.Date, "Relational Database - Selected Readings", Addison-
Wesley, 1986, ISBN 0-201-14196-5
�� ������ ����� ��� ������ �� ������ �� ��� ���������� ��� �� ����� ������ �� ������. ��� ����� ��� ��� ��� ������ ���� ����� ��� ���� ������ ��� ���������� (�����������) �������� � ��������������� �������� ����� ��������.
� Nick Ryan ��� Dan Smith, "Database Systems Engineering",
International Thomson Computer Press, 1995, ISBN 1-85032-115-9
��� �� ������ ��� ������������ ��� ������ ��������, ��� ������� ����������.
� Bipin C. Desai, "An introduction to Database Systems", West
Publishing Co., 1990, ISBN 0-314-66771-7
��� ����� ��� ��� ��� ������ ���� ����� ��� ���� ������ ��� ���������� (�����������) �������� � ��������������� �������� ����� ��������.
� Joe Celko "INSTANT SQL Programming"
Wrox Press Ltd.
Unit 16, 20 James Road, Tyseley
Birmingham, B11 2BA, England
1995
� Michael Gorman "Database Management Systems: Understanding ���
Applying Database"
Technology
QED ��� John Wiley
1991
� Michael Gorman "Enterprise Database for a Client/Server
Environment" QED ��� John Wiley
���������� ��� ���������� ��� �� �������� client/server �������� �����
��� repository ����������� ��� ��� ������ ANSI ������� SQL
1993
����������� ����� ������ ����� ���������� ��� SQL ! �������� ���
�����������.
23.4. ������� ���������� ANSI/ISO SQL - SQL 1992, SQL 1998
�������� �� ������ ������� ���������� ANSI/ISO SQL ��� �������
sites -
� <
http://www.naiua.org/std-orgs.html>
� <
http://www.ansi.org/docs> ��� ��������� ��� ����� cat_c.html ���
����� ��� "Database SQL"
� SQL92 standard <
http://www.jcc.com> ��� ��������� ��� �����
sql_stnd.html
� ANSI/ISO SQL �����������
<
http://www.contrib.andrew.cmu.edu/~shadow/sql.html> �� �� ������
��������� ��� SQL.
23.5. ������ ANSI/ISO SQL 1992
����� �� Appendix A ��� �� ������� ``''
23.6. ������ ANSI/ISO SQL 1998
�� ����������� SQL 1998 (SQL 3) ����� ���� �� �������. ����� ��
'Electronic Access to the SQL3 Working Draft' ��� �� ������� ���
``''
23.7. ����� ��������� SQL ��� �������
����� �� Appendix B ��� �� ������� ``''
23.8. �������� �������� (extension) ��� SQL92
� ������� ��� �������� �������� SQL-92
<
ftp://FTP.cs.arizona.edu/tsql/tsql2/>
� ��������� ����������� SQL-3
<
ftp://FTP.cs.arizona.edu/tsql/tsql2/sql3/>
� ��������� ������� ��� ����������� ��� ������ ��� ��� ��������
�������� ��� ������� ����� SQL-92. ���� � ��� ����� ����������
TSQL2.
�� ����������� ��� ������ �� ������������� �� ����� � ������
������ ��� ������.
� ����������� ������ �� ������ ���� ������ �� TSQL2 Language Design
Committee, Richard T.Snodgrass, Department of Computer Science,
University of Arizona, Tucson, AZ 85721,
�
[email protected]
�� ��������� ��� �� ��������� e-mail �� ���� �� TSQL2
Language Design Committee ������ �� ������ �� ������ ����� ���
����� �� ���������� ��� ������.
�� ��������� ��� �� ������� ����� ��� ������������� �������.
spec.dvi,.ps ����������� ������ TSQL2, ������� �� ���������� ��
1994
bookspec.ps ����������� ��� ������ TSQL2, ��� ����������� ���
������ TSQL2, �� ������� �� ���������� �� 1995 (����� �������).
sql3 ������ �� �������� �� ����������� ���� ���������
ANSI ��� ISO SQL3.
���� �� ��� ����������� ��� ������ ��� ��������� ��� ������ ��
���� �� ����� �� �������� ��������, ����� ������������, ���
����� ��� �� �� ������ �� ���������� � �����. ���� �� ���� ����
����� ��������� ���� �������� �� TSQL2 Language Design. ���
��������� ��� ����������� ����: �� ������ ������������ �� ���
��� �������, ������ ��� ������ �������� �� �������� ���� ��
������� ��� ������, ��� �� �������� ��� TSQL2 �� ������ �����
��������� ��� ������ �� ��� ����� �� ��� �������� �������������.
�� ������ �� ����� ����� ��� ��� �� ���� ��� ����� ����� ��
���������� ��� ������ TSQL2, ���� �� ��������� ��� ���������
�� ���� ���. �� ���������� ����������� ��� ������ ����� � ��������
���� ���� TSQL2.
�� ����, ���� �� ��� ����������� ��� ������ , ������� �������
(indexes), ��� ���� ���� �����������, ��� ������� �� ��� ������:
Snodgrass, R.T., editor, The TSQL2 Temporal Query Language, Kluwer
Academic Publishers, 1995, 674+xxiv �������.
�� �������� ����������� ��� ������ �� ��� ���������� ����. ��
�������� ��������� ������� �� ��� �������� ��� ����� eval.ps
�� ����� tl2tsql2.pl ����� ��� �������� �� prolog �� ��������� ���
����������� �������� ������ �� TSQL2. ��� �� �������� ������� ��
��� Michael Boehlen
�
[email protected]
�������� �� ������������� ���� �� ��� ��� paper �� ���������
��� �� ��������. ��� ����� ������ ��� dated ������ ��
������������. ������� ������� ����� ���������� ���
� <
http://www.cs.auc.dk/general/DBS/tdb/TimeCenter/Software>
(�� �������� TimeDB ��� Tiger).
23.9. ����� 0 - ��������� �� ������� ISO/ANSI SQL
��� �� ������� ��� ������ �� �� ���������� (�����) ��� ��������
�� ������ SQL-92 ��� �� "��������" SQL3 Working Draft.
��� ANSI ����� ��� ��������� ��������� � ANSI, ��� ����� ISO �
ISO.
������ �� (2) ������� ����� SQL, � ��������� ANSI ��� �
��������� ISO. �� �� ��� ����� ����� ������ ���� ���� ���� ����
�� ���������� �������� ��� � ������ �� �������, �� �����������
��� �������, � ����� "International Standard" ���� ��� "American
Standard", ��� �����.
����������� �� ����� SQL-92
�� ����� ISO standard, ISO/IEC 9075:1992, Information Technology -
Database Languages - SQL, ����� ��������� (�������, 1993) ��� ANSI :
American National Standards Institute
1430 Broadway
New York, NY 10018 (USA)
Phone (sales): +1.212.642.4900
��� �������� US$230.00. H ANSI ������, ANSI X3.135-1992, American
National Standard ��� �������� ��������� - Database Language SQL,
��� ���� ��������� ���� ����� ���� ������� �� �� �������, ����
��������� �� ����� ��������� ����� ���� ������ ��� ���� ���,
1993). �� ����� �� ���������� �� ��� US$225.00.
�� ��������� ������ �� �� ������� �� �� ANSI, �� ���� ����� �����
��� ����� �������� 7% ���������� (������, ������ US$9.10). ���
����� �������� �� ����� �������� �� ����� ��������� ����
����������. �� ANSI ������� ���� ���������� �� ��������� �� ���
����� ����������� ��� ���������. �����������, �������� �� �������� ���
���� ������������ �������� � �� ����������� �������, �� ����� ��
�������� ���� �� ������� � ���������� ���. (������ ��� ��������: ��
� �������� ��� ����� ���������� ����� �� ANSI, ��� �� ANSI �� ���
������� �� ������� ��� �� ������ ��� �������� ���.)
�� ����� ISO ����� ������ ��������� ���� �������� �� ������ ������
������� (������� ������������� ��� ����) �� ����� ���� ���� �� ISO
(������� ��������� ���������� - International Organization for
Standardization) � �� IEC (������� ������������� �������� -
International Electrotechnical Commission).
�������� ��� ����� �� ������ ������� ��� �� ��������� ��� �����
���������� �� �� ANSI � �� ���� ������ �������. ����� ������
��������� �� �� ISO:
International Organization for Standardization
Central Secretariat
1, rue de Varembi
CH-1211 Genhve 20
Switzerland
�� ��������� �� ������������ �� ����� �� ��� ����� ��� �������
����, �� ������ �� �������� ��� �� ���� �� �� �������. ��������
�� ������������ �� ISO/IEC 9075:1992, Information Technology -
Database Languages - SQL, �� ��:
Global Engineering Documents
2805 McGaw Ave
Irvine, CA 92714 (USA)
USA
������� (�� ����������� ������): +1.714.261.1455
������� (��� ��� �������): (800)854-7179
��� �������� US$308.00. �� ��� �� �� ��� ��� ���� �����������������
�� ����� ��������� � ���, ���� ������ ��� � �������� ��� �������
(���������) �� �������� ����������. ������ �� ��� ������� ��
������� ������ ������� ��� ������� ��� ��� "��� ������ ���������
������". �� Global ��� ��� ���� ��� ANSI ������ ��� ��� ���� �
��� ���������� ���������� (�� ��� ��� ������� ��� �� �������
��������� ���� �� ��������� �� ANSI ��� �� ���� �� ���
US$300.00).
����������� ��� �������� �� SQL3 Working Draft
�������� �� ��������� ��� ������ �� SQL3 working draft �� �� ANSI
X3 Secretariat, CBEMA (Computer ��� Business Equipment Manufacturers
Association). ����� �������� ��� "��� ������� �������" �� SQL3
working draft ��� ��� ���� �� US$60.00 ���� US$65.00. �������� ��
������������� �� �� CBEMA ���:
CBEMA, X3 Secretariat
Attn: Lynn Barra
1250 Eye St.
Suite 200
Washington, DC 20005 (USA)
�������� �� ������������� �� �� Lynn Barra �������� ���
+1.202.626.5738 ��� �� �������� ��� ��������, �� ��� �� mail �����
����������.
����������� ������� ��� SQL3 Working Draft
� ��� ������ ������ (�� ������ ��� ������� �� �������) �� SQL3
(��� ��� ANSI ��� ISO) working draft (��� ��� �� ������� ��) �����
��������� �� "anonymous ftp" � �� "ftpmail" �� ��:
gatekeeper.dec.com
��� ��������
/pub/standards/sql/
�� ��� ��� �������� ������ ����� �����. ������ �����
PostScript ��� "plain text" (��� ���������� ������������, ����
����������� �� ��� ���� ����� ��������� ��������).
������, �������� �� ������ ����� �� ������ ���:
sql-bindings-mar94.ps
sql-bindings-mar94.txt
sql-cli-mar94.ps
sql-cli-mar94.txt
sql-foundation-mar94.ps
sql-foundation-mar94.txt
sql-framework-mar94.ps
sql-framework-mar94.txt
sql-psm-mar94.ps
sql-psm-mar94.txt
���� ���������� ���� ������� �� �������, �� "mar94" �� ������� ���
�� ������ �� ��� ���������� ��� ���������� (�.�., "aug94" ����� �
���������� ���������� ��� ������� ���������� ���� �� "mar94").
������, ��� ��� ��������� �� ��� ������ �� ��� ��� ����� ��
������� �� FTP, ���� ����������� ���� ���� �������� ��� ����� ��
�� �����:
ls
��� �� ����� (�������!) ������� �� ����� �� �������.
��������� ����� ��������� �� ����� �� ftp
��� ����� ��� ���������� ��� �� �� �� �������������� �� FTP.
�����������, ������ �� �� ��������� ��� gatekeeper.dec.com, ��
���� ���� �������� ��� ���������� �� ����� �������, ��� ��
��������� �� ������� ��� ������� ���. �������� ��� �� ������� ���
������ �� ��� ������� ��� Internet ��� �� �� ������ ��. �� login
����� 'ftp' ��� � ����� ����� � email ������� ��� (�� �����
���� ��� ��� ����� ftp 'anonymous ftp'). � ������ 'type binary'
��������������� ��� �� ��������� ��� �� �� ������ ������ bits ��
��(�) �����(�) �� �� ������. H 'get' ��������� ��� ����� �� ����.
�� ���� ��� ������� script ����� ���� �� angle brackets < ��� ���
> .
% ftp gatekeeper.dec.com
Connected to gatekeeper.dec.com.
220- *** /etc/motd.ftp ***
Gatekeeper.DEC.COM is an unsupported service of DEC Corporate Research.
<...this goes on for a while...>
220 gatekeeper.dec.com FTP server (������ 5.83 Sat ... 1992) ready.
Name (gatekeeper.dec.com:<yourlogin here>): ftp <anonymous also works>
331 Guest login ok, send ident as password.
Password: <enter your email address here >
230 Guest login ok, access restrictions apply.
Remote system type is UNIX. <or whatever>
Using binary mode to transfer files.
ftp> cd pub/standards/sql
250 CWD command successful.
ftp> dir
200 PORT command successful.
150 Opening ASCII mode data connection for /bin/ls.
total 9529
-r--r--r-- 1 root system 357782 Feb 25 10:18 x3h2-93-081.ps
-r--r--r-- 1 root system 158782 Feb 25 10:19 x3h2-93-081.txt
-r--r--r-- 1 root system 195202 Feb 25 10:20 x3h2-93-082.ps
-r--r--r-- 1 root system 90900 Feb 25 10:20 x3h2-93-082.txt
-r--r--r-- 1 root system 5856284 Feb 25 09:55 x3h2-93-091.ps
-r--r--r-- 1 root system 3043687 Feb 25 09:57 x3h2-93-091.txt
226 Transfer complete.
ftp> type binary
200 Type set to I.
ftp> get x3h2-93-082.txt
200 PORT command successful.
150 Opening BINARY mode data connection for x3h2-93-082.txt (90900 bytes).
226 Transfer complete.
90900 bytes received in 0.53 seconds (166.11 Kbytes/s)
ftp> quit
% <�� ����� ����� ��� ���� ������� ��� ��� x3h2-93-082.txt>
��������� ����� ����� �������� ���������� ftp
� Digital Equipment Corporation, ��� ��� ������ ����� ���������,
������ �������� ftp email. � �������� ������ �� ��������� ��� ��
������ ������� �����, ���� ������ ��� �������� �������� �� �� ftp
��� ���� �� ��� ��� �������� ftp ������� ��� Internet. �
������� �� server �����:
[email protected]
�� ������� script �� ��������� �� PostScript ����� ��� ���������
������� �� SQL3 �������:
reply
[email protected]
connect gatekeeper.dec.com anonymous
binary
compress
�� ������� script �� ��������� �� PostScript ����� ��� ���������
������� �� SQL3 �������:
reply
[email protected]
connect gatekeeper.dec.com anonymous
binary
compress
uuencode
chdir /pub/standards/sql
get x3h2-93-091.ps
quit
� ���� ������ �� ��� ������� �� script ���� �� �� ����������
(server) �� ��� ��������� �� �������� �����. �� ������ ��
��������������� �� "
[email protected]" �� ���
������� ��� ��� Internet. �� ����� �� �� �� ����������,
x3h2-93-091.ps, ����������� �� ���� "compress"ed "uuencode"d ��� 34
���������� ������� email. �� �� ���������� ��� ��� ������ ��������
��� ������������� ������ �����, ��� �������� �� ���������� ��
����� ��� plain text �� �� ������ script:
reply
[email protected]
connect gatekeeper.dec.com anonymous
chdir /pub/standards/sql
get x3h2-93-091.ps
quit
���� ��� �������������, �� ����� .ps ��� ������ �� ������� ��
���������� �� 70 �������!
��� �� ���������� ����������� ���� ����������� �����, ���� ��
x3h2-93-091.ps, ���� �������������� �� "x3h2-93-091.ps" �� �� �����
�� ����� �� ���������. ��� �� ������ �� ����� ��� ��
��������� ����� �� �������, �������������� �� "get
x3h2-93-091.ps" �� �� "dir".
23.10. ����� 1 - ������ ��������� �� ISO/ANSI SQL
��� �� ������� ����� ��� ���� ���������� ������ �� ��� �����
��������� SQL ��� ��� ������ ��������� ���.
������ ���������:
� ������� �� ����� �� ������� ��� �� ���������� ��� SQL �� ���
����������� ������������ ����� ��� ��� �������� ��� ���������
persistent, ������ �����������. ��� ������������ : generalization
��� specialization hierarchies, �������� ��������������, ����
�������� ����������� �� ��� ������, triggers ��� assertions,
���������� ��� ������� ��������, ����������� ��������, ��� ��������
�������� ���������� ��������. ������������ ������ ��� �����������
�� �������� ��� �������� (abstract data types -ADTs), object
identifiers, ������, ��������������, ���������, encapsulation,
��� ���� ��� ������� �� ���������� �� �� ��������� �������� ��
�����������.
�� ������� �� 1996, ������ ������� �� SQL3 ������� �� �������
ISO CD. ���� ���� �� SQL/Framework, SQL/Foundation, ��� SQL/Bindings.
���� � ������� ����� (��� ���� ����������) �� 900 � ������ ���
����. ��� ���� ��������, ����� ������ �������� ������� �� ISO
DBL ���� ��� ����� �������������� ����� ��� ��� ������ �����
���������� �� ����� ���� ����������� �� ���� ��� �������� ����
��������� ��� ������� papers. ��� ��� � �������� ������� �� DBL
��� ������ �� ������������ ��� �� ����, � �������� �������
����������. � ��������� ��� ��������� ������� ���������������� ���
�� ���� �����, 1997, ��� �������.
���� �� �������� ������� �� �����, ���������� �� ������� ���
������ ������� ��� ��� ��� �� ������� ��� SQL. � ���������� ��� ���
������ ������� �� �������� 6 ������ ����� ��� �� ����� ���
�������� ������� DBL, ���� ��� ����� �� ����� ��� ������� DIS ���
��� ������ ������� ������� IS .
�� ����������� ISO ��� ������� �� �� SQL/92, ���� �� ��������� ���
��� SQL ������ ���� ��� ��� �������� �� ������ ����������� ���
�����������.
�� ���� ��� ����, ��� �� ������� ��� SQL3 �� ����� ��� �������
����� ISO/IEC ��� ���� �� 1998, ���� �� �������� ����� ���
���.
�� 1993, �� ��������� �������� ANSI ��� ISO ��������� �� ������� ��
���������� ������� ��� SQL �� ��� �������� �����. �� ������� ���
�����:
� ����� 1: Framework ��� �� ������ �������� ��� �� �� �����
�������� �� �������.
� ����� 2: Foundation �� ����������� �� ���������,
����������������� ��� �� ��� �������������� ADT.
� ����� 3: SQL/CLI �� Call Level Interface.
� ����� 4: SQL/PSM �� ����������� �� stored procedures,
����������������� ������������ ���������.
� ����� 5: SQL/Bindings �� Dynamic SQL ��� Embedded SQL bindings ��
�������� �� �� SQL-92.
� ����� 6: SQL/XA �� ����������� SQL �� �������� XA Interface ��
����������� �� ��� X/Open
� ����� 7:SQL/Temporal ��������� ��� ����� SQL ��������� �������
�� �� ����.
���� �������, ������� � SQL3 ������������� ��� ��� ANSI Domestic
("D") project ��� ��� ISO project. �� ���������� ������ ������� ���
��� ��������� ��� SQL3 ����� �� 1999.
�� SQL/CLI ��� SQL/PSM �������������� ��� ���������� ������� ���
addendums ���� SQL-92. ���� �������, ��� �������������� ��� ���
������ ���� (International - "I"). � SQL/CLI ����������� �� 1995. �
SQL/PSM ������ �� ��� ���������� ��� ���� �� 1996.
���������� ��� SQL3 ��������, ���� ������ �������� ���� are
persued:
� SQL/MM ��� ���������� �� ������� ����� ������ �������
�������������� ��� ��������� ��� SQL3 ADT.
� ������� �� ������������ �������� - Remote Data Access (RDA)
��������� ������ ��� ���������� ������ ���������� ������� ������
�������� ������ SQL �� ��� ��� ����. ������ ��� ������� �����
�� ������ SQL ��� ����� �� ISO. ������ ����� ��� ��������� ��
��������� �� ��� SQL. ����� �� ����� (�����) �������
����������� ���� ���������� ISO/IEC JTC1/SC 21/WG3 DBL. �� �����
�� �������� ������ ��� ���������� �� ������ ISO SQL ����� ��:
� ���������
� ��������
� �������
� ������
� ��������
� ������
� �����
� ��������
� ������
� �������
NIST ������������
�� ����������� ��� SQL �������������� (���� �������) �� �� �����
��������� ������ ��� ����� (NIST). �� NIST ��� ��� ��� ��� ���
����� �� ���� ���������� ��� �� entry level SQL-92. �� ��������
���������� ��� ��� ���������� ��� NIST ������������� ������������ ��
����������� ����� ������������ ���������� - Federal Information
Processing Standard (FIPS). �� ������� ���������� ��� ��� SQL
��������� ��� FIPS 127-2. �������� �� ������ ��� ������� Postscript
��� Text ������� ��� �� ������� �� �� NIST. � ����� ��
������ �������������� SQL ������ ������ ������ �� ������ ���
NIST.
������� ��� ����� ������ �� �� ����� ��� SQL
������ �� ������� ������ �� �� ����� SQL. ��� �� ��
����������� �� �� ANSI:
� ISO/IEC 9075:1992, "Information Technology --- Database Languages
--- SQL"
� ANSI X3.135-1992, "Database Language SQL"
�� �� ������� �� ������ SQL ����� ������� ���� �� �� ������
��� ��� ������� �� ���� �����. ��� �� �� ����������� �� �� :
American National Standards Institute
1430 Broadway
New York, NY 10018
USA
Phone (sales): +1.212.642.4900
���������� ��� ����� SQL-92, ������ ��� Technical Corrigendum
(��������� bug):
* Technical Corrigendum 1:1994 to ISO/IEC 9075:1992
�� TC 1 ������ �� ���������� ������ �� �� ANSI. ������ ��� � ISO
������ �� TC 1 -- ��������� ��� ���� ISO ��� ANSI ������ ��
SQL-92.
����������, ��� ������ ������ ������ ������ �� �� ����� 1992
SQL. ���� �� ������ ������ ��� ������� ��������� �������� ��
������ �� ��� �� ���� �� �����.
��������� �����
���� ����� ������ ��������� ��� SQL ��������. ��� �� �����
������� ������� �� ���������� ��� ���� ��� �����������. ����� ��
������� �� ������ ���� ����� ���������� ����������� ��� web.
� ������������ SQL (FIPS 193)
� Repository �������� ������� ������ (X3H4) - ��� News Release ��
���� ������� ��� "������������ ����� ��� Repository ��������
������� ������."
23.11. ����� 2 - ISO/ANSI SQL Foundation
��� �������� ����� ��� SQL3 ����������� ��������� ��� ������� SQL
Foundation :
� ������� ��������� SQL/PSM (moved form SQL/PSM-92)
� ���� ���� ��������
� Triggers
� ����������
� ���������� ���� �������� - Abstract Data Types (ADT)
� ������������������ ���������
������ ������ ������������� ���� ������������������ ���������:
� �������� �� ������� ������� ����������
� ��������� ������ ��������� ��� ����
� ����� �������� ���������� � ������� ���������� ������ �� ���
����� �� SQL, � ������ �� ������� ��������� �����������
����� �� ��������� ��������� ��� ����� �� SQL/PSM
������� ��� ��������� ������� ��� �� ������������ �� �������
����������� SQL-3 ��� �� ������������ �� �� ������� �����������
�� ��������� �� �� ODMG. ���� � ���������� ����������� ��� X3H2 ���
ISO DBL paper: Accomodating SQL3 and ODMG. ����� ������ ��������� ���
������ ������ ��� SQL3/OQL Merger.
SQL3 Timing
� ������� ��� ��� SQL3 ��������� �� �������, ���� �� ������ �����
�� ��������� ����� ���� ��� �� ����������.
� ������� ������� ��� ��� ����� �� SQL3 Foundation �� ��
������ ����� �������� �� �� ������ ����� ��������� (Committee
Draft - CD) ����� ���� �� ������� �� 1996.
� � ������� ���������� �� ���������� ����� ����
� ����� ����� �� ������� ��� ������ ������� CD
� ��� Draft ������� ������ ������ ����� ����� �� ����� ��� ����
�� 1998
� �� ������� ����� ������ �� ���������� ��� ���� �� 1999.
� ANSI ������ �� ������ ��� ������� ��������������.
23.12. ����� 3 - ISO/ANSI SQL Call Level Interface
�� SQL/CLI ����� ��� ��������������� interface ������� ������ ���
SQL ������. ���� ��������� ��� �� ����������� ������� �� ������ ��
shrink-wrapped ��������. �� CLI ������������ ����� �� ���
����������� �� SQL Access Group (SAG). �� ����������� �� SAG/CLI
�������� ��� ��� ����������� �� Microsoft Open DataBase
Connectivity (ODBC) �� 1992. �� 1993, �� SAG ������� �� CLI ����
��������� ANSI ��� ISO SQL. (�� ����� SQL Access ��� �������
��� �� �� X/Open consortium.)
�� SQL/CLI ������ ��� ������� ����� ��� :
� CLI ���������� ����������, ��� ������� �� ������ SQL
� Client-Server �������� �� ������ �� ��� ������� �� ��� ����
��� ������� ����������
� ���������� ��� ��������� ������ ���� �������� Client-server
SQL/CLI Timing
��� ������� ��� ���������� ����������, �� SQL/CLI ������������� ��
������ ������������.
� �� SQL/CLI ����� ��� �������� �� ������ 1992 SQL (SQL-92)
� ����������� ��� ����� ISO �� 1995
� ISO/IEC 9075-3:1995 Information technology -- Database languages --
SQL -- Part 3: Call-Level Interface (SQL/CLI)
� � ������ SQL/CLI ���������� �� ������� ����� �� ���������
���������� ��� �������������� ��� SQL3
23.13. ����� 4 - ISO/ANSI SQL Persistent Stored Modules
�� SQL/PSM ���������� ��� SQL ������������:
� ��������/������������� ����������
� Multi-statement ��� Stored Procedures
� ��������� ���������� ��� ������� ����������
���� �� ��� ����� ��� ������� �������� �������� �������, ��
SQL/PSM ������ �� �������� ���������� ��� ������������������
��������� ���� SQL3.
Multi-statement ��� Stored Procedures
�� Multi-statement ��� stored procedures �������� ��� ��������
������������� �� ��� ���������� client/server:
� ������- ��� ��� ��� stored procedure ������ �� ��������� ���������
SQL �������, �������� � ������������� �� ��� ������ (client).
� ������� - ���� ������� ������ �� ��������� �� ������� �� �����
��� stored procedure �� ��������� ��� ������ � ��� ����� ������
���� ��� ��� �� ������� ��� �������� ��������� �� ������
� �������������������� ������ - � ������ �� ��� stored procedure
�� ���������� �� ���������� ��� �� ����������� ��� ���� client
�������� �� ��� ������� ��� ����.
� ������ - ������ ��� ��� ������ ������ ��� ����� ��� �������
��� ��������.
��������/������������� ����������
� ������������ ����� ��������� ��� �� ���� ������������ ������
�������������� ���� SQL ��� ������ ����� ���� ��� ��� ��������
���� ���������������� ��������.
������� ����� ����
� If-then-else
� Looping constructs
� Exception handling
� Case statement
� Begin-End blocks
�� ������������� ���������� ������������ ��� ����� �����������������
���������:
� ������� ���������
� ������� Set ��� ������� ����
� ��� ���������� ��� ��� ���������� ��� ���������� ����������
��������, ���� �� ������������ SQL ������� ������ �� �����������
�� ����������� multi-statement.
������� �������� ���������� ��� ��������� ��� ������������� ��
��������� ��� ���� �������� ������ �� �� �� ���������� ���
����� ������ �����, ��� �� ��� ���������� �� �������, ����� �
�������� �� ���������� �� ���������� �������������� ��
������� �� ����������� �� ��� ����� � ������� �������� ���� ���
�����.
� ��������� �� ��� ����������� site � ������� �� ��������� ���
����� �� ���������� ��� �� ����
� ������ �� �������������� �� ��� �������� ������ ��������
�� ����������� ���� ��� ��������� ����� ��� ����� ��� ���� (�����
��� ���� �������� �����) ������� �� �������� ����� ���������� ���
���������.
�������� �� SQL/PSM
�� SQL/PSM ��� �� �������:
� �� SQL/PSM ����� ��� �������� ��� SQL-92
� ������� ������� ��� ��� ����� �� SQL/PSM �� �� Draft �������
����� ��� ������� ����� ����������� ��� �������� �� 1996.
� � ��������� ��������� �� ���� �� 1996 ��� ������ ��� �� ����
� � ������ ��� ���������� ���������� PSM ���������������� �� ���
30 ���������� ���� ��� 4 ������� �� 1996
� �� �������������� ����� ������� ���� ������ ��� ��������� ��
������� �� PSM ���� ��� 1996.
� � �������� ������������ �� �����: ISO/IEC DIS 9075-4:199?
Information technology -- Database languages -- SQL -- Part 4: SQL
Persistent Stored Modules (SQL/PSM)
� ���� ��� ��������� ������ ��� ��� �������� ����������� SQL/PSM ���
�������������� ��� SQL3.
23.14. ����� 5 - ����������� - ��������� ISO/ANSI SQL/ ISO/ANSI
SQL/Bindings
��� ������ ������, �� ���������, ����������� ��� ������
�������������� ��� ���������� �� ��� ������ �������. �
������ ������ ����� ���� ��� �������� �� �� ����� ���
SQL-92(������� (dynamic) ��� ����������� (embedded)).
��������� ������������ ��� �������� ������ ���������� ��� ������.
���� ����������� ���������������� �����, ������ �� ������������ ��
��� �������� ��� SQL-92. ����� ���, �� ������ �� ������� ��� ��
������������ ����� �� ����������� ��� SQL ��� �� ��������� ���
����������������� ������..
��� ��� ������������������ ������, ������ �� ������� � ���������
��� ��� ���� �������� ��� SQL ��� ����� �� ������� �����������
��� SQL ��� �� ������� ����������� ��� ����������������� ������.
�� ������� �������� �� ������ �� ��������������� ���� ������ ��
������� ������ �� ������ ��� ����������.
�� ����������� ��� ������ �� ���������� �� ����� �� �����
SQL3.
23.15. ����� 6 - ISO/ANSI SQL XA Interface Specialization (SQL/XA)
�� ����������� ���� �� ���������� ��� ��������������� interface
(API) ����� ��� ������ ���������� ���������� (Transaction
Manager) ��� ��� ���������� ��� (Resource Manager) SQL. ��
���������� ��� ������� ���������, ���������� ��� ����� ��
ISO/IEC 10026, "Distributed Transaction Processing", �� ����
����������� ��� SQL �� ������ �� �����������, ��� �� ����� commit
�� ������ (two-phase commit) �� ����� ������� ������� �������� ��
��� ��������� �� X/Open, �� ��� ����� �� X/Open, �� ������������
���� ��� ���������� ����� ��� ���� ��� ��� �����������
(semantics), ��� ��� ������� ����������: xa_close, xa_commit,
xa_complete, xa_end, xa_forget,xa_open, xa_prepare, xa_recover,
xa_rollback, ��� xa_start.
� ISO �������� �� �������� ��� ����������� �� X/Open XA. �
���������� ���������� �������� ����������� ����������� �����
�������. � ������� ��� �� XA ��� ISO SC21, JTC ������� 1, �����
���� 27 �������, 1995 ��� ������� ���� 27 �������, 1995. �� �� 75
�� ����� �������� ��� ����������� �� XA, ��� �� �� 2/3 ��
p-���� �� JTC 1, �� ���������� ��� ������� �����. �� � �������
�� ��������, �� SQL/XA �� ������� �� ����� ��� ����� ���� ��� 1996.
23.16. Part 7 - ISO/ANSI SQL Temporal
� Temporal SQL ��������� �� ������� ��������� ��������. � ���� �����
�� ����� ������� �� ������� �� �������� ��� �� ���� �� ��������
������ �������� ������� ������. � Temporal SQL ����� ��� paper ��
��������� �� 1994 �� ��� Rick Snodgrass �� ��������� ���� ���
�������.
� X3 ���������� ��� ������� ��� ��� ����, ISO/IEC 9075 ����� 7�: �
SQL/Temporal ����� ��� ��������� ��� ������ �� ��� SQL/Temporal.
----------------------------------------------------------------------------
Temporal SQL
************
Rick Snodgrass (������� ��� ��������� TSQL2)
31-���-1994
������� ����������� ��� ������ �������� ����������� ���� ���� SQL3
(��� �� ����������� �� �� DBL RIO-75, ��� ��� ���� ��� ��� �����
��� SQL �� �� ����������� �������� (temporal) ������). � �������
��� ��������� ��� ��� �� ��������� ���� �������� (abstract data
types -ADT's) ����� ��� ������� ����������. �� �� �� ����������
�������, ����, ���, �������������� ���������� ������������,
���� �� �������������� ��� ������ �� ��������� ���� ��������
��� ����� ��� �������� ��������. ���������, ������ ������ ��������
��������, ����� ���� ������� �� ����������� �� SQL, ���� �������
��� �������� SQL �� ��� ������������ (procedural) �����. ��
������������ ����� ���������� �� TSQL2, ��� ������� �������� ����
SQL-92.
23.16.1. �������
� ���������� ����� ���� (Valid-time) ��������� ��� ��� �����
������� �������� ��� �������� (ADT). ���� ��������, ��� �����
�������������� ��� ��� ������ �����, ���� �� DATE ���� �� INTERVAL
(�� ����� ������������ ������). �� ��� ����� ����, �� �������
��� ������ �������������� �� �� ������� �� ����, ����
�������������� ��� � �������������. � ������� ������� (timestamp)
�� ��������� �� ��� ������ ��� ������ ����� ���� (valid-time
table) ����������� �� ��� ����� ������� �� � ������� ������ ���
��� ����� � ������� ���� �� ����� ��� ������� ������� ����
������. � ������ ��� ������� ���� �������� �������� ��������� ���
������� ��� ��� ������ �������.
23.16.2. �� ������- ���������� ���������/��������� �����������
�� ������ �������� �� ������������ ��� ������ ��� �������
���������� �� ��� ���� ��������, ���� ���� ������ ��� �� ����� ��
��������, ��� ������� ���� ���, ��� ��� ������ ���� ���. ���
������ �� ��������� �� ���� ��� ������.
Employee(Name, Salary, Title)
�������� ��� �� ������, � ����� �� ����� ��� �������� �����
�����.
SELECT Salary
FROM Employee
WHERE Name = 'Bob'
��� �� ������ �������� ������� �� ��������� ��� ��� ����������
��������. ��� �� �� �����, ��������� ��� ����� ���� ������, ��� ����
�������� �� ������ ����.
Employee(Name, Salary, Title, DateofBirth DATE)
� ����� �� �������� ��� �������� ����� ������� �� �� �� ����� ��
���� ��.
SELECT DateofBirth
FROM Employee
WHERE Name = 'Bob'
23.16.3. ������ - ���������� ��������� �����������
�� ������ �������� ������� ������� �� �������� ������� ��
�������� �� ����������� ����. ��� �� �� �����, ��������� ��
������, ��� �� ���������� ��� ����� ����� � ��������� ���
�������, ��� ��� ��� �� ��� ���� �� ����.
Employee (Name, Salary, Title, DateofBirth, Start DATE, Stop DATE)
��� ������� ��������, ���� �� �� ������ ����� �������� �� ��
DateofBirth. ����� ���, � ������� ��� ��� ��������� �������
��������.
23.16.4. ������ - ������� (PROJECTION)
��� �� ����� ��� ������� ���� ��� ��������, �� �������� �����
����� ���������.
SELECT Salary
FROM Employee
WHERE Name = 'Bob' ��� Start <= CURRENT_DATE ��� CURRENT_DATE <= Stop
���� � ������ ����� ��� ������ �� ��� � ����������. � �������
����� ������ �� �� ���� ������. �� ������ �������� ����� ��
�������� �� ���� �������� �� ���������� �� �����. ���������, ���
���� ����, �� ������ �� ���������� �� ������� ���������� ��� ����.
����, �� ��� ����� ���� �� SQL. ���� ��������� ��� ��� ����
����� ������ ����� ����� ����������� ������.
Name Salary Title DateofBirth Start Stop
---- ------ ----- ----------- ----- ----
Bob 60000 Assistant Provost 1945-04-09 1993-01-01 1993-05-30
Bob 70000 Assistant Provost 1945-04-09 1993-06-01 1993-09-30
Bob 70000 Provost 1945-04-09 1993-10-01 1994-01-31
Bob 70000 Professor 1945-04-09 1994-02-01 1994-12-31
����� 1
�������� �� ������ ����� ������� ��� � ����� �� Bob ���������
������� ���� $70,000. �� �� �� ���������� �� ������ �� ���� ��
������� ��� ��� Bob.
Name Salary Start Stop
---- ------ ----- ----
Bob 60000 1993-01-01 1993-05-30
Bob 70000 1993-06-01 1994-12-31
��� ����������� ��� ����� �� ����� ���� ������ ��� ������
��������� ����� ��� �����, ��� �� ������ ��� ������ �� ���������
��� ������ � ����� ��. � ����������� ��� ��� ����� ��� �������� �
����������. ��� ������, ����� �� ��������������� ��� ��� ��� SQL
�������.
CREATE TABLE Temp(Salary, Start, Stop)
AS SELECT Salary, Start, Stop
FROM Employee;
�����������
UPDATE Temp T1
SET (T1.Stop) = (SELECT MAX(T2.Stop)
FROM Temp AS T2
WHERE T1.Salary = T2.Salary ��� T1.Start < T2.Start
��� T1.Stop >= T2.Start ��� T1.Stop < T2.Stop)
WHERE EXISTS (SELECT *
FROM Temp AS T2
WHERE T1.Salary = T2.Salary ��� T1.Start < T2.Start
��� T1.Stop >= T2.Start ��� T1.Stop < T2.Stop)
���� �� ��� ��������� ����� ������;
DELETE FROM Temp T1
WHERE EXISTS (SELECT *
FROM Temp AS T2
WHERE T1.Salary = T2.Salary
��� ((T1.Start > T2.Start ��� T1.Stop <= T2.Stop)
OR (T1.Start >= T2.Start ��� T1.Stop < T2.Stop))
� ����� ������� �� ���������� ������ �� ������������� � �����
��������� ��� �� �� �� ������ �� �������. � ���� ���������� N
����� ���� �������� ��������, ��� �� N ����� � ������ �� ������
�� ��� ������ ������������ � ��������� ������ �� ���� �����. �
��������� ������ �� ����������� ��� ������ �� ������ ��
������������� ��� �� ������� ��� ��� ������� �� �������.
��� ����� ����������� ����� �� ��������������� SQL ��� ��� ��
�������� ��� ������� (cursor) ���� ������. ��� ���������� �����
������� ������ �� ��������, ���� ��� ������ ��� ��� ����. �
���������� ����� ������������� ����.
DECLARE emp_cursor CURSOR FOR
SELECT Salary, Title, Start, Stop
FROM Employee;
OPEN emp_cursor;
loop:
FETCH emp_cursor INTO :salary, :start, :stop;
if no-data returned then goto finished;
find position in linked list to insert this information;
goto loop;
finished:
CLOSE emp_cursor;
�������� �� ����� �������� ����������� ��� ������
� ���������� ����� ������ ��� �� ��� ���������� ���� �������� ���
��� � �������� ����� ORDER BY Start.
�� ���� ��������, � ������, �� ����� ��� ������, ����� ������ ��
�������� �� ��� �������� ��������� ��� SQL-92. � ������ �����
���������� �� TSQL2.
SELECT Salary
FROM Employee
23.16.5. ������ - ����������� (JOIN)
��� ��� �������� ���������� ����� �� ������� �� ������� ���
������� ��� ������������ �������� �� ������������ �� ������� ����
�� ���������� �� ����, �� ���� ��� ��� ���������� ��������
(�������, ������� ��� ���������� ��������, ��� �������).
Employee1 (Name, Salary, Start DATE, Stop DATE)
Employee2 (Name, Title, Start DATE, Stop DATE)
� ������� Employee1 ��� �� �������.
Name Salary Start Stop
---- ------ ----- ----
Bob 60000 1993-01-01 1993-05-30
Bob 70000 1993-06-01 1993-12-31
�� ����� ��� � ������� Employee2 �� �������������.
Name Title Start Stop
---- ------ ----- ----
Bob Assistant Provost 1993-01-01 1993-09-30
Bob Provost 1993-10-01 1994-01-31
Bob Professor 1994-02-01 1994-12-31
�� ��� ��� ������, � ������� ��� ���������� �� ����� ��� ����
�������� ����� ����� �����.
SELECT Salary, Start, Stop
FROM Employee1
WHERE Name = 'Bob'
���� �� �� ����� ��� �� ������ �������� ������� ���� ������ �����,
���������� ����� (������, �� ��������� �� �� �.�. ����� ���� ������
��� ����� ��� ������ 1); ��� ����������� ��� ����� �� ������
��� �� ������� ��� �� ������ ��� ������ �� ���������� ���
��������. ��� ������ �����������, ����� �� ��������������� ���
SQL. ����, � ������ ��� ������ �� ����� ��� ������ ����������
�� �� ��� ������ �� Employee1 ���������� ������� �� Employee2.
������ �������� ������ �����������.
SELECT Employee1.Name, Salary, Dept, Employee1.Start, Employee1.Stop
FROM Employee1, Employee2
WHERE Employee1.Name = Employee2.Name
and Employee2.Start <= Employee1.Start and Employee1.Stop < Employee2.Stop
UNION
SELECT Employee1.Name, Salary, Dept, Employee1.Start, Employee2.Stop
FROM Employee1, Employee2
WHERE Employee1.Name = Employee2.Name
and Employee1.Start >= Employee2.Start and Employee2.Stop < Employee1.Stop
��� Employee1.Start < Employee2.Stop
UNION
SELECT Employee1.Name, Salary, Dept, Employee2.Start, Employee1.Stop
FROM Employee1, Employee2
WHERE Employee1.Name = Employee2.Name
and Employee2.Start > Employee1.Start and Employee1.Stop < Employee2.Stop
and Employee2.Start < Employee1.Stop
UNION
SELECT Employee1.Name, Salary, Dept, Employee2.Start, Employee2.Stop
FROM Employee1, Employee2
WHERE Employee1.Name = Employee2.Name
and Employee2.Start > Employee1.Start and Employee2.Stop < Employee1.Stop
�� �� ������� ��� �������� ����������� ����� ��� ������ ���
���������� �������. �� TSQL2, �� �� ������ ��� ������ �������
(temporal join) ����� ��� ������� �� ��������.
SELECT Employee1.Name, Salary, Dept
FROM Employee1, Employee2
WHERE Employee1.Name = Employee2.Name
23.16.6. ������ - ����������� �������� (AGGREGATES)
��� �� �.�. �������, ����� ����� � �������� �����; ���� ���
������� �� ����, �� ���� �����.
SELECT MAX(Salary)
FROM Employee
��� ��� �� � ����������� ������� �����������, �� ������ ���
������� �� ������� ����� ��� ��� ����. �� ������� ������ �����,
�� � SQL ��� ������ �������� ����������� ��������. � ������
����� �� ����� �� �������, ����� �� ������ ��� ��������� ��� ��
��� ���������� ����������� ��� �� �������. �����������, �� ���������
�� ������ ��������� ��� �� ���������� ��� ���������� ������ ��
��� ��� �� ����������, ��� ���� ��� �� �������. � �� ���������� ��
������� ������� ��� ������ ��� ��� ������ ��� ������ ����������
�����.
SELECT Salary
FROM Employee AS E1
WHERE NOT EXISTS (SELECT *
FROM Employee AS E2
WHERE E2.Salary > E1.Salary)
� ��������� ���� ������� ������� ����� ��� �� �� �� �������
����������. �� ������ ����� ��� ����������.
CREATE TABLE Temp (Salary, Start, Stop)
AS SELECT Salary, Start, Stop
FROM Employee;
INSERT INTO Temp
SELECT T.Salary, T.Start, E.Start
FROM Temp AS T, Employee AS E
WHERE E.Start >= T.Start and E.Start < T.Stop and E.Salary > T.Salary;
INSERT INTO Temp
SELECT T.Salary, T.Stop, E.Stop
FROM Temp AS T, Employee AS E
WHERE E.Stop > T.Start and E.Stop <= T.Stop and E.Salary > T.Salary;
DELETE FROM Temp T
WHERE EXISTS (SELECT *
FROM Employee AS E
WHERE ((T.Start => E.Start and T.Start < E.Stop)
OR (E.Start >= T.Start and E.Start < T.Stop))
��� E.Salary > T.Salary;
���� � ���������� ��������� ���� �������� ������. ���������� ��
��� ��� ������ ��� ��������� ������� �� ��� ������� ����������
��� ��� ��������� ������� �� ��� ������� ����������. ����
��������� ���� ��� ������� �� ������������� �� ������ ������ ��
�������� �� ��� ��-������ (subquery), ��� ����� �� NOT EXISTS.
������, ���������� �� ��� �������� ������ �� ������� ����������,
�� ��� ���� ���� �� ������������ ������� � ��������� �����. ���
������� �� ����������, ������� ������ SQL ����� ����������
���������������� ��� �� ����������, �������� �� ������
���������� (nested) ���������� �� ��� �������� �������� ��
�������� ���������.
��� ����� ����������� ���, ����� �� ��������������� SQL ��� �������
�������, ��� �� ����������� ��� �������� ����������� �� ��������
����� �� ��� ���� ����� �������������� ����������� ��������.
� ������ �� TSQL2 ����� ���������.
SELECT MAX(Salary)
FROM Employee
23.16.7. ��������
�� ����������� �������� �� ���� �������� ��� �� ������������
��� �������� �� ������� ��������� ����� ������ �� ������������� . �
���������� �����-���� ����� ����� ���� SQL. ������ ������
�������� �������� ����� ����� ���� ������� �� ��������� ��� SQL,
� ������� �������� ��� SQL �� ��� ������� / ������������ �����
(procedural), �� ��� ������� ����������� ������ �����-���� ���
������� �������� ��� ���� �������� ������� ��� SQL.
�� ���� ������, ������� �� � ���������� �����-���� ������� ������
������� ���� ��������� ��� DBMS, ��� ������ �� ����������� ���������
������� ��������, �� ����� ������ �����, ��� ������� �� ��������
������ ������������ ��� ����������� ��������������� �� ������ ��
�������� �� ���������� ����������� �������.
�� �� ��� ����� ��� SQL3 �� ����������� ���������� �� �������
���������, ������� �� ������� �� ������� �� ������� ��������,
������������ ���� SQL3 �� ������������ ������� �� ������� ��������.
----------------------------------------------------------------------------
�������� �������� ������* X3, ��������� ���������
���������� ����
��. ������: PR/96-0002
�������� ���: Barbara Bennett ���
[email protected]
� X3 ���������� ��� ������� ��� ��� ����, ISO/IEC
9075 ����� 7: SQL/Temporal
Washington D.C., ��������� 1996
----------------------------------------------------------------------------
-- �������� �������� ������ X3, ��������� ��������� ����������
��� ������� ��� ��� ���� ���� ������� ���������� SQL
(SQL/Temporal), ISO/IEC 9075 ����� 7. � ����� �� �����������
������ ������������ ��� ��� ����� ��� �������� ����� SQL3, �.�.,
�� ����� 7, ������� SQL, �� ���������� ��� ������ SQL ��
����������� ��� �������� , ��� ����������� ������� �������� �� ���
���������� ���� SQL ����� ��������. � ������ ������� X3H2
���������������� ��� ��� 11-14 ������ �� 1996 ��� ������.
�������� ��� �� ���� �� �� ������ �� ������ ���
Chairman of X3H2,
Dr. Donald R. Deutsch,
Sybase, Inc., Suite 800,
6550 Rock Spring
Drive, Bethesda, MD 20817.
Email:
[email protected].
��� ����� �������� ��� �������� ��� ������ ������ (����������
�����������, �������� ������) (copyrights, trademarks) ��������� ���
��� ����. ��������� ���������� ��� �� ������ ��� ���
X3 Secretariat at
1250 Eye Street
NW, Suite 200,
Washington DC 20005.
Email:
[email protected]
FAX: (202)638-4922.
23.17. ����� 8 - ISO/ANSI ������� SQL (SQL MULTIMEDIA - SQL/MM)
��� ��� ������� ���� ���������� ISO/IEC ��� ��� ������� ����
����������� ������ SQL (SQL class library) ��� �������� �������
��������� �� ��� ���� �� 1993. ���� � ��� ������������
����������, ���������� SQL Multimedia (SQL/MM), �� ��������� ������
�� ������� �������� ��� �������� SQL (abstract data type- ADT)
�������������� ��� ������� ��� ��� �������� �� ADT ��� ���
������� �� �������� ���� ����������� ����������� �� SQL3. ��
SQL/MM ��� ��� ��� �� ���������� ��� ����������� ������ ��� ���
�������� ��� �������, ��� full-text ����������� �������, ��� ���
������ ��� ��������� ����������� ������� ��� �����, ���,
animation, ������, ��� ������. �� ������ ������ ��� SQL language
binding ����������� ������� �� ����� JTC1 ��������� �������������
(�.�. SC18 ��� �������, SC24 ��� ������, ��� SC29 ��� ���������� ���
��������� ������).
�� ����� ��� �� ���� ��� �� SQL/MM ������ ��� �� ����� ���
������� ����� �� �� ����������� �� ��� �������� �����
�������. �� ����� 1 �� ����� ��� ������� (Framework) �� ��
������������ �� �� ������������ �� ������� ����. ���� ��� �� ��
������� ����, �� ����� �������� �� ��� ����������� ������ SQL
�������. � ������� ���� ������� �� SQL/MM ������ �� ���
������� �� 1994:
� ����� 1: �������. �� ������ �������� �� �� �������� �� �������.
� ����� 2: ������� ������� ��� ADTs ��� ����������� ��������
�������. ���� ��� 45 �������.
� ����� 3: ������ ������� ��� ADTs ��� ��������� ������ ��������.
���� ��� 200 ������� �� ��������� �� ������� ��� ������
��������, �� ��������� 3 ����.
� ����� 4: ������ ������ ����� ��� ADTs ��� ��������� �������.
�� ��������� ������������ �������������� ��� ���������
����������, ���������, �����, ���. ���� �� ���� ���� ��� 90
�������.
������ ��� ������ ������� ������� ���� ����� ��� ����� ���
�������� ��������:
� ANSI X3L1 - Geographic Information Systems. Mark Ashworth of
Unisys is the liason between X3L1 ��� ANSI X3H2. He is also the
editor for parts 1, 3, ��� 4 of the SQL/MM draft.
� ISO TC 211 - Geographic information/Geomatics
24. ������ ���������� ��� ��� PostgreSQL
�� ���� ����������� ������ ������ � ���������� �����������
������� �������� �� �������� e-mail ���:
�
[email protected]
��� �� ���������� �������� �� e-mail �� ������� �� ��� ����.
���� � ���� �� ������ ��� internet ����� ��������, ��� ��
������� ����������� ��� ����� �������, �� internet �� �����
���� �� ���� ����� ������ ���������� �� ������������� �������.
� ���������� �� Email ����� ��� ��� ������ �� ��� ��������
���������� ���� �������� �� ������ cut ��� paste �� �������
����, ��� ����� �� ������������ ���. ��� �� �� ��������� �����
��� ����� ������������/newsgroup.
��� ������� ������, � ��������� ��� PostgreSQL �� ���� ������
���������� �� �������/������ ���������, �� ����� �� �� ������ ��
�������������� ��� �� �������� ������ mirror sites (web ��� ftp) ��
��� ��� ����. �� �������������� ������ ��� ��� ������� ���������
����������, ���������, ������ �� �� �������� ��� �������.
�������� ������ �� ���������� �� ����������� ��������� ��� �
Anderson, WGS (Work Group Solutions). ������������ ���� ��� ���
������� -
� Work Group Solutions <
http://www.wgs.com>
� Anderson Consulting <
http://www.ac.com>
25. ���������� ��� ������������� ������
�� ��������� ������ ������� ������ �����, ���������� �������� :
�������������, �����������, ������, ����������, ���������
��������, �������� ��������� ����������, �������� ��� ���
����������, ���� ��� marketing ��� ��������. ��� ��� �� ����� ���
�������� ��������� ��� ��� ������� ��� �����. ���� ��������� ���
�������� ����, ����� ��� ����� �������� ��� ����������� ��� �����,
����� ��� �� ������� �� ����� ��� ����� R&D.
�� ��������� ������, ������, ������ �� ������� ��� ������/��������
��� �� �������� ������ Unix, �� ��� ������������ ��� �� ���
���������. ��� ��� �� ����� ��������� ������ ��� ������.
� PostgreSQL ������� ������ �� �������� ����� ��� ��� ���
������� ����� ����� ���� ����������� ��� internet. ��� ��������
������ ������ ��������� ���� ������� ��� PostgreSQL. ���
����������, �� ��� ��������� ��������, �� ������ ��� ����������
��������� ���� ������� ��� ���� ��� ��������� 10 $ (���� ��
��������� PostgreSQL) ��� ���� ��� �� ����� ���� ����������
�������!! ���� ����� � ���� ��� �������� ��������� ��� internet.
���� ���, � ������� ������ ��� PostgreSQL ����� ������ 2,00,000
������� �� ����� "C", "C++". �� �� ����� ���� ������� ����� "C"
����� $ 2 ��� �� ������ ����� ��� PostgreSQL �� ���� ������ $
4,00,000 (���������� �������� �������!).
������ ��������� ��� ��������� ��������� �������� ����� "C",
"C++". ����, �� �� ����� ��� ������ ����� ��� PostgreSQL ��� ��
���������� �� ����� ��������� ��� internet �� �������� ��� ��������
�� ������������� ���� ��� ����������.
26. ����� ���� ����� ��������
������� �������� ����� ���� SQL ����� �������� ��� Unix, Linux.
� ������� ��� ��������� ��� Applications->databases.
<
http://www.caldera.com/tech-ref/linuxapps/linapps.html>
� ������� ��� ��������� ��� Applications->databases.
<
http://www.xnet.com/~blatura/linapps.shtml>
� ����� ��� ������ �������� <
http://linas.org/linux/db.html>
������� �� ��� Linas Vepstas:
[email protected]
� ����� ����� �����
<
http://cuiwww.unige.ch:80/~scg/FreeDB/FreeDB.list.html>
� ����� RDBMS �� Browne <
http://www.hex.net/~cbbrowne/rdbms.html>
������� �� ��� Christopher B. Browne
[email protected]
� ����� ������� DBMS �� SAL <
http://SAL.KachinaTech.COM/H/1/>
� ����� ���������������� DBMS �� SAL
<
http://SAL.KachinaTech.COM/H/2/>
� ����� ��������� ������� ��� ���� ����� �� SAL
<
http://SAL.KachinaTech.COM/H/3/>
� ACM SIGMOD. ������� �� ������ ��������� ��������� �����
�������� <
http://bunny.cs.uiuc.edu/sigmod/databaseSoftware/>
27. �������� ������� ��� ����������� ��� Internet World Wide Web
�� Internet ����� ��������, ������ �� �� �������� �������
��������� ��� ��� ������� ��������� �� ��� ��. ��������� ��
��� 300% ������ �� ��� ��� ����. ������������ ��� ������ ������
10 ���������� Web sites �� ��� �� ��!
��� �� ������ ��� ���������� �� ��������������� ������ ����������
��� �� "Yahoo", "Netscape", "Lycos" ���. ��������� ��� Yahoo ���
������� ��� search. �������������� ��� �������� �������������� ��� ��
������������������� �� �������� ����������. � default �������
���������� ����� � "����� ���������" ("Intelligent search") �� �����
��� ������ ��� �������� ���� ��� ����������. ������� ���� "��������"
("Options") ��� �� ��������� ��������� �� "������ �����"("EXACT
phrase"), ��������� �� "AND", �� "OR", ���. �� ��� ��� ���� ��
������ ��� ���������� �� ������ ��� ����������.
28. ���������
���� �� ����� �� ���� ��� ���������� ������ �� ����� ����� ��� �
������� ��� ������ ����� ����������, ���������� ��� ���� �
PostgreSQL ����� � ����������� �����, ����������� ���� �����������
��� ����, ����� ���� RDBMS SQL (�����������������-�������), ����
����.
� PostgreSQL ����� ��������� �������� ��� ��� ��� ��� ����� ������
������, ��� ��� ������ ODBC, JDBC �� ��� ������ ����� ���� ��
������ �������� ���������� �����. �� �������� �� �������� ����
PostgreSQL �� ����� ����� ODBC, JDBC ����� ����� ����������� ��
����� ������, ��� Oracle, Sybase ��� Informix. ������, �������� ��
��� ������ �� Oracle, Sybase ��� Informix �� ����� ����� ODBC,
JDBC ����� ����� ����������� ���� PostgreSQL.
������ �� ����������� "���� ����� PostgreSQL ;" � �������� ����� ���
��� ��� ���������� ��� ����������� ����� ��� �� �������� ��� ���
������ ����� �� ��� ���, ����� ����� �� ��������� ��� ������
����� �������� �� ���������� ��� ������� ������� -
��� ������ ����� ��������
� �� ����� � ������� ������ ����� ����������
� �� ��� ��� ����������� �� ������ ������, � ������ ������������
���������� �� ��
� �� ����� ���������� ��� internet
� �� ����� ����������� �� ��� ����� �����.
� �� ����� ���������� ����������� ������� ��� ��� SQL 3 (SQL 98)
� �� ����� ��� ����������� ���������
��� ���� �������� �� ����� � 'PostgreSQL' �� ���������� ����
���� ��� ������� ��� �� ����� �� ��������� �������� ��� ��� ���
��������.
29. ���� ���������� �������� ������ �� ��� PostgreSQL
��������� ���� �������� ������ �� FAQ ��� General, Linux ��� Irix
���
� <
http://www.postgresql.org/docs/faq-english.shtml>
30. ������� ��������� ���������
��������� ���������� (c) 1997 �� Al Dev (Alavoor Vasudevan). ��� ��
��������� ��� ��������.
��� ������ �� �������������� ������. �� ����� �������� �
�������� �� ������� ��� ����� ������� ��� ����������� �����
(����������������� ����� ���������, �� ������, ���������,
��������, � �����/ ������ �����, �������� �����, ������
������������� �����, ������� ��������, ������ �������������
��������, � ����������� ��������� ������) �� ������ �� �� �����
��� �� �������.
� �������� ��� ������� ��� �������, ����������, ����������� ��
�������. �� ������, ��������� ��� �� ������ �� ������ ��
���������� �� �� �� ������� ����� ���� ��������� �� ���������
���������. ��� ����������� ��� ������� ��������� ����������
����������� �� �������� ��� ������ �� ���������� �� �� ��
�������. ����� ���� ��� ���� �� ��������� ��� �� ���������� ��
��������� ���������� ����������� �� ��������� /��������/������
/������� �� ���������� �� �� �� ������� ���� �� ���������������
��� ���������� ����������.
AE. ��������� A - ������ �� ANSI/ISO SQL 1992
��� �� ����� ������� �� ���������� �������� �� ������������ ����� (depth-first tree traversal) �� BNF ��� �� �����, �� ����������� ���� 27-���-1992 11:03:41.64.
� ����������� ������ �� BNF �� �������������� �� ����� �: ANSI-only, SQL2-only.
<SQL terminal character> ::=
<SQL language character>
| <SQL embedded language character>
<SQL language character> ::=
<simple Latin letter>
| <digit>
| <SQL special character>
<simple Latin letter> ::=
<simple Latin upper case letter>
| <simple Latin lower case letter>
<simple Latin upper case letter> ::=
A | B | C | D | E | F | G | H | I | J | K | L | M | N | O
| P | Q | R | S | T | U | V | W | X | Y | Z
<simple Latin lower case letter> ::=
a | b | c | d | e | f | g | h | i | j | k | l | m | n | o
| p | q | r | s | t | u | v | w | x | y | z
<digit> ::=
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
<SQL special character> ::=
<space>
| <double quote>
| <percent>
| <ampersand>
| <quote>
| <left paren>
| <right paren>
| <asterisk>
| <plus sign>
| <comma>
| <minus sign>
| <period>
| <solidus>
| <colon>
| <semicolon>
| <less than operator>
| <equals operator>
| <greater than operator>
| <question mark>
| <underscore>
| <vertical bar>
<space> ::= !! <EMPHASIS>(space character in character set in use)
<double quote> ::= "
<percent> ::= %
<ampersand> ::= &
<quote> ::= '
<left paren> ::= (
<right paren> ::= )
<asterisk> ::= *
<plus sign> ::= +
<comma> ::= ,
<minus sign> ::= -
<period> ::= .
<solidus> ::= /
<colon> ::= :
<semicolon> ::= ;
<less than operator> ::= <
<equals operator> ::= =
<greater than operator> ::= >
<question mark> ::= ?
<underscore> ::= _
<vertical bar> ::= |
<SQL embedded language character> ::=
<left bracket>
| <right bracket>
<left bracket> ::= [
<right bracket> ::= ]
<token> ::=
<nondelimiter token>
| <delimiter token>
<nondelimiter token> ::=
<regular identifier>
| <key word>
| <unsigned numeric literal>
| <national character string literal>
| <bit string literal>
| <hex string literal>
<regular identifier> ::= <identifier body>
<identifier body> ::=
<identifier start> [ ( <underscore> | <identifier part> )... ]
<identifier start> ::= <EMPHASIS>(!! See the Syntax Rules)
<identifier part> ::=
<identifier start>
| <digit>
<key word> ::=
<reserved word>
| <non-reserved word>
<reserved word> ::=
ABSOLUTE | ACTION | ADD | ALL
| ALLOCATE | ALTER | AND
| ANY | ARE
| AS | ASC
| ASSERTION | AT
| AUTHORIZATION | AVG
| BEGIN | BETWEEN | BIT | BIT_LENGTH
| BOTH | BY
| CASCADE | CASCADED | CASE | CAST
| CATALOG
| CHAR | CHARACTER | CHAR_LENGTH
| CHARACTER_LENGTH | CHECK | CLOSE | COALESCE
| COLLATE | COLLATION
| COLUMN | COMMIT
| CONNECT
| CONNECTION | CONSTRAINT
| CONSTRAINTS | CONTINUE
| CONVERT | CORRESPONDING | COUNT | CREATE | CROSS
| CURRENT
| CURRENT_DATE | CURRENT_TIME
| CURRENT_TIMESTAMP | CURRENT_USER | CURSOR
| DATE | DAY | DEALLOCATE | DEC
| DECIMAL | DECLARE | DEFAULT | DEFERRABLE
| DEFERRED | DELETE | DESC | DESCRIBE | DESCRIPTOR
| DIAGNOSTICS
| DISCONNECT | DISTINCT | DOMAIN | DOUBLE | DROP
| ELSE | END | END-EXEC | ESCAPE
| EXCEPT | EXCEPTION
| EXEC | EXECUTE | EXISTS
| EXTERNAL | EXTRACT
| FALSE | FETCH | FIRST | FLOAT | FOR
| FOREIGN | FOUND | FROM | FULL
| GET | GLOBAL | GO | GOTO
| GRANT | GROUP
| HAVING | HOUR
| IDENTITY | IMMEDIATE | IN | INDICATOR
| INITIALLY | INNER | INPUT
| INSENSITIVE | INSERT | INT | INTEGER | INTERSECT
| INTERVAL | INTO | IS
| ISOLATION
| JOIN
| KEY
| LANGUAGE | LAST | LEADING | LEFT
| LEVEL | LIKE | LOCAL | LOWER
| MATCH | MAX | MIN | MINUTE | MODULE
| MONTH
| NAMES | NATIONAL | NATURAL | NCHAR | NEXT | NO
| NOT | NULL
| NULLIF | NUMERIC
| OCTET_LENGTH | OF
| ON | ONLY | OPEN | OPTION | OR
| ORDER | OUTER
| OUTPUT | OVERLAPS
| PAD | PARTIAL | POSITION | PRECISION | PREPARE
| PRESERVE | PRIMARY
| PRIOR | PRIVILEGES | PROCEDURE | PUBLIC
| READ | REAL | REFERENCES | RELATIVE | RESTRICT
| REVOKE | RIGHT
| ROLLBACK | ROWS
| SCHEMA | SCROLL | SECOND | SECTION
| SELECT
| SESSION | SESSION_USER | SET
| SIZE | SMALLINT | SOME | SPACE | SQL | SQLCODE
| SQLERROR | SQLSTATE
| SUBSTRING | SUM | SYSTEM_USER
| TABLE | TEMPORARY
| THEN | TIME | TIMESTAMP
| TIMEZONE_HOUR | TIMEZONE_MINUTE
| TO | TRAILING | TRANSACTION
| TRANSLATE | TRANSLATION | TRIM | TRUE
| UNION | UNIQUE | UNKNOWN | UPDATE | UPPER | USAGE
| USER | USING
| VALUE | VALUES | VARCHAR | VARYING | VIEW
| WHEN | WHENEVER | WHERE | WITH | WORK | WRITE
| YEAR
| ZONE
<non-reserved word> ::=
ADA
| C | CATALOG_NAME
| CHARACTER_SET_CATALOG | CHARACTER_SET_NAME
| CHARACTER_SET_SCHEMA | CLASS_ORIGIN | COBOL | COLLATION_CATALOG
| COLLATION_NAME | COLLATION_SCHEMA | COLUMN_NAME | COMMAND_FUNCTION
| COMMITTED
| CONDITION_NUMBER | CONNECTION_NAME | CONSTRAINT_CATALOG | CONSTRAINT_NAME
| CONSTRAINT_SCHEMA | CURSOR_NAME
| DATA | DATETIME_INTERVAL_CODE
| DATETIME_INTERVAL_PRECISION | DYNAMIC_FUNCTION
| FORTRAN
| LENGTH
| MESSAGE_LENGTH | MESSAGE_OCTET_LENGTH | MESSAGE_TEXT | MORE | MUMPS
| NAME | NULLABLE | NUMBER
| PASCAL | PLI
| REPEATABLE | RETURNED_LENGTH | RETURNED_OCTET_LENGTH | RETURNED_SQLSTATE
| ROW_COUNT
| SCALE | SCHEMA_NAME | SERIALIZABLE | SERVER_NAME | SUBCLASS_ORIGIN
| TABLE_NAME | TYPE
| UNCOMMITTED | UNNAMED
<unsigned numeric literal> ::=
<exact numeric literal>
| <approximate numeric literal>
<exact numeric literal> ::=
<unsigned integer> [ <period> [ <unsigned integer> ] ]
| <period> <unsigned integer>
<unsigned integer> ::= <digit>...
<approximate numeric literal> ::= <mantissa> E <exponent>
<mantissa> ::= <exact numeric literal>
<exponent> ::= <signed integer>
<signed integer> ::= [ <sign> ] <unsigned integer>
<sign> ::= <plus sign> | <minus sign>
<national character string literal> ::=
N <quote> [ <character representation>... ] <quote>
[ ( <separator>... <quote> [ <character representation>... ] <quote> )... ]
<character representation> ::=
<nonquote character>
| <quote symbol>
<nonquote character> ::= !! <EMPHASIS>(See the Syntax Rules.)
<quote symbol> ::= <quote><quote>
<separator> ::= ( <comment> | <space> | <newline> )...
<comment> ::=
<comment introducer> [ <comment character>... ] <newline>
<comment introducer> ::= <minus sign><minus sign>[<minus sign>...]
<comment character> ::=
<nonquote character>
| <quote>
<newline> ::= !! <EMPHASIS>(implementation-defined end-of-line indicator)
<bit string literal> ::=
B <quote> [ <bit>... ] <quote>
[ ( <separator>... <quote> [ <bit>... ] <quote> )... ]
<bit> ::= 0 | 1
<hex string literal> ::=
X <quote> [ <hexit>... ] <quote>
[ ( <separator>... <quote> [ <hexit>... ] <quote> )... ]
<hexit> ::= <digit> | A | B | C | D | E | F | a | b | c | d | e | f
<delimiter token> ::=
<character string literal>
| <date string>
| <time string>
| <timestamp string>
| <interval string>
| <delimited identifier>
| <SQL special character>
| <not equals operator>
| <greater than or equals operator>
| <less than or equals operator>
| <concatenation operator>
| <double period>
| <left bracket>
| <right bracket>
<character string literal> ::=
[ <introducer><character set specification> ]
<quote> [ <character representation>... ] <quote>
[ ( <separator>... <quote> [ <character representation>... ] <quote> )... ]
<introducer> ::= <underscore>
<character set specification> ::=
<standard character repertoire name>
| <implementation-defined character repertoire name>
| <user-defined character repertoire name>
| <standard universal character form-of-use name>
| <implementation-defined universal character form-of-use name>
<standard character repertoire name> ::= <character set name>
<character set name> ::= [ <schema name> <period> ]
<SQL language identifier>
<schema name> ::=
[ <catalog name> <period> ] <unqualified schema name>
<catalog name> ::= <identifier>
<identifier> ::=
[ <introducer><character set specification> ] <actual identifier>
<actual identifier> ::=
<regular identifier>
| <delimited identifier>
<delimited identifier> ::=
<double quote> <delimited identifier body> <double quote>
<delimited identifier body> ::= <delimited identifier part>...
<delimited identifier part> ::=
<nondoublequote character>
| <doublequote symbol>
<nondoublequote character> ::= <EMPHASIS>(!! See the Syntax Rules)
<doublequote symbol> ::= <double quote><double quote>
<unqualified schema name> ::= <identifier>
<SQL language identifier> ::=
<SQL language identifier start>
[ ( <underscore> | <SQL language identifier part> )... ]
<SQL language identifier start> ::= <simple Latin letter>
<SQL language identifier part> ::=
<simple Latin letter>
| <digit>
<implementation-defined character repertoire name> ::=
<character set name>
<user-defined character repertoire name> ::= <character set name>
<standard universal character form-of-use name> ::=
<character set name>
<implementation-defined universal character form-of-use name> ::=
<character set name>
<date string> ::=
<quote> <date value> <quote>
<date value> ::=
<years value> <minus sign> <months value>
<minus sign> <days value>
<years value> ::= <datetime value>
<datetime value> ::= <unsigned integer>
<months value> ::= <datetime value>
<days value> ::= <datetime value>
<time string> ::=
<quote> <time value> [ <time zone interval> ] <quote>
<time value> ::=
<hours value> <colon> <minutes value> <colon> <seconds value>
<hours value> ::= <datetime value>
<minutes value> ::= <datetime value>
<seconds value> ::=
<seconds integer value> [ <period> [ <seconds fraction> ] ]
<seconds integer value> ::= <unsigned integer>
<seconds fraction> ::= <unsigned integer>
<time zone interval> ::=
<sign> <hours value> <colon> <minutes value>
<timestamp string> ::=
<quote> <date value> <space> <time value>
[ <time zone interval> ] <quote>
<interval string> ::=
<quote> ( <year-month literal> | <day-time literal> ) <quote>
<year-month literal> ::=
<years value>
| [ <years value> <minus sign> ] <months value>
<day-time literal> ::=
<day-time interval>
| <time interval>
<day-time interval> ::=
<days value>
[ <space> <hours value> [ <colon> <minutes value>
[ <colon> <seconds value> ] ] ]
<time interval> ::=
<hours value> [ <colon> <minutes value> [ <colon> <seconds value> ] ]
| <minutes value> [ <colon> <seconds value> ]
| <seconds value>
<not equals operator> ::= <>
<greater than or equals operator> ::= >=
<less than or equals operator> ::= <=
<concatenation operator> ::= ||
<double period> ::= ..
<module> ::=
<module name clause>
<language clause>
<module authorization clause>
[ <temporary table declaration>... ]
<module contents>...
<module name clause> ::=
MODULE [ <module name> ]
[ <module character set specification> ]
<module name> ::= <identifier>
<module character set specification> ::=
NAMES ARE <character set specification>
<language clause> ::=
LANGUAGE <language name>
<language name> ::=
ADA | C | COBOL | FORTRAN | MUMPS | PASCAL | PLI
<module authorization clause> ::=
SCHEMA <schema name>
| AUTHORIZATION <module authorization identifier>
| SCHEMA <schema name>
AUTHORIZATION <module authorization identifier>
<module authorization identifier> ::=
<authorization identifier>
<authorization identifier> ::= <identifier>
<temporary table declaration> ::=
DECLARE LOCAL TEMPORARY TABLE
<qualified local table name>
<table element list>
[ ON COMMIT ( PRESERVE | DELETE ) ROWS ]
<qualified local table name> ::=
MODULE <period> <local table name>
<local table name> ::= <qualified identifier>
<qualified identifier> ::= <identifier>
<table element list> ::=
<left paren> <table element> [ ( <comma> <table element> )... ] <right paren>
<table element> ::=
<column definition>
| <table constraint definition>
<column definition> ::=
<column name> ( <data type> | <domain name> )
[ <default clause> ]
[ <column constraint definition>... ]
[ <collate clause> ]
<column name> ::= <identifier>
<data type> ::=
<character string type>
[ CHARACTER SET <character set specification> ]
| <national character string type>
| <bit string type>
| <numeric type>
| <datetime type>
| <interval type>
<character string type> ::=
CHARACTER [ <left paren> <length> <right paren> ]
| CHAR [ <left paren> <length> <right paren> ]
| CHARACTER VARYING <left paren> <length> <right paren>
| CHAR VARYING <left paren> <length> <right paren>
| VARCHAR <left paren> <length> <right paren>
<length> ::= <unsigned integer>
<national character string type> ::=
NATIONAL CHARACTER [ <left paren> <length> <right paren> ]
| NATIONAL CHAR [ <left paren> <length> <right paren> ]
| NCHAR [ <left paren> <length> <right paren> ]
| NATIONAL CHARACTER VARYING <left paren> <length> <right paren>
| NATIONAL CHAR VARYING <left paren> <length> <right paren>
| NCHAR VARYING <left paren> <length> <right paren>
<bit string type> ::=
BIT [ <left paren> <length> <right paren> ]
| BIT VARYING <left paren> <length> <right paren>
<numeric type> ::=
<exact numeric type>
| <approximate numeric type>
<exact numeric type> ::=
NUMERIC [ <left paren> <precision> [ <comma> <scale> ] <right paren> ]
| DECIMAL [ <left paren> <precision> [ <comma> <scale> ] <right paren> ]
| DEC [ <left paren> <precision> [ <comma> <scale> ] <right paren> ]
| INTEGER
| INT
| SMALLINT
<precision> ::= <unsigned integer>
<scale> ::= <unsigned integer>
<approximate numeric type> ::=
FLOAT [ <left paren> <precision> <right paren> ]
| REAL
| DOUBLE PRECISION
<datetime type> ::=
DATE
| TIME [ <left paren> <time precision> <right paren> ]
[ WITH TIME ZONE ]
| TIMESTAMP [ <left paren> <timestamp precision> <right paren> ]
[ WITH TIME ZONE ]
<time precision> ::= <time fractional seconds precision>
<time fractional seconds precision> ::= <unsigned integer>
<timestamp precision> ::= <time fractional seconds precision>
<interval type> ::= INTERVAL <interval qualifier>
<interval qualifier> ::=
<start field> TO <end field>
| <single datetime field>
<start field> ::=
<non-second datetime field>
[ <left paren> <interval leading field precision> <right paren> ]
<non-second datetime field> ::= YEAR | MONTH | DAY | HOUR
| MINUTE
<interval leading field precision> ::= <unsigned integer>
<end field> ::=
<non-second datetime field>
| SECOND [ <left paren> <interval fractional seconds precision> <right paren> ]
<interval fractional seconds precision> ::= <unsigned integer>
<single datetime field> ::=
<non-second datetime field>
[ <left paren> <interval leading field precision> <right paren> ]
| SECOND [ <left paren> <interval leading field precision>
[ <comma> <interval fractional seconds precision> ] <right paren> ]
<domain name> ::= <qualified name>
<qualified name> ::=
[ <schema name> <period> ] <qualified identifier>
<default clause> ::=
DEFAULT <default option>
<default option> ::=
<literal>
| <datetime value function>
| USER
| CURRENT_USER
| SESSION_USER
| SYSTEM_USER
| NULL
<literal> ::=
<signed numeric literal>
| <general literal>
<signed numeric literal> ::=
[ <sign> ] <unsigned numeric literal>
<general literal> ::=
<character string literal>
| <national character string literal>
| <bit string literal>
| <hex string literal>
| <datetime literal>
| <interval literal>
<datetime literal> ::=
<date literal>
| <time literal>
| <timestamp literal>
<date literal> ::=
DATE <date string>
<time literal> ::=
TIME <time string>
<timestamp literal> ::=
TIMESTAMP <timestamp string>
<interval literal> ::=
INTERVAL [ <sign> ] <interval string> <interval qualifier>
<datetime value function> ::=
<current date value function>
| <current time value function>
| <current timestamp value function>
<current date value function> ::= CURRENT_DATE
<current time value function> ::=
CURRENT_TIME [ <left paren> <time precision> <right paren> ]
<current timestamp value function> ::=
CURRENT_TIMESTAMP [ <left paren> <timestamp precision> <right paren> ]
<column constraint definition> ::=
[ <constraint name definition> ]
<column constraint>
[ <constraint attributes> ]
<constraint name definition> ::= CONSTRAINT <constraint name>
<constraint name> ::= <qualified name>
<column constraint> ::=
NOT NULL
| <unique specification>
| <references specification>
| <check constraint definition>
<unique specification> ::=
UNIQUE | PRIMARY KEY
<references specification> ::=
REFERENCES <referenced table and columns>
[ MATCH <match type> ]
[ <referential triggered action> ]
<referenced table and columns> ::=
<table name> [ <left paren> <reference column list> <right paren> ]
<table name> ::=
<qualified name>
| <qualified local table name>
<reference column list> ::= <column name list>
<column name list> ::=
<column name> [ ( <comma> <column name> )... ]
<match type> ::=
FULL
| PARTIAL
<referential triggered action> ::=
<update rule> [ <delete rule> ]
| <delete rule> [ <update rule> ]
<update rule> ::= ON UPDATE <referential action>
<referential action> ::=
CASCADE
| SET NULL
| SET DEFAULT
| NO ACTION
<delete rule> ::= ON DELETE <referential action>
<check constraint definition> ::=
CHECK
<left paren> <search condition> <right paren>
<search condition> ::=
<boolean term>
| <search condition> OR <boolean term>
<boolean term> ::=
<boolean factor>
| <boolean term> AND <boolean factor>
<boolean factor> ::=
[ NOT ] <boolean test>
<boolean test> ::=
<boolean primary> [ IS [ NOT ]
<truth value> ]
<boolean primary> ::=
<predicate>
| <left paren> <search condition> <right paren>
<predicate> ::=
<comparison predicate>
| <between predicate>
| <in predicate>
| <like predicate>
| <null predicate>
| <quantified comparison predicate>
| <exists predicate>
| <unique predicate>
| <match predicate>
| <overlaps predicate>
<comparison predicate> ::=
<row value constructor> <comp op>
<row value constructor>
<row value constructor> ::=
<row value constructor element>
| <left paren> <row value constructor list> <right paren>
| <row subquery>
<row value constructor element> ::=
<value expression>
| <null specification>
| <default specification>
<value expression> ::=
<numeric value expression>
| <string value expression>
| <datetime value expression>
| <interval value expression>
<numeric value expression> ::=
<term>
| <numeric value expression> <plus sign> <term>
| <numeric value expression> <minus sign> <term>
<term> ::=
<factor>
| <term> <asterisk> <factor>
| <term> <solidus> <factor>
<factor> ::=
[ <sign> ] <numeric primary>
<numeric primary> ::=
<value expression primary>
| <numeric value function>
<value expression primary> ::=
<unsigned value specification>
| <column reference>
| <set function specification>
| <scalar subquery>
| <case expression>
| <left paren> <value expression> <right paren>
| <cast specification>
<unsigned value specification> ::=
<unsigned literal>
| <general value specification>
<unsigned literal> ::=
<unsigned numeric literal>
| <general literal>
<general value specification> ::=
<parameter specification>
| <dynamic parameter specification>
| <variable specification>
| USER
| CURRENT_USER
| SESSION_USER
| SYSTEM_USER
| VALUE
<parameter specification> ::=
<parameter name> [ <indicator parameter> ]
<parameter name> ::= <colon> <identifier>
<indicator parameter> ::=
[ INDICATOR ] <parameter name>
<dynamic parameter specification> ::= <question mark>
<variable specification> ::=
<embedded variable name> [ <indicator variable> ]
<embedded variable name> ::=
<colon><host identifier>
<host identifier> ::=
<Ada host identifier>
| <C host identifier>
| <COBOL host identifier>
| <Fortran host identifier>
| <MUMPS host identifier>
| <Pascal host identifier>
| <PL/I host identifier>
<Ada host identifier> ::= !! <EMPHASIS>(See the Syntax Rules.)
<C host identifier> ::=
!! <EMPHASIS>(See the Syntax Rules.)
<COBOL host identifier> ::= !! <EMPHASIS>(See the Syntax Rules.)
<Fortran host identifier> ::= !! <EMPHASIS>(See the Syntax Rules.)
<MUMPS host identifier> ::= !! <EMPHASIS>(See the Syntax Rules.)
<Pascal host identifier> ::= !! <EMPHASIS>(See the Syntax Rules.)
<PL/I host identifier> ::= !! <EMPHASIS>(See the Syntax Rules.)
<indicator variable> ::=
[ INDICATOR ] <embedded variable name>
<column reference> ::= [ <qualifier> <period> ] <column name>
<qualifier> ::=
<table name>
| <correlation name>
<correlation name> ::= <identifier>
<set function specification> ::=
COUNT <left paren> <asterisk> <right paren>
| <general set function>
<general set function> ::=
<set function type>
<left paren> [ <set quantifier> ] <value expression> <right paren>
<set function type> ::=
AVG | MAX | MIN | SUM | COUNT
<set quantifier> ::= DISTINCT | ALL
<scalar subquery> ::= <subquery>
<subquery> ::= <left paren> <query expression> <right paren>
<query expression> ::=
<non-join query expression>
| <joined table>
<non-join query expression> ::=
<non-join query term>
| <query expression> UNION [ ALL ]
[ <corresponding spec> ] <query term>
| <query expression> EXCEPT [ ALL ]
[ <corresponding spec> ] <query term>
<non-join query term> ::=
<non-join query primary>
| <query term> INTERSECT [ ALL ]
[ <corresponding spec> ] <query primary>
<non-join query primary> ::=
<simple table>
| <left paren> <non-join query expression> <right paren>
<simple table> ::=
<query specification>
| <table value constructor>
| <explicit table>
<query specification> ::=
SELECT [ <set quantifier> ] <select list> <table expression>
<select list> ::=
<asterisk>
| <select sublist> [ ( <comma> <select sublist> )... ]
<select sublist> ::=
<derived column>
| <qualifier> <period> <asterisk>
<derived column> ::= <value expression> [ <as clause> ]
<as clause> ::= [ AS ] <column name>
<table expression> ::=
<from clause>
[ <where clause> ]
[ <group by clause> ]
[ <having clause> ]
<from clause> ::= FROM <table reference>
[ ( <comma> <table reference> )... ]
<table reference> ::=
<table name> [ [ AS ] <correlation name>
[ <left paren> <derived column list> <right paren> ] ]
| <derived table> [ AS ] <correlation name>
[ <left paren> <derived column list> <right paren> ]
| <joined table>
<derived column list> ::= <column name list>
<derived table> ::= <table subquery>
<table subquery> ::= <subquery>
<joined table> ::=
<cross join>
| <qualified join>
| <left paren> <joined table> <right paren>
<cross join> ::=
<table reference> CROSS JOIN <table reference>
<qualified join> ::=
<table reference> [ NATURAL ] [ <join type> ] JOIN
<table reference> [ <join specification> ]
<join type> ::=
INNER
| <outer join type> [ OUTER ]
| UNION
<outer join type> ::=
LEFT
| RIGHT
| FULL
<join specification> ::=
<join condition>
| <named columns join>
<join condition> ::= ON <search condition>
<named columns join> ::=
USING <left paren> <join column list> <right paren>
<join column list> ::= <column name list>
<where clause> ::= WHERE <search condition>
<group by clause> ::=
GROUP BY <grouping column reference list>
<grouping column reference list> ::=
<grouping column reference>
[ ( <comma> <grouping column reference> )... ]
<grouping column reference> ::=
<column reference> [ <collate clause> ]
<collate clause> ::= COLLATE <collation name>
<collation name> ::= <qualified name>
<having clause> ::= HAVING <search condition>
<table value constructor> ::=
VALUES <table value constructor list>
<table value constructor list> ::=
<row value constructor> [ ( <comma> <row value constructor> )... ]
<explicit table> ::= TABLE <table name>
<query term> ::=
<non-join query term>
| <joined table>
<corresponding spec> ::=
CORRESPONDING [ BY <left paren> <corresponding column list> <right paren> ]
<corresponding column list> ::= <column name list>
<query primary> ::=
<non-join query primary>
| <joined table>
<case expression> ::=
<case abbreviation>
| <case specification>
<case abbreviation> ::=
NULLIF <left paren> <value expression> <comma>
<value expression> <right paren>
| COALESCE <left paren> <value expression>
( <comma> <value expression> )... <right paren>
<case specification> ::=
<simple case>
| <searched case>
<simple case> ::=
CASE <case operand>
<simple when clause>...
[ <else clause> ]
END
<case operand> ::= <value expression>
<simple when clause> ::= WHEN <when operand> THEN <result>
<when operand> ::= <value expression>
<result> ::= <result expression> | NULL
<result expression> ::= <value expression>
<else clause> ::= ELSE <result>
<searched case> ::=
CASE
<searched when clause>...
[ <else clause> ]
END
<searched when clause> ::= WHEN <search condition> THEN <result>
<cast specification> ::=
CAST <left paren> <cast operand> AS
<cast target> <right paren>
<cast operand> ::=
<value expression>
| NULL
<cast target> ::=
<domain name>
| <data type>
<numeric value function> ::=
<position expression>
| <extract expression>
| <length expression>
<position expression> ::=
POSITION <left paren> <character value expression>
IN <character value expression> <right paren>
<character value expression> ::=
<concatenation>
| <character factor>
<concatenation> ::=
<character value expression> <concatenation operator>
<character factor>
<character factor> ::=
<character primary> [ <collate clause> ]
<character primary> ::=
<value expression primary>
| <string value function>
<string value function> ::=
<character value function>
| <bit value function>
<character value function> ::=
<character substring function>
| <fold>
| <form-of-use conversion>
| <character translation>
| <trim function>
<character substring function> ::=
SUBSTRING <left paren> <character value expression> FROM <start position>
[ FOR <string length> ] <right paren>
<start position> ::= <numeric value expression>
<string length> ::= <numeric value expression>
<fold> ::= ( UPPER | LOWER )
<left paren> <character value expression> <right paren>
<form-of-use conversion> ::=
CONVERT <left paren> <character value expression>
USING <form-of-use conversion name> <right paren>
<form-of-use conversion name> ::= <qualified name>
<character translation> ::=
TRANSLATE <left paren> <character value expression>
USING <translation name> <right paren>
<translation name> ::= <qualified name>
<trim function> ::=
TRIM <left paren> <trim operands> <right paren>
<trim operands> ::=
[ [ <trim specification> ] [ <trim character> ] FROM ] <trim source>
<trim specification> ::=
LEADING
| TRAILING
| BOTH
<trim character> ::= <character value expression>
<trim source> ::= <character value expression>
<bit value function> ::=
<bit substring function>
<bit substring function> ::=
SUBSTRING <left paren> <bit value expression> FROM <start position>
[ FOR <string length> ] <right paren>
<bit value expression> ::=
<bit concatenation>
| <bit factor>
<bit concatenation> ::=
<bit value expression> <concatenation operator> <bit factor>
<bit factor> ::= <bit primary>
<bit primary> ::=
<value expression primary>
| <string value function>
<extract expression> ::=
EXTRACT <left paren> <extract field>
FROM <extract source> <right paren>
<extract field> ::=
<datetime field>
| <time zone field>
<datetime field> ::=
<non-second datetime field>
| SECOND
<time zone field> ::=
TIMEZONE_HOUR
| TIMEZONE_MINUTE
<extract source> ::=
<datetime value expression>
| <interval value expression>
<datetime value expression> ::=
<datetime term>
| <interval value expression> <plus sign> <datetime term>
| <datetime value expression> <plus sign> <interval term>
| <datetime value expression> <minus sign> <interval term>
<interval term> ::=
<interval factor>
| <interval term 2> <asterisk> <factor>
| <interval term 2> <solidus> <factor>
| <term> <asterisk> <interval factor>
<interval factor> ::=
[ <sign> ] <interval primary>
<interval primary> ::=
<value expression primary> [ <interval qualifier> ]
<interval term 2> ::= <interval term>
<interval value expression> ::=
<interval term>
| <interval value expression 1> <plus sign> <interval term 1>
| <interval value expression 1> <minus sign> <interval term 1>
| <left paren> <datetime value expression> <minus sign>
<datetime term> <right paren> <interval qualifier>
<interval value expression 1> ::= <interval value expression>
<interval term 1> ::= <interval term>
<datetime term> ::=
<datetime factor>
<datetime factor> ::=
<datetime primary> [ <time zone> ]
<datetime primary> ::=
<value expression primary>
| <datetime value function>
<time zone> ::=
AT <time zone specifier>
<time zone specifier> ::=
LOCAL
| TIME ZONE <interval value expression>
<length expression> ::=
<char length expression>
| <octet length expression>
| <bit length expression>
<char length expression> ::=
( CHAR_LENGTH | CHARACTER_LENGTH )
<left paren> <string value expression> <right paren>
<string value expression> ::=
<character value expression>
| <bit value expression>
<octet length expression> ::=
OCTET_LENGTH <left paren> <string value expression> <right paren>
<bit length expression> ::=
BIT_LENGTH <left paren> <string value expression> <right paren>
<null specification> ::=
NULL
<default specification> ::=
DEFAULT
<row value constructor list> ::=
<row value constructor element>
[ ( <comma> <row value constructor element> )... ]
<row subquery> ::= <subquery>
<comp op> ::=
<equals operator>
| <not equals operator>
| <less than operator>
| <greater than operator>
| <less than or equals operator>
| <greater than or equals operator>
<between predicate> ::=
<row value constructor> [ NOT ] BETWEEN
<row value constructor> AND <row value constructor>
<in predicate> ::=
<row value constructor>
[ NOT ] IN <in predicate value>
<in predicate value> ::=
<table subquery>
| <left paren> <in value list> <right paren>
<in value list> ::=
<value expression> ( <comma> <value expression> )...
<like predicate> ::=
<match value> [ NOT ] LIKE <pattern>
[ ESCAPE <escape character> ]
<match value> ::= <character value expression>
<pattern> ::= <character value expression>
<escape character> ::= <character value expression>
<null predicate> ::= <row value constructor>
IS [ NOT ] NULL
<quantified comparison predicate> ::=
<row value constructor> <comp op> <quantifier> <table subquery>
<quantifier> ::= <all> | <some>
<all> ::= ALL
<some> ::= SOME | ANY
<exists predicate> ::= EXISTS <table subquery>
<unique predicate> ::= UNIQUE <table subquery>
<match predicate> ::=
<row value constructor> MATCH [ UNIQUE ]
[ PARTIAL | FULL ] <table subquery>
<overlaps predicate> ::=
<row value constructor 1> OVERLAPS <row value constructor 2>
<row value constructor 1> ::= <row value constructor>
<row value constructor 2> ::= <row value constructor>
<truth value> ::=
TRUE
| FALSE
| UNKNOWN
<constraint attributes> ::=
<constraint check time> [ [ NOT ] DEFERRABLE ]
| [ NOT ] DEFERRABLE [ <constraint check time> ]
<constraint check time> ::=
INITIALLY DEFERRED
| INITIALLY IMMEDIATE
<table constraint definition> ::=
[ <constraint name definition> ]
<table constraint> [ <constraint attributes> ]
<table constraint> ::=
<unique constraint definition>
| <referential constraint definition>
| <check constraint definition>
<unique constraint definition> ::=
<unique specification> even in SQL3)
<unique specification>
<left paren> <unique column list> <right paren>
<unique column list> ::= <column name list>
<referential constraint definition> ::=
FOREIGN KEY
<left paren> <referencing columns> <right paren>
<references specification>
<referencing columns> ::=
<reference column list>
<module contents> ::=
<declare cursor>
| <dynamic declare cursor>
| <procedure>
<declare cursor> ::=
DECLARE <cursor name> [ INSENSITIVE ] [ SCROLL ] CURSOR
FOR <cursor specification>
<cursor name> ::= <identifier>
<cursor specification> ::=
<query expression> [ <order by clause> ]
[ <updatability clause> ]
<order by clause> ::=
ORDER BY <sort specification list>
<sort specification list> ::=
<sort specification> [ ( <comma> <sort specification> )... ]
<sort specification> ::=
<sort key> [ <collate clause> ] [ <ordering specification> ]
<sort key> ::=
<column name>
| <unsigned integer>
<ordering specification> ::= ASC | DESC
<updatability clause> ::=
FOR
( READ ONLY |
UPDATE [ OF <column name list> ] )
<dynamic declare cursor> ::=
DECLARE <cursor name> [ INSENSITIVE ] [ SCROLL ] CURSOR
FOR <statement name>
<statement name> ::= <identifier>
<procedure> ::=
PROCEDURE <procedure name>
<parameter declaration list> <semicolon>
<SQL procedure statement> <semicolon>
<procedure name> ::= <identifier>
<parameter declaration list> ::=
<left paren> <parameter declaration>
[ ( <comma> <parameter declaration> )... ] <right paren>
| <parameter declaration>...
<parameter declaration> ::=
<parameter name> <data type>
| <status parameter>
<status parameter> ::=
SQLCODE | SQLSTATE
<SQL procedure statement> ::=
<SQL schema statement>
| <SQL data statement>
| <SQL transaction statement>
| <SQL connection statement>
| <SQL session statement>
| <SQL dynamic statement>
| <SQL diagnostics statement>
<SQL schema statement> ::=
<SQL schema definition statement>
| <SQL schema manipulation statement>
<SQL schema definition statement> ::=
<schema definition>
| <table definition>
| <view definition>
| <grant statement>
| <domain definition>
| <character set definition>
| <collation definition>
| <translation definition>
| <assertion definition>
<schema definition> ::=
CREATE SCHEMA <schema name clause>
[ <schema character set specification> ]
[ <schema element>... ]
<schema name clause> ::=
<schema name>
| AUTHORIZATION <schema authorization identifier>
| <schema name> AUTHORIZATION
<schema authorization identifier>
<schema authorization identifier> ::=
<authorization identifier>
<schema character set specification> ::=
DEFAULT CHARACTER
SET <character set specification>
<schema element> ::=
<domain definition>
| <table definition>
| <view definition>
| <grant statement>
| <assertion definition>
| <character set definition>
| <collation definition>
| <translation definition>
<domain definition> ::=
CREATE DOMAIN <domain name>
[ AS ] <data type>
[ <default clause> ]
[ <domain constraint>... ]
[ <collate clause> ]
<domain constraint> ::=
[ <constraint name definition> ]
<check constraint definition> [ <constraint attributes> ]
<table definition> ::=
CREATE [ ( GLOBAL | LOCAL ) TEMPORARY ] TABLE
<table name>
<table element list>
[ ON COMMIT ( DELETE | PRESERVE ) ROWS ]
<view definition> ::=
CREATE VIEW <table name> [ <left paren> <view column list>
<right paren> ]
AS <query expression>
[ WITH [ <levels clause> ] CHECK OPTION ]
<view column list> ::= <column name list>
<levels clause> ::=
CASCADED | LOCAL
<grant statement> ::=
GRANT <privileges> ON <object name>
TO <grantee> [ ( <comma> <grantee> )... ]
[ WITH GRANT OPTION ]
<privileges> ::=
ALL PRIVILEGES
| <action list>
<action list> ::= <action> [ ( <comma> <action> )... ]
<action> ::=
SELECT
| DELETE
| INSERT [ <left paren> <privilege column list> <right paren> ]
| UPDATE [ <left paren> <privilege column list> <right paren> ]
| REFERENCES [ <left paren> <privilege column list> <right paren> ]
| USAGE
<privilege column list> ::= <column name list>
<object name> ::=
[ TABLE ] <table name>
| DOMAIN <domain name>
| COLLATION <collation name>
| CHARACTER SET <character set name>
| TRANSLATION <translation name>
<grantee> ::=
PUBLIC
| <authorization identifier>
<assertion definition> ::=
CREATE ASSERTION <constraint name> <assertion check>
[ <constraint attributes> ]
<assertion check> ::=
CHECK
<left paren> <search condition> <right paren>
<character set definition> ::=
CREATE CHARACTER SET <character set name>
[ AS ]
<character set source>
[ <collate clause> | <limited collation definition> ]
<character set source> ::=
GET <existing character set name>
<existing character set name> ::=
<standard character repertoire name>
| <implementation-defined character repertoire name>
| <schema character set name>
<schema character set name> ::= <character set name>
<limited collation definition> ::=
COLLATION FROM <collation source>
<collation source> ::=
<collating sequence definition>
| <translation collation>
<collating sequence definition> ::=
<external collation>
| <schema collation name>
| DESC <left paren> <collation name> <right paren>
| DEFAULT
<external collation> ::=
EXTERNAL <left paren> <quote> <external collation name> <quote> <right paren>
<external collation name> ::=
<standard collation name>
| <implementation-defined collation name>
<standard collation name> ::= <collation name>
<implementation-defined collation name> ::= <collation name>
<schema collation name> ::= <collation name>
<translation collation> ::=
TRANSLATION <translation name>
[ THEN COLLATION <collation name> ]
<collation definition> ::=
CREATE COLLATION <collation name> FOR
<character set specification>
FROM <collation source>
[ <pad attribute> ]
<pad attribute> ::=
NO PAD
| PAD SPACE
<translation definition> ::=
CREATE TRANSLATION <translation name>
FOR <source character set specification>
TO <target character set specification>
FROM <translation source>
<source character set specification> ::= <character set specification>
<target character set specification> ::= <character set specification>
<translation source> ::=
<translation specification>
<translation specification> ::=
<external translation>
| IDENTITY
| <schema translation name>
<external translation> ::=
EXTERNAL <left paren> <quote> <external translation name> <quote> <right paren>
<external translation name> ::=
<standard translation name>
| <implementation-defined translation name>
<standard translation name> ::= <translation name>
<implementation-defined translation name> ::= <translation name>
<schema translation name> ::= <translation name>
<SQL schema manipulation statement> ::=
<drop schema statement>
| <alter table statement>
| <drop table statement>
| <drop view statement>
| <revoke statement>
| <alter domain statement>
| <drop domain statement>
| <drop character set statement>
| <drop collation statement>
| <drop translation statement>
| <drop assertion statement>
<drop schema statement> ::=
DROP SCHEMA <schema name> <drop behavior>
<drop behavior> ::= CASCADE | RESTRICT
<alter table statement> ::=
ALTER TABLE <table name> <alter table action>
<alter table action> ::=
<add column definition>
| <alter column definition>
| <drop column definition>
| <add table constraint definition>
| <drop table constraint definition>
<add column definition> ::=
ADD [ COLUMN ] <column definition>
<alter column definition> ::=
ALTER [ COLUMN ] <column name> <alter column action>
<alter column action> ::=
<set column default clause>
| <drop column default clause>
<set column default clause> ::=
SET <default clause>
<drop column default clause> ::=
DROP DEFAULT
<drop column definition> ::=
DROP [ COLUMN ] <column name> <drop behavior>
<add table constraint definition> ::=
ADD <table constraint definition>
<drop table constraint definition> ::=
DROP CONSTRAINT <constraint name> <drop behavior>
<drop table statement> ::=
DROP TABLE <table name> <drop behavior>
<drop view statement> ::=
DROP VIEW <table name> <drop behavior>
<revoke statement> ::=
REVOKE [ GRANT OPTION FOR ]
<privileges>
ON <object name>
FROM <grantee> [ ( <comma> <grantee> )... ] <drop behavior>
<alter domain statement> ::=
ALTER DOMAIN <domain name> <alter domain action>
<alter domain action> ::=
<set domain default clause>
| <drop domain default clause>
| <add domain constraint definition>
| <drop domain constraint definition>
<set domain default clause> ::= SET <default clause>
<drop domain default clause> ::= DROP DEFAULT
<add domain constraint definition> ::=
ADD <domain constraint>
<drop domain constraint definition> ::=
DROP CONSTRAINT <constraint name>
<drop domain statement> ::=
DROP DOMAIN <domain name> <drop behavior>
<drop character set statement> ::=
DROP CHARACTER SET <character set name>
<drop collation statement> ::=
DROP COLLATION <collation name>
<drop translation statement> ::=
DROP TRANSLATION <translation name>
<drop assertion statement> ::=
DROP ASSERTION <constraint name>
<SQL data statement> ::=
<open statement>
| <fetch statement>
| <close statement>
| <select statement: single row>
| <SQL data change statement>
<open statement> ::=
OPEN <cursor name>
<fetch statement> ::=
FETCH [ [ <fetch orientation> ] FROM ]
<cursor name> INTO <fetch target list>
<fetch orientation> ::=
NEXT
| PRIOR
| FIRST
| LAST
| ( ABSOLUTE | RELATIVE ) <simple value specification>
<simple value specification> ::=
<parameter name>
| <embedded variable name>
| <literal>
<fetch target list> ::=
<target specification> [ ( <comma> <target specification> )... ]
<target specification> ::=
<parameter specification>
| <variable specification>
<close statement> ::=
CLOSE <cursor name>
<select statement: single row> ::=
SELECT [ <set quantifier> ] <select list>
INTO <select target list>
<table expression>
<select target list> ::=
<target specification> [ ( <comma> <target specification> )... ]
<SQL data change statement> ::=
<delete statement: positioned>
| <delete statement: searched>
| <insert statement>
| <update statement: positioned>
| <update statement: searched>
<delete statement: positioned> ::=
DELETE FROM <table name>
WHERE CURRENT OF <cursor name>
<delete statement: searched> ::=
DELETE FROM <table name>
[ WHERE <search condition> ]
<insert statement> ::=
INSERT INTO <table name>
<insert columns and source>
<insert columns and source> ::=
[ <left paren> <insert column list> <right paren> ]
<query expression>
| DEFAULT VALUES
<insert column list> ::= <column name list>
<update statement: positioned> ::=
UPDATE <table name>
SET <set clause list>
WHERE CURRENT OF <cursor name>
<set clause list> ::=
<set clause> [ ( <comma> <set clause> )... ]
<set clause> ::=
<object column> <equals operator> <update source>
<object column> ::= <column name>
<update source> ::=
<value expression>
| <null specification>
| DEFAULT
<update statement: searched> ::=
UPDATE <table name>
SET <set clause list>
[ WHERE <search condition> ]
<SQL transaction statement> ::=
<set transaction statement>
| <set constraints mode statement>
| <commit statement>
| <rollback statement>
<set transaction statement> ::=
SET TRANSACTION <transaction mode>
[ ( <comma> <transaction mode> )... ]
<transaction mode> ::=
<isolation level>
| <transaction access mode>
| <diagnostics size>
<isolation level> ::=
ISOLATION LEVEL <level of isolation>
<level of isolation> ::=
READ UNCOMMITTED
| READ COMMITTED
| REPEATABLE READ
| SERIALIZABLE
<transaction access mode> ::=
READ ONLY
| READ WRITE
<diagnostics size> ::=
DIAGNOSTICS SIZE <number of conditions>
<number of conditions> ::= <simple value specification>
<set constraints mode statement> ::=
SET CONSTRAINTS <constraint name list>
( DEFERRED | IMMEDIATE )
<constraint name list> ::=
ALL
| <constraint name> [ ( <comma> <constraint name> )... ]
<commit statement> ::=
COMMIT [ WORK ]
<rollback statement> ::=
ROLLBACK [ WORK ]
<SQL connection statement> ::=
<connect statement>
| <set connection statement>
| <disconnect statement>
<connect statement> ::=
CONNECT TO <connection target>
<connection target> ::=
<SQL-server name>
[ AS <connection name> ]
correspondence with Tony Gordon)
[ USER <user name> ]
| DEFAULT
<SQL-server name> ::= <simple value specification>
<connection name> ::= <simple value specification>
<user name> ::= <simple value specification>
<set connection statement> ::=
SET CONNECTION <connection object>
<connection object> ::=
DEFAULT
| <connection name>
<disconnect statement> ::=
DISCONNECT <disconnect object>
<disconnect object> ::=
<connection object>
| ALL
| CURRENT
<SQL session statement> ::=
<set catalog statement>
| <set schema statement>
| <set names statement>
| <set session authorization identifier statement>
| <set local time zone statement>
<set catalog statement> ::=
SET CATALOG <value specification>
<value specification> ::=
<literal>
| <general value specification>
<set schema statement> ::=
SET SCHEMA <value specification>
<set names statement> ::=
SET NAMES <value specification>
<set session authorization identifier statement> ::=
SET SESSION AUTHORIZATION
<value specification>
<set local time zone statement> ::=
SET TIME ZONE
<set time zone value>
<set time zone value> ::=
<interval value expression>
| LOCAL
<SQL dynamic statement> ::=
<system descriptor statement>
| <prepare statement>
| <deallocate prepared statement>
| <describe statement>
| <execute statement>
| <execute immediate statement>
| <SQL dynamic data statement>
<system descriptor statement> ::=
<allocate descriptor statement>
| <deallocate descriptor statement>
| <set descriptor statement>
| <get descriptor statement>
<allocate descriptor statement> ::=
ALLOCATE DESCRIPTOR <descriptor name>
[ WITH MAX <occurrences> ]
<descriptor name> ::=
[ <scope option> ] <simple value specification>
<scope option> ::=
GLOBAL
| LOCAL
<occurrences> ::= <simple value specification>
<deallocate descriptor statement> ::=
DEALLOCATE DESCRIPTOR <descriptor name>
<set descriptor statement> ::=
SET DESCRIPTOR <descriptor name>
<set descriptor information>
<set descriptor information> ::=
<set count>
| VALUE <item number>
<set item information> [ ( <comma> <set item information> )... ]
<set count> ::=
COUNT <equals operator> <simple value specification 1>
<simple value specification 1> ::= <simple value specification>
<item number> ::= <simple value specification>
<set item information> ::=
<descriptor item name> <equals operator> <simple value specification 2>
<descriptor item name> ::=
TYPE
| LENGTH
| OCTET_LENGTH
| RETURNED_LENGTH
| RETURNED_OCTET_LENGTH
| PRECISION
| SCALE
| DATETIME_INTERVAL_CODE
| DATETIME_INTERVAL_PRECISION
| NULLABLE
| INDICATOR
| DATA
| NAME
| UNNAMED
| COLLATION_CATALOG
| COLLATION_SCHEMA
| COLLATION_NAME
| CHARACTER_SET_CATALOG
| CHARACTER_SET_SCHEMA
| CHARACTER_SET_NAME
<simple value specification 2> ::= <simple value specification>
<item number> ::= <simple value specification>
<get descriptor statement> ::=
GET DESCRIPTOR <descriptor name> <get descriptor information>
<get descriptor information> ::=
<get count>
| VALUE <item number>
<get item information> [ ( <comma> <get item information> )... ]
<get count> ::=
<simple target specification 1> <equals operator>
COUNT
<simple target specification 1> ::= <simple target specification>
<simple target specification> ::=
<parameter name>
| <embedded variable name>
<get item information> ::=
<simple target specification 2> <equals operator> <descriptor item name>>
<simple target specification 2> ::= <simple target specification>
<prepare statement> ::=
PREPARE <SQL statement name> FROM <SQL statement variable>
<SQL statement name> ::=
<statement name>
| <extended statement name>
<extended statement name> ::=
[ <scope option> ] <simple value specification>
<SQL statement variable> ::= <simple value specification>
<deallocate prepared statement> ::=
DEALLOCATE PREPARE <SQL statement name>
<describe statement> ::=
<describe input statement>
| <describe output statement>
<describe input statement> ::=
DESCRIBE INPUT <SQL statement name> <using descriptor>
<using descriptor> ::=
( USING | INTO ) SQL DESCRIPTOR <descriptor name>
<describe output statement> ::=
DESCRIBE [ OUTPUT ] <SQL statement name> <using descriptor>
<execute statement> ::=
EXECUTE <SQL statement name>
[ <result using clause> ]
[ <parameter using clause> ]
<result using clause> ::= <using clause>
<using clause> ::=
<using arguments>
| <using descriptor>
<using arguments> ::=
( USING | INTO ) <argument> [ ( <comma> <argument> )... ]
<argument> ::= <target specification>
<parameter using clause> ::= <using clause>
<execute immediate statement> ::=
EXECUTE IMMEDIATE <SQL statement variable>
<SQL dynamic data statement> ::=
<allocate cursor statement>
| <dynamic open statement>
| <dynamic fetch statement>
| <dynamic close statement>
| <dynamic delete statement: positioned>
| <dynamic update statement: positioned>
<allocate cursor statement> ::=
ALLOCATE <extended cursor name> [ INSENSITIVE ]
[ SCROLL ] CURSOR
FOR <extended statement name>
<extended cursor name> ::=
[ <scope option> ] <simple value specification>
<dynamic open statement> ::=
OPEN <dynamic cursor name> [ <using clause> ]
<dynamic cursor name> ::=
<cursor name>
| <extended cursor name>
<dynamic fetch statement> ::=
FETCH [ [ <fetch orientation> ] FROM ] <dynamic cursor name>
<using clause>
<dynamic close statement> ::=
CLOSE <dynamic cursor name>
<dynamic delete statement: positioned> ::=
DELETE FROM <table name>
WHERE CURRENT OF
<dynamic cursor name>
<dynamic update statement: positioned> ::=
UPDATE <table name>
SET <set clause>
[ ( <comma> <set clause> )... ]
WHERE CURRENT OF
<dynamic cursor name>
<SQL diagnostics statement> ::=
<get diagnostics statement>
<get diagnostics statement> ::=
GET DIAGNOSTICS <sql diagnostics information>
<sql diagnostics information> ::=
<statement information>
| <condition information>
<statement information> ::=
<statement information item> [ ( <comma> <statement information item> )... ]
<statement information item> ::=
<simple target specification> <equals operator> <statement information item name>
<statement information item name> ::=
NUMBER
| MORE
| COMMAND_FUNCTION
| DYNAMIC_FUNCTION
| ROW_COUNT
<condition information> ::=
EXCEPTION <condition number>
<condition information item> [ ( <comma> <condition information item> )... ]
<condition number> ::= <simple value specification>
<condition information item> ::=
<simple target specification> <equals operator> <condition information item name>
<condition information item name> ::=
CONDITION_NUMBER
| RETURNED_SQLSTATE
| CLASS_ORIGIN
| SUBCLASS_ORIGIN
| SERVER_NAME
| CONNECTION_NAME
| CONSTRAINT_CATALOG
| CONSTRAINT_SCHEMA
| CONSTRAINT_NAME
| CATALOG_NAME
| SCHEMA_NAME
| TABLE_NAME
| COLUMN_NAME
| CURSOR_NAME
| MESSAGE_TEXT
| MESSAGE_LENGTH
| MESSAGE_OCTET_LENGTH
<embedded SQL host program> ::=
<embedded SQL Ada program>
| <embedded SQL C program>
| <embedded SQL COBOL program>
| <embedded SQL Fortran program>
| <embedded SQL MUMPS program>
| <embedded SQL Pascal program>
| <embedded SQL PL/I program>
<embedded SQL Ada program> ::= !! <EMPHASIS>(See the Syntax Rules.)
<embedded SQL C program> ::=
!! <EMPHASIS>(See the Syntax Rules.)
<embedded SQL COBOL program> ::= !! <EMPHASIS>(See the Syntax Rules.)
<embedded SQL Fortran program> ::=
!! <EMPHASIS>(See the Syntax Rules.)
<embedded SQL MUMPS program> ::= !! <EMPHASIS>(See the Syntax Rules.)
<embedded SQL Pascal program> ::=
!! <EMPHASIS>(See the Syntax Rules.)
<embedded SQL PL/I program> ::= !! <EMPHASIS>(See the Syntax Rules.)
<embedded SQL declare section> ::=
<embedded SQL begin declare>
[ <embedded character set declaration> ]
[ <host variable definition>... ]
<embedded SQL end declare>
| <embedded SQL MUMPS declare>
<embedded SQL begin declare> ::=
<SQL prefix> BEGIN DECLARE SECTION
[ <SQL terminator> ]
<SQL prefix> ::=
EXEC SQL
| <ampersand>SQL<left paren>
<SQL terminator> ::=
END-EXEC
| <semicolon>
| <right paren>
<embedded character set declaration> ::=
SQL NAMES ARE <character set specification>
<host variable definition> ::=
<Ada variable definition>
| <C variable definition>
| <COBOL variable definition>
| <Fortran variable definition>
| <MUMPS variable definition>
| <Pascal variable definition>
| <PL/I variable definition>
<Ada variable definition> ::=
<Ada host identifier> [ ( <comma> <Ada host identifier> )... ] :
<Ada type specification> [ <Ada initial value> ]
<Ada type specification> ::=
<Ada qualified type specification>
| <Ada unqualified type specification>
<Ada qualified type specification> ::=
SQL_STANDARD.CHAR [ CHARACTER SET
[ IS ] <character set specification> ]
<left paren> 1 <double period> <length> <right paren>
| SQL_STANDARD.BIT
<left paren> 1 <double period> <length> <right paren>
| SQL_STANDARD.SMALLINT
| SQL_STANDARD.INT
| SQL_STANDARD.REAL
| SQL_STANDARD.DOUBLE_PRECISION
| SQL_STANDARD.SQLCODE_TYPE
| SQL_STANDARD.SQLSTATE_TYPE
| SQL_STANDARD.INDICATOR_TYPE
<Ada unqualified type specification> ::=
CHAR
<left paren> 1 <double period> <length> <right paren>
| BIT
<left paren> 1 <double period> <length> <right paren>
| SMALLINT
| INT
| REAL
| DOUBLE_PRECISION
| SQLCODE_TYPE
| SQLSTATE_TYPE
| INDICATOR_TYPE
<Ada initial value> ::=
<Ada assignment operator> <character representation>...
<Ada assignment operator> ::= <colon><equals operator>
<C variable definition> ::=
[ <C storage class> ]
[ <C class modifier> ]
<C variable specification>
<semicolon>
<C storage class> ::=
auto
| extern
| static
<C class modifier> ::= const | volatile
<C variable specification> ::=
<C numeric variable>
| <C character variable>
| <C derived variable>
<C numeric variable> ::=
( long | short | float | double )
<C host identifier> [ <C initial value> ]
[ ( <comma> <C host identifier> [ <C initial value> ] )... ]
<C initial value> ::=
<equals operator> <character representation>...
<C character variable> ::=
char [ CHARACTER SET
[ IS ] <character set specification> ]
<C host identifier>
<C array specification> [ <C initial value> ]
[ ( <comma> <C host identifier>
<C array specification>
[ <C initial value> ] )... ]
<C array specification> ::=
<left bracket> <length> <right bracket>
<C derived variable> ::=
<C VARCHAR variable>
| <C bit variable>
<C VARCHAR variable> ::=
VARCHAR [ CHARACTER SET [ IS ]
<character set specification> ]
<C host identifier>
<C array specification> [ <C initial value> ]
[ ( <comma> <C host identifier>
<C array specification>
[ <C initial value> ] )... ]
<C bit variable> ::=
BIT <C host identifier>
<C array specification> [ <C initial value> ]
[ ( <comma> <C host identifier>
<C array specification>
[ <C initial value> ] )... ]
<COBOL variable definition> ::=
(01|77) <COBOL host identifier> <COBOL type specification>
[ <character representation>... ] <period>
<COBOL type specification> ::=
<COBOL character type>
| <COBOL bit type>
| <COBOL numeric type>
| <COBOL integer type>
<COBOL character type> ::=
[ CHARACTER SET [ IS ]
<character set specification> ]
( PIC | PICTURE ) [ IS ] ( X [ <left paren> <length> <right paren> ] )...
<COBOL bit type> ::=
( PIC | PICTURE ) [ IS ]
( B [ <left paren> <length> <right paren> ] )...
<COBOL numeric type> ::=
( PIC | PICTURE ) [ IS ]
S <COBOL nines specification>
[ USAGE [ IS ] ] DISPLAY SIGN LEADING SEPARATE
<COBOL nines specification> ::=
<COBOL nines> [ V [ <COBOL nines> ] ]
| V <COBOL nines>
<COBOL nines> ::= ( 9 [ <left paren> <length> <right paren> ] )...
<COBOL integer type> ::=
<COBOL computational integer>
| <COBOL binary integer>
<COBOL computational integer> ::=
( PIC | PICTURE ) [ IS ] S<COBOL nines>
[ USAGE [ IS ] ] ( COMP | COMPUTATIONAL )
<COBOL binary integer> ::=
( PIC | PICTURE ) [ IS ] S<COBOL nines>
[ USAGE [ IS ] ] BINARY
<Fortran variable definition> ::=
<Fortran type specification>
<Fortran host identifier>
[ ( <comma> <Fortran host identifier> )... ]
<Fortran type specification> ::=
CHARACTER [ <asterisk> <length> ]
[ CHARACTER SET [ IS ]
<character set specification> ]
| BIT [ <asterisk> <length> ]
| INTEGER
| REAL
| DOUBLE PRECISION
<MUMPS variable definition> ::=
( <MUMPS numeric variable> | <MUMPS character variable> )
<semicolon>
<MUMPS numeric variable> ::=
<MUMPS type specification>
<MUMPS host identifier> [ ( <comma> <MUMPS host identifier> )... ]
<MUMPS type specification> ::=
INT
| DEC
[ <left paren> <precision> [ <comma> <scale> ] <right paren> ]
| REAL
<MUMPS character variable> ::=
VARCHAR <MUMPS host identifier> <MUMPS length specification>
[ ( <comma> <MUMPS host identifier> <MUMPS length specification> )... ]
<MUMPS length specification> ::=
<left paren> <length> <right paren>
<Pascal variable definition> ::=
<Pascal host identifier> [ ( <comma> <Pascal host identifier> )... ] <colon>
<Pascal type specification> <semicolon>
<Pascal type specification> ::=
PACKED ARRAY
<left bracket> 1 <double period> <length> <right bracket>
OF CHAR
[ CHARACTER SET [ IS ]
<character set specification> ]
| PACKED ARRAY
<left bracket> 1 <double period> <length> <right bracket>
OF BIT
| INTEGER
| REAL
| CHAR [ CHARACTER SET
[ IS ] <character set specification> ]
| BIT
<PL/I variable definition> ::=
(DCL | DECLARE)
( <PL/I host identifier>
| <left paren> <PL/I host identifier>
[ ( <comma> <PL/I host identifier> )... ] <right paren> )
<PL/I type specification>
[ <character representation>... ] <semicolon>
<PL/I type specification> ::=
( CHAR | CHARACTER ) [ VARYING ]
<left paren><length><right paren>
[ CHARACTER SET
[ IS ] <character set specification> ]
| BIT [ VARYING ] <left paren><length><right paren>
| <PL/I type fixed decimal> <left paren> <precision>
[ <comma> <scale> ] <right paren>
| <PL/I type fixed binary> [ <left paren> <precision> <right paren> ]
| <PL/I type float binary> <left paren> <precision> <right paren>
<PL/I type fixed decimal> ::=
( DEC | DECIMAL ) FIXED
| FIXED ( DEC | DECIMAL )
<PL/I type fixed binary> ::=
( BIN | BINARY ) FIXED
| FIXED ( BIN | BINARY )
<PL/I type float binary> ::=
( BIN | BINARY ) FLOAT
| FLOAT ( BIN | BINARY )
<embedded SQL end declare> ::=
<SQL prefix> END DECLARE SECTION
[ <SQL terminator> ]
<embedded SQL MUMPS declare> ::=
<SQL prefix>
BEGIN DECLARE SECTION
[ <embedded character set declaration> ]
[ <host variable definition>... ]
END DECLARE SECTION
<SQL terminator>
<embedded SQL statement> ::=
<SQL prefix>
<statement or declaration>
[ <SQL terminator> ]
<statement or declaration> ::=
<declare cursor>
| <dynamic declare cursor>
| <temporary table declaration>
| <embedded exception declaration>
| <SQL procedure statement>
<embedded exception declaration> ::=
WHENEVER <condition> <condition action>
<condition> ::=
SQLERROR | NOT FOUND
<condition action> ::=
CONTINUE | <go to>
<go to> ::=
( GOTO | GO TO ) <goto target>
<goto target> ::=
<host label identifier>
| <unsigned integer>
| <host PL/I label variable>
<host label identifier> ::= !!<EMPHASIS>(See the Syntax Rules.)
<host PL/I label variable> ::= !!<EMPHASIS>(See the Syntax Rules.)
<preparable statement> ::=
<preparable SQL data statement>
| <preparable SQL schema statement>
| <preparable SQL transaction statement>
| <preparable SQL session statement>
| <preparable implementation-defined statement>
<preparable SQL data statement> ::=
<delete statement: searched>
| <dynamic single row select statement>
| <insert statement>
| <dynamic select statement>
| <update statement: searched>
| <preparable dynamic delete statement: positioned>
| <preparable dynamic update statement: positioned>
<dynamic single row select statement> ::= <query specification>
<dynamic select statement> ::= <cursor specification>
<preparable dynamic delete statement: positioned> ::=
DELETE [ FROM <table name> ]
WHERE CURRENT OF <cursor name>
<preparable dynamic update statement: positioned> ::=
UPDATE [ <table name> ]
SET <set clause list>
WHERE CURRENT OF <cursor name>
<preparable SQL schema statement> ::=
<SQL schema statement>
<preparable SQL transaction statement> ::=
<SQL transaction statement>
<preparable SQL session statement> ::=
<SQL session statement>
<preparable implementation-defined statement> ::=
!! <EMPHASIS>(See the Syntax Rules.)
<direct SQL statement> ::=
<directly executable statement> <semicolon>
<directly executable statement> ::=
<direct SQL data statement>
| <SQL schema statement>
| <SQL transaction statement>
| <SQL connection statement>
| <SQL session statement>
| <direct implementation-defined statement>
<direct SQL data statement> ::=
<delete statement: searched>
| <direct select statement: multiple rows>
| <insert statement>
| <update statement: searched>
| <temporary table declaration>
<direct select statement: multiple rows> ::=
<query expression> [ <order by clause> ]
<direct implementation-defined statement> ::=
!!<EMPHASIS>(See the Syntax Rules)
<SQL object identifier> ::=
<SQL provenance> <SQL variant>
<SQL provenance> ::= <arc1> <arc2> <arc3>
<arc1> ::= iso | 1 | iso <left paren> 1 <right paren>
<arc2> ::= standard | 0 | standard <left paren> 0 <right paren>
<arc3> ::= 9075
<SQL variant> ::= <SQL edition> <SQL conformance>
<SQL edition> ::= <1987> | <1989> | <1992>
<1987> ::= 0 | edition1987 <left paren> 0 <right paren>
<1989> ::= <1989 base> <1989 package>
<1989 base> ::= 1 | edition1989 <left paren> 1 <right paren>
<1989 package> ::= <integrity no> | <integrity yes>
<integrity no> ::= 0 | IntegrityNo <left paren> 0 <right paren>
<integrity yes> ::= 1 | IntegrityYes <left paren> 1 <right paren>
<1992> ::= 2 | edition1992 <left paren> 2 <right paren>
<SQL conformance> ::= <low> | <intermediate> | <high>
<low> ::= 0 | Low <left paren> 0 <right paren>
<intermediate> ::= 1 | Intermediate <left paren> 1 <right paren>
<high> ::= 2 | High <left paren> 2 <right paren>
AF. ��������� B - ����� ��������� SQL ��� �������
AF.1. ����� ��������� ��� PostgreSQL
���� �� �� ������� ��� PostgreSQL ����������� ����� ��������� SQL.
�� scripts �� ����� ��������� SQL ���������� ���� ��������
src/tutorial
AF.2. ������� Internet ��������
�� ������� ������ �� ���� ���� ��������� SQL ���
� <
http://w3.one.net/~jhoffman/sqltut.htm>
����� � ����������; ������� mail ���
�
[email protected]
�� ������� sites ������������ �� ��� John Hoffman:
� ��������� SQL
<
http://www.contrib.andrew.cmu.edu/~shadow/sql.html>
� ������������ �� ��� SQL Pro
<
http://www.inquiry.com/techtips/thesqlpro/>
� ������� Sites ��� �� ������� ���� �������� SQL Pro
<
http://www.inquiry.com/techtips/thesqlpro/usefulsites.html>
� ������ ��� ���������������
<
http://infoweb.magi.com/~steve/develop.html>
� DBMS Sites <
http://info.itu.ch/special/wwwfiles> ��������� �� ���
����� �� ����� comp_db.html
� DB Ingredients <
http://www.compapp.dcu.ie/databases/f017.html>
� Web Authoring <
http://www.stars.com/Tutorial/CGI/>
� Computing Dictionary <
http://wfn-shop.princeton.edu/cgi-
bin/foldoc>
� DBMS Lab/Links <
http://www-ccs.cs.umass.edu/db.html>
� SQL FAQ
<
http://epoch.CS.Berkeley.EDU:8000/sequoia/dba/montage/FAQ>
��������� �� ��� ����� �� ����� SQL_TOC.html
� ������ SQL <
http://chaos.mur.csu.edu.au/itc125/cgi/sqldb.html>
� RIT ������ ��� ������� �����
<
http://www.it.rit.edu/~wjs/IT/199602/icsa720/icsa720postings.html>
� Database Jump Site <
http://www.pcslink.com/~ej/dbweb.html>
� ��������� �������������� ��� Web
<
http://www.eng.uc.edu/~jtilley/tutorial.html>
� ����� ��� ���������������
<
http://www.ndev.com/ndc2/support/resources.htp>
� ����� ������� <
http://ashok.pair.com/sql.htm>
� ������ IMAGE SQL
<
http://jazz.external.hp.com/training/sqltables/main.html>
� Internet Resource List <
http://www.eit.com/web/netservices.html>
AG. Appendix C - ������� ��� ������� ����������� Linux
�� �������� �� ��������������� �� PostgreSQL �� Linux, ��� ����������
������� ���� ��� ����������� ��� Linux, ����������� ��� ������� ��
�� ������ ��� Appendix. ������� �� ������� ������ -
� �������������� �� Linux - ����� �� Linux ����� ������� ���
���������� ����� �������� �� ������� �� �� Windows 95/NT
� ������� ��� 10����� ������� ����������� Linux
� ����� �������� Microsoft-Linux
� ������� ������ ��� �� ������������� ��� ����� Linux
� Main Site is at <
http://members.spree.com/technology/aldev/>
� Mirror site <
http://aldev.8m.com>
� Mirror site <
http://aldev.webjump.com>
� Mirror site <
http://homepages.infoseek.com/~aldev1/index.html>
� Mirror site <
http://www3.bcity.com/aldev/>