ITPUB??ì3
12月微软Hyper-V虚拟化沙龙主题征集
ITPUB论坛 » MySQL及其它开源数据库 » POSTGRESQL 原生WINDOWS版 8.0 BETA出来了

标题: POSTGRESQL 原生WINDOWS版 8.0 BETA出来了
离线 Arrayxhd730
初级会员



精华贴数 0
个人空间 0
技术积分 104 (16317)
社区积分 1 (34764)
注册日期 2003-6-11
论坛徽章:0
      
      

发表于 2004-8-11 22:54 
POSTGRESQL 原生WINDOWS版 8.0 BETA出来了

 英语不太好。   从www.pgsql.com.tw抄下来的。
抢个头彩
 学好JAVA后,我准备用POSTGRESQL来开发数据库程序了。不要钱,功能丰富。爽呀。有市场前景。

不管您目前有沒有在使用PostgreSQL資料庫,但是在下一個版本的到來 將會令您不得不注意Open Source中最強大的資料庫即將進行一個重大的 轉折,像四年前6.0 -> 7.0一樣的令人驚艷,以下我們將來看看即將 到來8.0的新特色:

pgsql for windows (注1)經過二年的開發,目前 已經確定將於8.0發佈,這個重大的版本,將讓更多人來接觸pgsql,畢 竟Windows為絕大多數人的工作平台,以往pgsql只能透過Linux模擬軟體 在Windows上安裝咦鳎惭b複雜及穩定性不佳等原因,造成很多人卻步 ,不過真正的Windows版本到來,將開啟pgsql一個新頁。

目前的pgsql已經是一個非常強勁的資料庫,非常多的商業公司都採用,此次加入更多重量級的特色,相信會讓目前需要付費的商業資料庫感到莫大的威 脅,例如新加入的tablespaces,就是在應付超大量的資料量時, 可以將table存放於不同的儲存裝置,以調校並提高不同table的效能,未來如果再加上IndexSpace,將大大的增強您資料庫的彈性, 對於一個大型資料庫而言,如何應付未來不斷擴充的資料量,pgsql已陸續補足 目前商業資料庫特色。

加入自動化的 vacuum 能力,可以在系統內設定資料庫最佳化的排程以及新 的Perl後端程序語言,可以讓熟悉Perl語言的設計師,不需要重新學習新的語 言即可直接撰寫後端程序。

一直在改進中的 Point-In-Time Recovery 即時恢復機制,也增強了其能力 ,避免資料庫因為異常狀態毀損時,可以透過日誌檔案回復,這是商業資料庫不可或缺的能力之一。

PostgreSQL在我們測試的效能中是非常卓越的,不過每 次版本的更新之中,不斷提升的效能不是目前前市面上常見的商業資料庫可以比得上 ,所以PostgreSQL 8.0 在未來的資料庫佔有率將愈來愈大。




注1:PostgreSQL for win是採用Service咦髂J剑灾荒苓作於 Windows NT/2000/XP 以上版本。






Release Notes
Release 8.0

Release date: 2004-??-??, current as of 2004-08-06
_________________________________________________________________

Overview

Major changes in this release:

Win32 Native Server
This is the first PostgreSQL release to natively run on
Microsoft Windows as a server. It can run as a Windows service.
This release supports NT-based Windows releases like NT4,
Win2k, XP, Win2003. Older releases like Windows 95, 98, and ME
are not supported because these operating systems do not have
the infrastructure to support PostgreSQL. A separate installer
project has been created to ease installation on Windows:
http://pgfoundry.org/projects/pginstaller.

Previous releases required the Unix emulation toolkit Cygwin
for Win32 server support. PostgreSQL has always supported
clients on Win32.

Savepoints Improve Transaction Control
Savepoints allow specific parts of a transaction to be aborted
without affecting the remainder of the transaction. Prior
releases had no such capability; there was no way to recover
from a statement failure within a transaction except by
aborting the whole transaction. This feature is valuable for
application writers who require error recovery within a complex
transaction.

Point-In-Time Recovery Increases Reliability
Though PostgreSQL is very reliable, in previous releases there
was no way to recover from disk drive failure except to restore
from a previous backup or use a standby replication server.
Point-in-time recovery allows continuous backup of the server.
You can recover either to the point of failure or to some
transaction in the past.

Tablespaces Simplify Disk Layout
Tablespaces allow administrators to select the file systems
used for storage of databases, schemas, tables, or indexes.
This improves performance and control over disk space usage.
Prior releases used initlocation and manual symlink management
for such tasks.

Improved Buffer Management, CHECKPOINT, VACUUM
This release has a more intelligent buffer replacement
strategy, which will make better use of available shared
buffers and improve performance. The performance impact of
vacuum and checkpoints is also lessened.

Change Column Types
A column's data type can now be changed with ALTER TABLE.

New Perl Server-Side Language
A new version of the plperl server-side language now supports a
persistent shared storage area, triggers, returning records and
arrays of records, and SPI calls to access the database.

COPY Handles Comma-Separated-Value Files
COPY can now read and write comma-separated-value (CSV) files.
It has the flexibility to interpret non-standard quoting and
separation characters too.
_________________________________________________________________

Migration to version 8.0

A dump/restore using pg_dump is required for those wishing to migrate
data from any previous release.

Observe the following incompatibilities:

* Server configuration parameters virtual_host and tcpip_socket have
been replaced with a more general parameter listen_addresses.
Also, the server now listens on localhost by default, which
eliminates the need for the -i postmaster switch in many
scenarios.
* Server configuration parameters SortMem and VacuumMem have been
renamed to work_mem and maintenance_work_mem to better reflect
their use. The original names are still supported in SET and SHOW.
* Server configuration parameters log_pid, log_timestamp, and
log_source_port have been removed now that a more flexible
log_line_prefix has been added.
* Server configuration parameter syslog has been removed and
replaced with a more logical log_destination variable to control
the log output destination.
* Server configuration parameter log_statement has been changed so
it can selectively log just database modification or data
definition statements.
* Server configuration parameter max_expr_depth parameter has been
replaced with max_stack_depth which measures the physical stack
size rather than the expression nesting depth. This helps prevent
session termination due to stack overflow caused by recursive
functions.
* The length() function no longer counts trailing spaces in CHAR(n)
values.
* Casting an integer to BIT(N) selects the rightmost N bits of the
integer, not the leftmost N bits as before.
* UPDATE-ing an element or slice of a NULL array value now produces
a non-NULL array result, namely an array containing just the
assigned-to positions.
* The server now warns of empty strings passed to oid/float4/float8
data types. In the next major release, doing this will generate an
error.
* The extract() function (also called date_part) now returns the
proper year for BC dates. It previously returned one less than the
current year. The function now also returns the proper values for
millennium and century.
* psql's copy command now reads or writes the query stdin/stdout,
rather than psql's stdin/stdout. The previous behavior can be
accessed via new pstdin/pstdout parameters.
* The JDBC client interface has been removed from the core
distribution, and is now hosted at http://jdbc.postgresql.org. The
TCL client interface has also been removed. There are several TCL
interfaces now hosted at http://gborg.postgresql.org.
* The server now uses its own time zone database, rather than the
one supplied by the operating system. This will provide consistent
behavior across all platforms. In most cases, there should be
little noticeable difference in time zone behavior, except that
the time zone names used by SET/SHOW TimeZone may be different
from what your platform provides.
* EXECUTE now returns a completion tag that matches the executed
statement.
* configure's threading option no longer requires users to run tests
or edit configuration files; threading options are now detected
automatically.
* Now that tablespaces have been implemented, initlocation has been
removed.
* Syntax checking of array input processing has been tighened up
considerably. Junk that was previously allowed in odd places with
odd results now causes an ERROR. Also changed behavior with
respect to whitespace surrounding array elements; trailing
whitespace is now ignored as well as leading whitespace (which has
always been ignored).
_________________________________________________________________

Changes

Below you will find a detailed account of the changes between release
8.0 and the previous major release.
_________________________________________________________________

Performance Improvements

* Support cross-data-type index usage (Tom)
Before this change, many queries would not use an index if the
data types did not match exactly. This improvement makes index
usage more intuitive and consistent.
* New buffer replacement strategy that improves caching (Jan)
Prior releases used a least-recently-used (LRU) cache to keep
recently referenced pages in memory. The LRU algorithm did not
consider the number of times a specific cache entry was accessed,
so large table scans could force out useful cache pages. The new
cache algorithm uses four separate lists to track most recently
used and most frequently used cache pages and dynamically optimize
their replacement based on the work load. This should lead to much
more efficient use of the shared buffer cache. Administrators who
have tested shared buffer sizes in the past should retest with
this new cache replacement policy.
* Add subprocess to write dirty buffers periodically to reduce
checkpoint writes (Jan)
In previous releases, the checkpoint process, which runs every few
minutes, would write all dirty buffers to the operating system's
buffer cache then flush all dirty operating system buffers to
disk. This often resulted in a periodic spike in disk usage that
hurt performance. The new code uses a background writer to trickle
disk writes at a steady pace so checkpoints have far fewer dirty
pages to write to disk. Also, the new code does not issue a global
sync() call, but instead fsync()s just the files written since the
last checkpoint. This should improve performance and minimize
degradation during checkpoints.
* Add ability to prolong vacuum to reduce performance impact (Jan)
On busy systems, VACUUM performs many I/O requests which can hurt
performance for other users. This release allows you to slow down
VACUUM to reduce its impact on other users, though this increases
the total duration of VACUUM.
* Improve btree index performance for duplicate keys (Dmitry Tkach,
Tom)
This improves the way indexes are scanned when many duplicate
values exist in the index.
* Improved index usage with OR clauses (Tom)
This allows the optimizer to use indexes in statements with many
OR clauses that would not have been indexed in the past. It can
also use multi-column indexes where the first column is specified
and the second column is part of an OR clause.
* Improve matching of partial index clauses (Tom)
The server is now smarter about using partial indexes in queries
involving complex WHERE clauses.
* Improve performance of the GEQO optimizer (Tom)
The GEQO optimizer is used to plan queries involving many tables
(by default, twelve or more). This release speeds up the way
queries are analyzed to decrease time spent in optimization.
* Miscellaneous optimizer improvements
There is not room here to list all the minor improvements made,
but numerous special cases work better than in prior releases.
* Improve lookup speed for C functions (Tom)
This release uses a hash table to lookup information for
dynamically loaded C functions. This improves their speed so they
perform nearly as quickly as functions that are built into the
server executable.
* Add type-specific ANALYZE statistics capability (Mark Cave-Ayland)
This feature allows more flexibility in generating statistics for
non-standard data types.
* Allow collection of ANALYZE statistics for expression indexes
(Tom)
Expression indexes (also called functional indexes) allow users to
index not just columns but the results of expressions and function
calls. With this release, the optimizer can gather and use
statistics about the contents of expression indexes. This will
greatly improve the quality of planning for queries in which an
expression index is relevant.
* New two-stage sampling method for ANALYZE (Manfred Koizar)
This gives better statistics for asymmetric data distributions.
* Speed up TRUNCATE (Tom)
This buys back some of the performance loss observed in 7.4, while
still keeping TRUNCATE transaction-safe.
_________________________________________________________________

Server Changes

* Add WAL file archiving and point-in-time recovery (Simon Riggs)
* Add tablespaces so admins can control disk layout (Gavin)
* Add a built-in log rotation program (Andreas Pflug)
It is now possible to log server messages conveniently without
relying on either syslog or an external log rotation program.
* Add new read-only server configuration parameters to query server
compile-time settings: block_size, integer_datetimes,
max_function_args, max_identifier_length, max_index_keys (Joe)
* Make quoting of "sameuser", "samegroup", and "all" remove special
meaning of these terms in pg_hba.conf (Andrew)
* Use clearer IPv6 name ::1/128 for localhost in default pg_hba.conf
(Andrew)
* Rename server configuration parameters SortMem and VacuumMem to
work_mem and maintenance_work_mem (Old names still supported)
(Tom)
This change was made to clarify that bulk operations such as index
and foreign key creation use maintenance_work_mem, while work_mem
is for workspaces used during query execution.
* Allow logging of session disconnections using server configuration
log_disconnections (Andrew)
* Add new server configuration parameter log_line_prefix to allow
control of information emitted in each log line (Andrew)
Available information includes user name, database name, remote IP
address, and session start time.
* Remove server configuration parameters log_pid, log_timestamp,
log_source_port; functionality superseded by log_line_prefix
(Andrew)
* Replace the virtual_host and tcpip_socket parameters with a
unified listen_addresses parameter (Andrew, Tom)
* Listen on localhost by default, which eliminates the need for the
-i postmaster switch in many scenarios (Andrew)
Listening on localhost (127.0.0.1) opens no new security holes but
allows configurations like Win32 and JDBC, which do not support
local sockets, to work without special adjustments.
* Remove syslog server configuration parameter, and add more logical
log_destination variable to control log output location (Magnus)
* Change server configuration parameter log_statement to take values
all, mod, ddl, or none to select which queries are logged (Bruce)
This allows administrators to log only data definition changes or
only data modification statements.
* Allow configuration files to be placed outside the data directory
(mlw)
By default, configuration files sit in the top server directory.
With this addition, configuration files can be placed outside the
data directory, easing administration.
* Plan prepared queries only when first executed so constants can be
used for statistics (Oliver Jowett)
Prepared statements plan queries once and execute them many times.
While prepared queries avoid the overhead of re-planning on each
use, the quality of the plan suffers from not knowing the exact
parameters to be used in the query. In this release, planning of
unnamed prepared statements is delayed until the first execution,
and the actual parameter values of that execution are used as
optimization hints.
* Allow DECLARE CURSOR to take parameters (Oliver Jowett)
It is now useful to issue DECLARE CURSOR in a Parse message with
parameters. The parameter values sent at Bind time will be
substituted into the execution of the cursor's query.
* Fix hash joins and aggregates of INET and CIDR data types (Tom)
Release 7.4 handled hashing of mixed INET and CIDR values
incorrectly. (This bug did not exist in prior releases because
they wouldn't try to hash either datatype.)
_________________________________________________________________

Query Changes

* Add savepoints (nested transactions) (Alvaro)
* Unsupported isolation levels are now accepted and promoted to the
nearest supported level (Peter)
The SQL specification states that if a database doesn't support a
specific isolation level, it should use the next more restrictive
level. This change complies with that recommendation.
* Allow BEGIN WORK to specify transaction isolation levels like
START TRANSACTION (Bruce)
* Fix table permission checking for cases in which rules generate a
query type different from the originally submitted query (Tom)
* Implement dollar quoting to simplify single-quote usage (Andrew,
Tom, David Fetter)
In previous releases, because single quotes had to be used to
quote a function's body, the use of single quotes inside the
function text required use of two single quotes or other
error-prone notations. With this release we add the ability to use
"dollar quoting" to quote a block of text. The ability to use
different quoting delimiters at different nesting levels greatly
simplifies the task of quoting correctly, especially in complex
functions. Dollar quoting can be used anywhere quoted text is
needed.
* Make CASE val WHEN compval1 THEN ... evaluate val only once (Tom)
CASE no longer evaluates the test expression multiple times. This
has benefits when the expression is complex or is volatile.
* Test HAVING before computing target list of an aggregate query
(Tom)
Fixes improper failure of cases such as SELECT SUM(win)/SUM(lose)
... GROUP BY ... HAVING SUM(lose) > 0. This should work but
formerly could fail with divide-by-zero.
* Replace max_expr_depth parameter with max_stack_depth parameter,
measured in kilobytes of stack size (Tom)
This gives us a fairly bulletproof defense against crashing due to
runaway recursive functions. Instead of measuring the depth of
expression nesting, we now directly measure the size of the
execution stack.
* Allow arbitrary row expressions (Tom)
This release allows SQL expressions to contain arbitrary composite
types, that is, row values. It also allows functions to more
easily take rows as arguments and return row values.
* Allow LIKE/ILIKE to be used as the operator in row and subselect
comparisons (Fabien Coelho)
* Avoid locale-specific case conversion of basic ASCII letters in
identifiers and keywords (Tom)
This solves the "Turkish problem" with mangling of words
containing I and i. Folding of characters outside the 7-bit-ASCII
set is still locale-aware.
* Improve syntax error reporting (Fabien, Tom)
Syntax error reports are more useful than before.
* Change EXECUTE to return a completion tag matching the executed
statement (Kris Jurka)
Previous releases return an EXECUTE tag for any EXECUTE call. In
this release, the tag returned will reflect the command executed.
* Avoid emitting NATURAL CROSS JOIN in rule listings (Tom)
Such a clause makes no logical sense, but in some cases the rule
decompiler formerly produced this syntax.
_________________________________________________________________

Object Manipulation Changes

* Add COMMENT ON casts, conversions, languages, operator classes,
and large objects (Christopher)
* Add new server configuration parameter default_with_oids to
control whether tables are created with OIDs by default (Neil)
This allows administrators to default all CREATE TABLE commands to
create tables without OID columns.
* Add WITH / WITHOUT OIDS clause to CREATE TABLE AS (Neil)
* Allow ALTER TABLE DROP COLUMN to drop an OID column (ALTER TABLE
SET WITHOUT OIDS still works) (Tom)
* Allow composite types as table columns (Tom)
* Allow ALTER ... ADD COLUMN with defaults and NOT NULL constraints;
works per SQL spec (Rod)
It is now possible for ADD COLUMN to create a column that is not
initially filled with NULLs, but with a specified default value.
* Add ALTER COLUMN TYPE to change column's type (Rod)
It is now possible to alter a column's datatype without dropping
and re-adding the column.
* Allow multiple ALTER actions in a single ALTER TABLE command (Rod)
This is particularly useful for ALTER commands that rewrite the
table (which include ALTER COLUMN TYPE and ADD COLUMN with a
default). By grouping ALTER commands together, the table need be
rewritten only once.
* Allow ALTER TABLE to add SERIAL columns (Tom)
This is related to the new capability of adding defaults for new
columns.
* Allow changing the owners of aggregates, conversions, databases,
functions, operators, operator classes, schemas, types, and
tablespaces (Christopher, Euler Taveira de Oliveira)
Previously this required modifying the system tables directly.
* Allow temporary object creation to be limited to SECURITY DEFINER
functions (Sean Chittenden)
* Add ALTER TABLE ... SET WITHOUT CLUSTER (Christopher)
Prior to this release, there was no way to clear an auto-cluster
specification except to modify the system tables.
* Constraint/Index/SERIAL names are now table_column_type with
numbers appended to guarantee uniqueness within the schema (Tom)
The SQL specification states that such names should be unique
within a schema.
* Add pg_get_serial_sequence() to return a serial column's sequence
name (Christopher)
This allows automated scripts to reliabily find the serial
sequence name.
* Warn when primary/foreign key datatype mismatch requires costly
lookup
_________________________________________________________________

Utility Command Changes

* Allow CREATE SCHEMA to create triggers, indexes, and sequences
(Neil)
* Add ALSO keyword to CREATE RULE (Fabien Coelho)
This allows ALSO to be added to rule creation to contrast it with
INSTEAD rules.
* Add NOWAIT option to LOCK command (Tatsuo)
This allows the LOCK command to fail if it would have to wait for
the requested lock.
* Allow COPY to read and write comma-separated-value (CSV) files
(Andrew, Bruce)
* Generate error if the COPY delimiter and NULL string conflict
(Bruce)
* GRANT/REVOKE behavior follows the SQL spec more closely
* Avoid locking conflict between CREATE INDEX and CHECKPOINT (Tom)
In 7.3 and 7.4, a long-running btree index build could block
concurrent CHECKPOINTs from completing, thereby causing WAL bloat
because the WAL log could not be recycled.
* Database-wide ANALYZE does not hold locks across tables (Tom)
This reduces the potential for deadlocks against other backends
that want exclusive locks on tables. To get the benefit of this
change, do not execute database-wide ANALYZE inside a transaction
block (BEGIN block); it must be able to commit and start a new
transaction for each table.
* Erase MD5 user passwords when a user is renamed (Bruce)
PostgreSQL uses the user name as salt when encrypting passwords
via MD5. When a user name is changed, their salt no longer matches
the stored MD5 password, so the stored password becomes useless.
In this release a notice is generated and the password is cleared.
A new password must then be assigned.
* New pg_ctl kill option for Win32 (Andrew)
Win32 does not have a kill command to send signals to backends so
this capability was added to pg_ctl.
* Information schema improvements
* Add --pwfile option to initdb so the initial password can be set
by GUI tools (Magnus)
* Detect locale/encoding mismatch in initdb (Peter)
_________________________________________________________________

Data Type and Function Changes

* More complete support for composite types (row types) (Tom)
Composite values can be used in many places where only scalar
values worked before.
* Reject non-rectangular array literals as erroneous (Joe)
Formerly, array_in would silently build a surprising result.
* Syntax checking of array input processing considerably tighened up
(Joe)
Junk that was previously allowed in odd places with odd results
now causes an ERROR.
* Array element trailing whitespace is now ignored (Joe)
Formerly leading whitespace was ignored, but trailing whitespace
between an element and the delimiter or right brace was
significant. Now trailing whitespace is also ignored.
* Emit array literals with explicit array bounds when lower bound is
not one (Joe)
* Accept YYYY-monthname-DD as a date string (Tom)
* Make netmask() and hostmask() functions return maximum-length
masklen (Tom)
* Change factorial function to return NUMERIC (Gavin)
Returning NUMERIC allows the factorial function to work for a
wider range of input values.
* to_char/to_date date conversion improvements (Kurt Roeckx)
* Make length() disregard trailing spaces in CHAR(n) (Gavin)
This change was made to improve consistency: trailing spaces are
semantically insignificant in CHAR(n) data, so they should not be
counted by length().
* Warn of empty string being passed to oid/float4/float8 data types
(Neil)
8.1 will throw an error instead.
* Allow int2/int4/int8/float4/float8 input routines to have leading
or trailing whitespace (Neil)
* Better support for IEEE Infinity and NaN values in float4, float8
(Neil)
These should now work on all platforms that support IEEE-compliant
floating point arithmetic.
* Add "week" to date_trunc options (Robert Creager)
* Fix to_char for 1 BC (previously it returned 1 AD) (Bruce)
* Fix to_char(year) for BC dates (previously it returned one less
than the correct year) (Bruce)
* Fix date_part() to return the proper millennium and century
(Fabien Coelho)
In previous versions, the century and millennium results had a
wrong number and started in the wrong year, as compared to
standard reckoning of such things.
* Add ceiling() as an alias for ceil(), and power() as an alias for
pow() for standards compliance (Neil)
* Change ln(), log(), power(), and sqrt() to emit the correct
SQLSTATE error codes for certain error conditions, as specified by
SQL2003 (Neil)
* Add width_bucket() function as defined by SQL2003 (Neil)
* Add generate_series() functions to simplify working with numeric
sets (Joe)
* Fix upper/lower/initcap functions to work with multibyte encodings
(Tom)
* Add boolean and bitwise integer AND/OR aggregates (Fabien Coelho)
* New session information functions to return network addresses for
client and server (Sean Chittenden)
* Add function to determine the area of a closed path (Sean
Chittenden)
* Add function to send cancel request to other backends (Magnus)
* Add interval plus datetime operators (Tom)
The reverse ordering, datetime plus interval, was already
supported, but both are required by the SQL standard.
* Casting an integer to BIT(N) selects the rightmost N bits of the
integer (Tom)
In prior releases, the leftmost N bits were selected, but this was
deemed unhelpful, not to mention inconsistent with casting from
bit to int.
_________________________________________________________________

Server-Side Language Changes

* Allow function parameters to be declared with names (Dennis
Bjorklund)
This allows better documentation of functions. Whether the names
actually do anything depends on the specific function language
being used.
* Allow plpgsql parameter names to be referenced in the function
(Dennis Bjorklund)
This basically creates an automatic alias for each named
parameter.
* Do minimal syntax checking of plpgsql functions at creation time
(Tom)
This allows us to catch simple syntax errors sooner.
* More support for composite types (row and record variables) in
plpgsql
For example, it now works to pass a rowtype variable to another
function as a single variable.
* Default values for plpgsql variables can now reference previously
declared variables
* Improve parsing of plpgsql FOR loops (Tom)
Parsing is now driven by presence of ".." rather than datatype of
FOR variable. This makes no difference for correct functions, but
should result in more understandable error messages when a mistake
is made.
* New plperl server-side language (Command Prompt, Andrew Dunstan)
_________________________________________________________________

psql Changes

* Improve psql information display about database objects
(Christopher)
* Allow psql to display group membership in du and dg (Markus
Bertheau)
* Prevent psql dn from showing temporary schemas (Bruce)
* Allow psql to handle tilde user expansion for file names (Zach
Irmen)
* Allow psql to display fancy prompts, including color, via readline
(Reece Hart, Chet Ramey)
* Make psql copy match COPY command syntax fully (Tom)
* Show the location of syntax errors (Fabien Coelho, Tom)
* Add CLUSTER information to psql d display (Bruce)
* Change psql copy stdin/stdout to read from command input/output
(Bruce)
* Add pstdin/pstdout to read from psql's stdin/stdout (Mark Feit)
* Add global psql config file, psqlrc.sample (Bruce)
This allows a central file where global psql startup commands can
be stored.
* Have psql d+ indicate if the table has an OID column (Neil)
* On Windows, use binary mode in psql when reading files so
control-Z is not seen as end-of-file
* Have dn+ show permissions and description for schemas (Dennis
Bjorklund)


顶部
离线 ocptobe
资深会员



精华贴数 0
个人空间 0
技术积分 1790 (943)
社区积分 66 (4326)
注册日期 2002-3-4
论坛徽章:3
管理团队2006纪念徽章会员2006贡献徽章授权会员   
      

发表于 2004-8-12 11:26 
以前偶用,现在不用了,但还是要支持一下


__________________
To the world you may be one person,but to one person you may be the world.
顶部
 
    


CopyRight 1999-2006 itpub.net All Right Reserved.
北京皓辰广域网络信息技术有限公司. 版权所有
E-mail:Webmaster@itpub.net
京ICP证:010037号 联系我们 法律顾问