PostgreSQL(¥Ý¥¹¥È¥°¥ì¥¹¡¦¥¥å¡¼¡¦¥¨¥ë)¤Ë¤Ä¤¤¤Æ¤è¤¯¤¢¤ë¼ÁÌä¤È¤½¤Î²òÅú(FAQ)
-¸¶Ê¸ºÇ½ª¹¹¿·Æü: Last updated: Fri Sep 14 14:39:54 EDT 2007
+¸¶Ê¸ºÇ½ª¹¹¿·Æü: Last updated: Tue Oct 9 16:13:00 EDT 2007
¸½ºß¤Î°Ý»ý´ÉÍý¼Ô: Bruce Momjian (bruce@momjian.us)
-Maintainer of Japanese Translation: Jun Kuwamura (juk at PostgreSQL.jp)
+Maintainer of Japanese Translation: Jun Kuwamura (juk at postgresql.jp)
¤³¤Îʸ½ñ¤ÎºÇ¿·ÈÇ¤Ï http://www.postgresql.org/docs/faqs.FAQ.html ¤Ç¸«¤ë¤³¤È¤¬¤Ç
¤¤Þ¤¹¡£
4.16) ³°Éô·ë¹ç(outer join)¤Ï¤É¤Î¤è¤¦¤Ë¼Â¸½¤·¤Þ¤¹¤«?
4.17) Ê£¿ô¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤ò»È¤¦Ì䤤¹ç¤ï¤»¤Ï¤É¤Î¤è¤¦¤Ë¤¹¤ì¤Ð¤Ç¤¤Þ¤¹¤«¡©
4.18) ´Ø¿ô¤«¤éÊ£¿ô¤Î¥í¥¦¤Þ¤¿¤Ï¥«¥é¥à¤òÊÖ¤¹¤Ë¤Ï¤É¤¦¤·¤Þ¤¹¤«¡©
-4.19) PL/PgSQL ¤Î´Ø¿ô¤ÎÃæ¤Ç°ì»þ¥Æ¡¼¥Ö¥ë¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤È¤¡¢¤É¤¦¤·¤Æ "relation
-with OID ##### does not exist" ¤È¤¤¤¦¥¨¥é¡¼¤ò¼õ¤±¼è¤ë¤Î¤Ç¤·¤ç¤¦¤«¡©
-4.20) ¤É¤Î¤è¤¦¤Ê¥ì¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥½¥ê¥å¡¼¥·¥ç¥ó¤¬¤¢¤ê¤Þ¤¹¤«¡©
-4.21) ¥Æ¡¼¥Ö¥ë¤È¥«¥é¥à¤Î̾Á°¤¬¥¯¥¨¥ê¡¼¤ÎÃæ¤Çǧ¼±¤µ¤ì¤Ê¤¤¤Î¤Ï¤Ê¤¼¤Ç¤¹¤«¡©¤Ê¤¼Âç
+4.19) ¤É¤Î¤è¤¦¤Ê¥ì¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥½¥ê¥å¡¼¥·¥ç¥ó¤¬¤¢¤ê¤Þ¤¹¤«¡©
+4.20) ¥Æ¡¼¥Ö¥ë¤È¥«¥é¥à¤Î̾Á°¤¬¥¯¥¨¥ê¡¼¤ÎÃæ¤Çǧ¼±¤µ¤ì¤Ê¤¤¤Î¤Ï¤Ê¤¼¤Ç¤¹¤«¡©¤Ê¤¼Âç
ʸ»ú²½(¥¥ã¥Ô¥¿¥é¥¤¥º)¤Ï²¹Â¸¤µ¤ì¤Ê¤¤¤Î¤Ç¤¹¤«?
ÆüËܸì¤Ë´Ø¤¹¤ë¼ÁÌä
¥¿¤ò»ý¤Á¤Þ¤¹¤¬¡¢¤³¤ì¤é¤Î¥°¥ë¡¼¥×¤Ï¥³¥ó¥È¥í¡¼¥ë¤¹¤ë¤¿¤á¤È¤¤¤¦¤è¤ê¤â¡¢´ÉÍý¾å¤Î¤â
¤Î¤Ç¤¹¡£¤³¤³¤Ç¤Ï¡¢¥×¥í¥¸¥§¥¯¥È¤Ï¡¢¤À¤ì¤Ç¤â»²²Ã¤¬¤Ç¤¤ë³«È¯¼Ô¤È¥æ¡¼¥¶¤Î¥³¥ß¥å¥Ë
¥Æ¥£¤Ë¤è¤êÊý¸þÉÕ¤±¤é¤ì¤Þ¤¹¡£ÆɼԤ¬¤ä¤é¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤³¤È¤Ï¡¢¥á¡¼¥ê¥ó¥°¥ê¥¹¥È
-¤ò¥µ¥Ö¥¹¥¯¥é¥¤¥Ö¤·¤Æ¡¢µÄÏÀ¤Ë»²²Ã¤¹¤ë¤³¤È¤Ç¤¹¡£¡ÊDeveloper's FAQ¤Ë¤Ï¡¢PostgreSQL
-³«È¯¤Ë²Ã¤ï¤êÊý¤Ë¤Ä¤¤¤Æ¤Î¾ðÊ󤬤¢¤ê¤Þ¤¹¡£¡Ë
+¤ò¥µ¥Ö¥¹¥¯¥é¥¤¥Ö¤·¤Æ¡¢µÄÏÀ¤Ë»²²Ã¤¹¤ë¤³¤È¤Ç¤¹¡£¡ÊDeveloper's FAQ¤Ë¤Ï¡¢Postgres³«
+ȯ¤Ë²Ã¤ï¤êÊý¤Ë¤Ä¤¤¤Æ¤Î¾ðÊ󤬤¢¤ê¤Þ¤¹¡£¡Ë
1.3) PostgreSQL ¤ÎÃøºî¸¢¤Ï¤É¤¦¤Ê¤Ã¤Æ¤Þ¤¹¤«¡©
¡¼¥¹¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤Ç¡¢¥Í¥¤¥Æ¥£¥Ö¤ËÁö¤ê¤Þ¤¹¡£¤¢¤é¤«¤¸¤á¥Ñ¥Ã¥±¡¼¥¸¤Ë
¤µ¤ì¤¿¥¤¥ó¥¹¥È¡¼¥é¤¬ http://pgfoundry.org/projects/pginstaller ¤Ë¤¢¤ê¡¢ÍøÍѤǤ
¤Þ¤¹¡£MSDOS¥Ù¡¼¥¹¤ÎWindows¤Î¥Ð¡¼¥¸¥ç¥ó(Win95, Win98, WinMe)¤Ç¤Ï¡¢Cygwin¤ò»È¤Ã¤Æ
-PostgreSQL ¤òÁö¤é¤»¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
+Postgres ¤òÁö¤é¤»¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
[ÌõÃí
pgInstaller ¤ÎÆþ¼ê¤ÏFTP¥ß¥é¡¼¥µ¥¤¥È¤Î win32 ¥Ç¥£¥ì¥¯¥È¥ê¤«¤é¤â²Äǽ¤Ç¤¹¡£
1.5) PostgreSQL ¤Ï¤É¤³¤«¤éÆþ¼ê¤Ç¤¤Þ¤¹¤«¡©
Web¥Ö¥é¥¦¥¶·Ðͳ¤À¤È¡¢ http://www.postgresql.org/ftp/¡¢¤½¤ì¤«¤é¡¢ftp·Ðͳ¤À¤È¡¢
-ftp://ftp.PostgreSQL.org/pub/ ¤ò»È¤¤¤Þ¤¹¡£
+ftp://ftp.postgresql.org/pub/ ¤ò»È¤¤¤Þ¤¹¡£
1.6) ºÇ¿·¤Î¥ê¥ê¡¼¥¹¤Ï¤É¤ì¤Ç¤¹¤«¡©
Web²ñ°÷¤ÈÀµ²ñ°÷¤Î²ñÈñ¤Ï̵ÎÁ¤Ç¤¹¤¬¡¢¶¨»¿²ñ°÷¤Î²ñÈñ¤È²ñ°÷¤Î¹×¸¥¤Ç
²ñ¤Ï±¿±Ä¤µ¤ì¤Æ¤¤¤Þ¤¹¡£)
¾Ü¤·¤¯¤Ï¡¢JPUG ¤ÎWeb ¥µ¥¤¥È:
- http://www.PostgreSQL.jp/
+ http://www.postgresql.jp/
¤ò¤´¤é¤ó¤¯¤À¤µ¤¤¡£
ÆüËܸì¤ÎIRC¥Á¥ã¥ó¥Í¥ë '#PostgreSQL:*.jp' ¤â¸ºß¤·¤Þ¤¹¡£
http://www.postgresql.org/support/submitbug ¤ÎPostgreSQL ¥Ð¥°¥Õ¥©¡¼¥à¤òˬ¤ì¤Æ¤¯
¤À¤µ¤¤¡£¥Ð¥°¥ì¥Ý¡¼¥È¤òÄó½Ð¤¹¤ë»ÅÊý¤Ë¤Ä¤¤¤Æ¤Î¼ê°ú¤È»Ø¿Ë¤¬¤¢¤ê¤Þ¤¹¡£
-¤½¤ì¤ÈƱ»þ¤Ë ftp ¥µ¥¤¥È ftp://ftp.PostgreSQL.org/pub/ ¤Ç¡¢ºÇ¿·¥Ð¡¼¥¸¥ç¥ó¤Î
-PostgreSQL ¤òõ¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£
+¤½¤ì¤ÈƱ»þ¤Ë ftp ¥µ¥¤¥È ftp://ftp.postgresql.org/pub/ ¤Ç¡¢ºÇ¿·¥Ð¡¼¥¸¥ç¥ó¤Î
+Postgres ¤òõ¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£
1.9) ´ûÃΤΥХ°¤ä̤¤À̵¤¤µ¡Ç½¤Ï¤É¤¦¤ä¤Ã¤Æ¸«¤Ä¤±¤Þ¤¹¤«¡©
²æ¡¹¤Ï¡¢PostgreSQL ¤Ë´Ø¤·¤Æ¡¢ÅŻҥ᡼¥ë¤ÇľÀÜÂбþ¤·¤Æ TODO ¥ê¥¹¥È¤òºÇ¿·¤Ë¹¹¿·¤·
¤Æ¤æ¤¯¤Û¤¦¤¬¤è¤ê¸ú²ÌŪ¤Ç¤¢¤ë¤³¤È¤òÃΤäƤ¤¤Þ¤¹¤Î¤Ç¡¢¥Ð¥°ÄÉÀ×¥·¥¹¥Æ¥à¤Ï»È¤¤¤Þ¤»
¤ó¡£¸½¼Â¤Ë¡¢¤³¤Î¥½¥Õ¥È¥¦¥§¥¢¤ÎÃæ¤Ç¥Ð¥°¤Ï¤½¤ì¤Û¤ÉŤ¯¤Ï¤¤Â³¤±¤Þ¤»¤ó¤·¡¢Â¿¤¯¤Î¥æ
-¡¼¥¶¤Ë±Æ¶Á¤¹¤ë¥Ð¥°¤ÏÁáµÞ¤Ë½¤Àµ¤µ¤ì¤Þ¤¹¡£PostgreSQL¤Î¥ê¥ê¡¼¥¹¤Ç¡¢¤¹¤Ù¤Æ¤ÎÊѹ¹ÅÀ
-¡¢²þÎÉÅÀ¡¢¤½¤·¤Æ¡¢½¤ÀµÅÀ¤òÃΤꤿ¤±¤ì¤Ð¡¢ CVS ¤Î¥í¥°¥á¥Ã¥»¡¼¥¸¤ò¸«¤Æ¤¯¤À¤µ¤¤¡£¥ê
-¥ê¡¼¥¹¥Î¡¼¥È¤Ë¤µ¤¨¡¢¤³¤Î¥½¥Õ¥È¥¦¥§¥¢¤Ë²Ã¤¨¤é¤ì¤¿¤¹¤Ù¤Æ¤ÎÊѹ¹ÅÀ¤ÏÌÖÍ夵¤ì¤Æ¤¤¤Þ
-¤»¤ó¡£
+¡¼¥¶¤Ë±Æ¶Á¤¹¤ë¥Ð¥°¤ÏÁáµÞ¤Ë½¤Àµ¤µ¤ì¤Þ¤¹¡£Postgres¤Î¥ê¥ê¡¼¥¹¤Ç¡¢¤¹¤Ù¤Æ¤ÎÊѹ¹ÅÀ¡¢
+²þÎÉÅÀ¡¢¤½¤·¤Æ¡¢½¤ÀµÅÀ¤òÃΤꤿ¤±¤ì¤Ð¡¢ CVS ¤Î¥í¥°¥á¥Ã¥»¡¼¥¸¤ò¸«¤Æ¤¯¤À¤µ¤¤¡£¥ê¥ê
+¡¼¥¹¥Î¡¼¥È¤Ë¤µ¤¨¡¢¤³¤Î¥½¥Õ¥È¥¦¥§¥¢¤Ë²Ã¤¨¤é¤ì¤¿¤¹¤Ù¤Æ¤ÎÊѹ¹ÅÀ¤ÏÌÖÍ夵¤ì¤Æ¤¤¤Þ¤»
+¤ó¡£
1.10) ¤É¤Î¤è¤¦¤Êʸ½ñ¤¬¤¢¤ê¤Þ¤¹¤«¡©
ÇÛÉÕ¤ÎÃæ¤Ë¡¢¤¤¤¯¤Ä¤«¤Î¥Þ¥Ë¥å¥¢¥ë¤È¥ª¥ó¥é¥¤¥ó¡¦¥Þ¥Ë¥å¥¢¥ë(¥Þ¥Ë¥å¥¢¥ë¡¦¥Ú¡¼¥¸)¤ª
¤è¤Ó¤¤¤¯¤Ä¤«¤Î¾®¤µ¤Ê¥Æ¥¹¥ÈÎãÂ꤬´Þ¤Þ¤ì¤Þ¤¹¡£ /doc¥Ç¥£¥ì¥¯¥È¥ê¤ò¤´¤é¤ó¤¯¤À¤µ¤¤¡£
-¤Þ¤¿¡¢¥Þ¥Ë¥å¥¢¥ë¤Ï¡¢ http://www.PostgreSQL.org/docs/¤Ç¥ª¥ó¥é¥¤¥ó¤Ç¤â±ÜÍ÷¤Ç¤¤Þ
+¤Þ¤¿¡¢¥Þ¥Ë¥å¥¢¥ë¤Ï¡¢ http://www.postgresql.org/docs/¤Ç¥ª¥ó¥é¥¤¥ó¤Ç¤â±ÜÍ÷¤Ç¤¤Þ
¤¹¡£
[ÌõÃí:
JPUG ʸ½ñ¡¦½ñÀÒ´ØϢʬ²Ê²ñ¤ÇËÝÌõ¤µ¤ì¤¿¥Þ¥Ë¥å¥¢¥ë¤â¤¢¤ê¤Þ¤¹¡£
- http://www.postgresql.jp/document/pg803doc/
+ http://www.postgresql.jp/document/pg825doc/
¥¤¥ó¥×¥ì¥¹¤«¤é¡¢
PostgreSQL¥ª¥Õ¥£¥·¥ã¥ë¥Þ¥Ë¥å¥¢¥ë¤È¤·¤Æ½ÐÈǤµ¤ì¤Æ¤¤¤Þ¤¹¡£
]
-¥ª¥ó¥é¥¤¥ó¤Ç»²¾È¤Ç¤¤ë PostgreSQL ¤ÎËܤâ2ºý¤¢¤ê¤Þ¤¹¡£ http://www.PostgreSQL.org
+¥ª¥ó¥é¥¤¥ó¤Ç»²¾È¤Ç¤¤ë PostgreSQL ¤ÎËܤâ2ºý¤¢¤ê¤Þ¤¹¡£ http://www.postgresql.org
/docs/books/awbook.html
[ÌõÃí:
]
-¹ØÆþ²Äǽ¤Ê½ñÀÒ¤ÎÌÜÏ¿¤Ï¡¢http://techdocs.PostgreSQL.org/techdocs/bookreviews.php
-¤Ë¤¢¤ê¤Þ¤¹¡£ PostgreSQL µ»½Ñ¾ðÊóµ»ö¤â¡¢http://techdocs.PostgreSQL.org/ ¤Ë¤¢¤ê
+¹ØÆþ²Äǽ¤Ê½ñÀÒ¤ÎÌÜÏ¿¤Ï¡¢http://techdocs.postgresql.org/techdocs/bookreviews.php
+¤Ë¤¢¤ê¤Þ¤¹¡£ PostgreSQL µ»½Ñ¾ðÊóµ»ö¤â¡¢http://techdocs.postgresql.org/ ¤Ë¤¢¤ê
¤Þ¤¹¡£
[ÌõÃí:
3.5) Àܳ¤·¤è¤¦¤È¤¹¤ë¤È¤¤Ë 'Sorry, too many clients' ¤¬½Ð¤ë¤Î¤Ï¤Ê¤¼¤Ç¤¹¤«¡©
-´ûÄê¤Ç¤ÎÀ©¸Â¤Ç¤¢¤ë 100 ¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¥»¥Ã¥·¥ç¥ó¤Ë㤷¤Æ¤·¤Þ¤Ã¤Æ¤¤¤Þ¤¹¡£
-postmaster¤¬Æ±»þÀܳ¤Ç¤¤ë¥Ð¥Ã¥¯¥¨¥ó¥É¥×¥í¥»¥¹¤ÎÀ©¸Â¿ô¤òÁý¤ä¤¹É¬Íפ¬¤¢¤ê¤Þ¤¹¡£
-postgresql.conf ¤ÎÃæ¤Î max_connections ¤ÎÃͤòÊѹ¹¤·¤Æ postmaster¤òºÆµ¯Æ°¤¹¤ë¤³
-¤È¤Ç²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£
+´ûÄê¤Ç¤ÎÀ©¸Â¤Ç¤¢¤ë 100 ¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¥»¥Ã¥·¥ç¥ó¤Ë㤷¤Æ¤·¤Þ¤Ã¤Æ¤¤¤Þ¤¹¡£¥µ¡¼¥Ð¡¼
+¤ÎƱ»þÀܳ¤Ç¤¤ë¥Ð¥Ã¥¯¥¨¥ó¥É¥×¥í¥»¥¹¤ÎÀ©¸ÂÃͤòÁý¤ä¤¹É¬Íפ¬¤¢¤ê¤Þ¤¹¡£
+postgresql.conf ¤ÎÃæ¤Îmax_connections ¤ÎÃͤòÊѹ¹¤·¤Æ¥µ¡¼¥Ð¤òºÆµ¯Æ°¤¹¤ë¤³¤È¤Ç²Ä
+ǽ¤Ë¤Ê¤ê¤Þ¤¹¡£
3.6) PostgreSQL¤Î¥¢¥Ã¥×¥°¥ì¡¼¥É¤Î¼ê½ç¤Ï¤É¤¦¤Ê¤ê¤Þ¤¹¤«¡©
ÎãÂê¤È¤·¤Æ¡¢³Æ¹Ô¤ËÀ°¿ô¤È¥Æ¥¥¹¥Èµ½Ò¤ò»ý¤Ä 100,000¹Ô¤Î¥Õ¥¡¥¤¥ë¤ò¹Í¤¨¤Æ¤ß¤Þ¤·¤ç
¤¦¡£¥Æ¥¥¹¥È¤Îʸ»úÎó¤ÎÊ¿¶ÑŤµ¤ò20¥Ð¥¤¥È¤È²¾Äꤹ¤ë¤È¡¢¥Õ¥é¥Ã¥È¥Õ¥¡¥¤¥ë¤ÎÂ礤µ
-¤ÏÌó2.8MB ¤Ç¤¹¡£¤³¤Î¥Ç¡¼¥¿¤ò´Þ¤à PostgreSQL ¥Ç¡¼¥¿¥Ù¡¼¥¹¥Õ¥¡¥¤¥ë¤ÎÂ礤µ¤Ï¼¡¤Î
-¤è¤¦¤ËÌó5.2MB¤È¸«ÀѤâ¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡§
+¤ÏÌó2.8MB ¤Ç¤¹¡£¤³¤Î¥Ç¡¼¥¿¤ò´Þ¤à Postgres ¥Ç¡¼¥¿¥Ù¡¼¥¹¥Õ¥¡¥¤¥ë¤ÎÂ礤µ¤Ï¼¡¤Î¤è
+¤¦¤ËÌó5.2MB¤È¸«ÀѤâ¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡§
24 bytes: ³Æ¥í¥¦¤Î¥Ø¥Ã¥À(³µ»»)
24 bytes: À°¿ô(int)¥Õ¥£¡¼¥ë¥É¤È¥Æ¥¥¹¥È(text)¥Õ¥£¡¼¥ë¥É
----------------------------------------
52 bytes per row
- PostgreSQL ¤Î¥Ç¡¼¥¿¥Ú¡¼¥¸¥µ¥¤¥º¤Ï 8192¥Ð¥¤¥È(8KB)¤Ê¤Î¤Ç:
+ Postgres ¤Î¥Ç¡¼¥¿¥Ú¡¼¥¸¥µ¥¤¥º¤Ï 8192¥Ð¥¤¥È(8KB)¤Ê¤Î¤Ç:
8192 bytes per page
------------------- = 146 rows per database page (ÀÚ¤ê¼Î¤Æ)
text_pattern_ops
- ¥¤¥ó¥Ç¥Ã¥¯¥¹¤òºîÀ®¤¹¤ë¤³¤È¤â¤Ç¤¤Þ¤¹¡£
-
-8.0¤è¤êÁ°¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï¡¢¥¤¥ó¥Ç¥Ã¥¯¥¹¤Ï¡¢¥Ç¡¼¥¿·¿¤¬¤Á¤ç¤¦¤É¥¤¥ó¥Ç¥Ã¥¯¥¹¤Î¥«¥é¥à
-¤Î·¿¤È°ìÃפ·¤Ê¤±¤ì¤Ð¡¢»È¤¨¤Ê¤¤¤³¤È¤¬¤·¤Ð¤·¤Ð¤¢¤ê¤Þ¤·¤¿¡£¤ª¤½¤é¤¯¡¢int2, int8,
-¤ª¤è¤Ó numeric Åù¤Î¥«¥é¥à¤Î¥¤¥ó¥Ç¥Ã¥¯¥¹¤¬¤½¤¦¤Ç¤¹¡£
+ ¥¤¥ó¥Ç¥Ã¥¯¥¹¤òºîÀ®¤¹¤ë¤³¤È¤â¤Ç¤¤Þ¤¹¡£¤Þ¤¿¡¢¤½¤ì¤òÁ´Ê¸¸¡º÷¤Î¥Õ¥ë¥Æ¥¥¹¥È¤Î
+ ¥¤¥ó¥Ç¥Ã¥¯¥¹ºîÀ®¤Ë»È¤¦¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
4.7) Ì䤤¹ç¤ï¤»¥ª¥×¥Æ¥£¥Þ¥¤¥¶¤¬¤É¤Î¤è¤¦¤ËÌ䤤¹ç¤ï¤»¤òɾ²Á¤¹¤ë¤Î¤«¤ò¸«¤ë¤Ë¤Ï¤É¤¦
¤·¤Þ¤¹¤«¡©
]
-ÄÌÈ֤ˤĤ¤¤Æ¤Î¤â¤Ã¤È¾Ü¤·¤¤¾ðÊó¤Ï¡¢¥ª¥ó¥é¥¤¥ó¥Þ¥Ë¥å¥¢¥ë¤Ç create_sequence ¤ò¤´¤é
-¤ó¤¯¤À¤µ¤¤¡£
+¼«Æ°Åª¤ËÀ¸À®¤µ¤ì¤ëÄÌÈ֤ϡ¢ <table>_<serialcolumn>_seq ¤È̾ÉÕ¤±¤é¤ì¤Æ¤¤¤Æ¡¢table
+¤È serialcolumn ¤Ï¡¢¤½¤ì¤¾¤ì¥Æ¡¼¥Ö¥ë¤È SERIAL ¥«¥é¥à¤Î̾Á°¤Ç¤¹¡£ÄÌÈ֤ˤĤ¤¤Æ¤Ï
+¡¢¥ª¥ó¥é¥¤¥ó¥Þ¥Ë¥å¥¢¥ë¤Çcreate_sequence ¤ò¤´¤é¤ó¤¯¤À¤µ¤¤¡£
4.11.2) SERIAL¥Ç¡¼¥¿·¿¤ËÁÞÆþ¤µ¤ì¤ëÃͤϡ¢¤É¤¦¤¹¤ì¤ÐÆÀ¤é¤ì¤Þ¤¹¤«¡©
-¤Ò¤È¤Ä¤ÎÊýË¡¤Ï¡¢nextval() ´Ø¿ô¤ò»È¤Ã¤Æ¤½¤ÎÃͤòÁÞÆþ¤¹¤ëÁ°(before)¤Ë SEQUENCE ¥ª
-¥Ö¥¸¥§¥¯¥È¤«¤é¼¡¤Î SERIAL Ãͤò¼è¤ê½Ð¤·¡¢¤½¤ì¤«¤é¼ÂºÝ¤ËÁÞÆþ¤ò¤¹¤ë¤³¤È¤Ç¤¹¡£
-4.11.1 ¤Î¥Æ¡¼¥Ö¥ë¤ÎÎã¤ò»È¤¦¤È¤¹¤ë¤È¡¢µ¿»÷¸À¸ì¤Ç¤Ï¤³¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
-
- new_id = execute("SELECT nextval('person_id_seq')");
- execute("INSERT INTO person (id, name) VALUES (new_id, 'Blaise Pascal')");
-
-¤½¤¦¤·¤Æ¡¢new_id ¤ËÊݸ¤·¤¿¿·¤·¤¤Ãͤò¾¤Î¥¯¥¨¥ê(¤¿¤È¤¨¤Ð¡¢ person ¥Æ¡¼¥Ö¥ë¤ËÂÐ
-¤¹¤ë³°Éô¥¡¼(foreign key)¤Î¤è¤¦¤Ë)»È¤¦¤È¤è¤¤¤Ç¤·¤ç¤¦¡£¼«Æ°Åª¤Ëºî¤é¤ì¤¿SEQUENCE
-¥ª¥Ö¥¸¥§¥¯¥È¤Î̾Á°¤Ï¡¢<table>_<serialcolumn>_seq ¤Î¤è¤¦¤Ë¤Ê¤ê¡¢¤³¤Î¤¦¤Á¡¢table
-¤È serialcolumn ¤Ï¤½¤ì¤¾¤ì¥Æ¡¼¥Ö¥ë¤Î̾Á°¤ÈSERIAL¥«¥é¥à¤Î̾Á°¤Ç¤¹¡£
+ºÇ¤â´Êñ¤ÊÊýË¡¤Ï¡¢³ä¤êÅö¤Æ¤é¤ì¤¿SERIALÃͤò RETURNING¤È¤·¤Æ¼èÆÀ¤¹¤ë¤³¤È¤Ç¤¹¡£
+4.11.1¤ÎÎãÂê¥Æ¡¼¥Ö¥ë¤ò»È¤¦¤È¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
-¤¢¤ë¤¤¤Ï¡¢Í¿¤¨¤é¤ì¤¿SERIALÃͤò¡¢¤½¤ì¤¬´ûÄêÃͤȤ·¤ÆÁÞÆþ¤µ¤ì¤¿¸å¤Ç(after)¡¢
-currval() ´Ø¿ô¤ò»È¤Ã¤Æ¼è¤ê½Ð¤¹¤³¤È¤â¤Ç¤¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢
-
- execute("INSERT INTO person (name) VALUES ('Blaise Pascal')");
- new_id = execute("SELECT currval('person_id_seq')");
+ INSERT INTO person (name) VALUES ('Blaise Pascal') RETURNING id;
4.11.3) currval() ¤Ï¾¤Î¥æ¡¼¥¶¤È¤Î¶¥¹ç¾õÂ֤˴٤뤳¤È¤Ï¤Ê¤¤¤Ç¤¹¤«¡©
¤¼¤Ç¤¹¤«¡©
¤ª¤½¤é¤¯¡¢¥·¥¹¥Æ¥à¤Î²¾ÁÛ¥á¥â¥ê¡¼¤òÁ´¤Æ»È¤¤²Ì¤¿¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤ë²ÄǽÀ¤¬¤¢¤ë¤«¡¢
-¥«¡¼¥Í¥ë¤¬¤¢¤ë¥ê¥½¡¼¥¹¤Ë¤Ä¤¤¤Æ¤â¤ÄÀ©¸ÂÃͤ¬Ä㤹¤®¤ë²ÄǽÀ¤¬¤¢¤ê¤Þ¤¹¡£postmaster
-¤ò»ÏÆ°¤¹¤ëÁ°¤Ë¤³¤ì¤ò»î¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡§
+¥«¡¼¥Í¥ë¤¬¤¢¤ë¥ê¥½¡¼¥¹¤Ë¤Ä¤¤¤Æ¤â¤ÄÀ©¸ÂÃͤ¬Ä㤹¤®¤ë²ÄǽÀ¤¬¤¢¤ê¤Þ¤¹¡£¥µ¡¼¥Ð¤ò»Ï
+Æ°¤¹¤ëÁ°¤Ë¤³¤ì¤ò»î¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡§
ulimit -d 262144
limit datasize 256m
¡£
-4.19) PL/PgSQL ¤Î´Ø¿ô¤ÎÃæ¤Ç°ì»þ¥Æ¡¼¥Ö¥ë¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤È¤¡¢¤É¤¦¤·¤Æ "relation
-with OID ##### does not exist" ¤È¤¤¤¦¥¨¥é¡¼¤ò¼õ¤±¼è¤ë¤Î¤Ç¤·¤ç¤¦¤«¡©
-
-PL/PgSQL ¤Ï´Ø¿ô¥¹¥¯¥ê¥×¥È¤ò¥¥ã¥Ã¥·¥å¤·¡¢ÉÔ¹¬¤Ë¤â¤½¤ÎÉûºîÍѤǡ¢ PL/PgSQL´Ø¿ô¤¬
-°ì»þ¥Æ¡¼¥Ö¥ë¤Ë¥¢¥¯¥»¥¹¤¹¤ë¾ì¹ç¡¢¸å¤Ç¤½¤Î¥Æ¡¼¥Ö¥ë¤ò¾Ã¤·¤Æºî¤ê¤Ê¤ª¤µ¤ì¡¢´Ø¿ô¤¬¤â
-¤¦°ìÅٸƤӽФµ¤ì¤ë¤È¡¢¤½¤Î´Ø¿ô¤Ï¥¥ã¥Ã¥·¥å¤·¤Æ¤¤¤ë´Ø¿ô¤ÎÆâÍƤϤޤÀ¸Å¤¤°ì»þ¥Æ¡¼
-¥Ö¥ë¤òº¹¤·¼¨¤·¤¿¤Þ¤Þ¤À¤«¤é¤Ç¤¹¡£¤³¤Î¡¢²ò·èºö¤È¤·¤Æ¡¢PL/PgSQL¤ÎÃæ¤Ç EXECUTE ¤ò°ì
-»þ¥Æ¡¼¥Ö¥ë¤Ø¤Î¥¢¥¯¥»¥¹¤Î¤¿¤á¤Ë»È¤¤¤Þ¤¹¡£¤½¤¦¤¹¤ë¤È¡¢¥¯¥¨¥ê¤ÏËè²ó¥Ñ¡¼¥¹¤ò¤ä¤êľ
-¤·¤µ¤ì¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
-
-4.20) ¤É¤Î¤è¤¦¤Ê¥ì¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥½¥ê¥å¡¼¥·¥ç¥ó¤¬¤¢¤ê¤Þ¤¹¤«¡©
+4.19) ¤É¤Î¤è¤¦¤Ê¥ì¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥½¥ê¥å¡¼¥·¥ç¥ó¤¬¤¢¤ê¤Þ¤¹¤«¡©
¡Ö¥ì¥×¥ê¥±¡¼¥·¥ç¥ó¡×¤È°ì¸À¤Ç¤¤¤¤¤Þ¤¹¤¬¡¢¥ì¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¤¹¤ë¤¿¤á¤Îµ»½Ñ¤Ï¤¤¤¯
¤Ä¤«¤¢¤ê¡¢¤½¤ì¤¾¤ì¡¢ÍøÅÀ¤È·çÅÀ¤¬¤¢¤ê¤Þ¤¹¡£
¤³¤Î¾¤Ë¤â¡¢¾¦ÍѤä¥Ï¡¼¥É¥¦¥§¥¢¡Ý¥Ù¡¼¥¹¤Î¥ì¥×¥ê¥±¡¼¥·¥ç¥ó¥½¥ê¥å¡¼¥·¥ç¥ó¤¬¤¤¤í¤¤
¤í¤Ê¥ì¥×¥ê¥±¡¼¥·¥ç¥ó¥â¥Ç¥ë¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤¹¡£
-4.21)¥Æ¡¼¥Ö¥ë¤È¥«¥é¥à¤Î̾Á°¤¬¥¯¥¨¥ê¡¼¤ÎÃæ¤Çǧ¼±¤µ¤ì¤Ê¤¤¤Î¤Ï¤Ê¤¼¤Ç¤¹¤«¡©¤Ê¤¼Âçʸ
+4.20)¥Æ¡¼¥Ö¥ë¤È¥«¥é¥à¤Î̾Á°¤¬¥¯¥¨¥ê¡¼¤ÎÃæ¤Çǧ¼±¤µ¤ì¤Ê¤¤¤Î¤Ï¤Ê¤¼¤Ç¤¹¤«¡©¤Ê¤¼Âçʸ
»ú²½(¥¥ã¥Ô¥¿¥é¥¤¥º)¤Ï²¹Â¸¤µ¤ì¤Ê¤¤¤Î¤Ç¤¹¤«?
-ǧ¼±¤µ¤ì¤¿Ì¾Á°¤Î¤â¤Ã¤È¤â°ìÈÌŪ¤Ê¸¶°ø¤Ï¡¢¥Æ¡¼¥Ö¥ë¤òºîÀ®¤¹¤ëºÝ¤Ë¡¢¥Æ¡¼¥Ö¥ë¤ä¥«¥é
+̾Á°¤¬Ç§¼±¤µ¤ì¤Ê¤¤¡¢ºÇ¤â°ìÈÌŪ¤Ê¸¶°ø¤Ï¡¢¥Æ¡¼¥Ö¥ë¤òºîÀ®¤¹¤ëºÝ¤Ë¡¢¥Æ¡¼¥Ö¥ë¤ä¥«¥é
¥à¤ò°Ï¤¦Æó½Å°úÍÑÉä¤Î»ÈÍѤǤ¹¡£Æó½Å°úÍÑÉä¤ò»È¤¦¤È¡¢¥Æ¡¼¥Ö¥ë¤È¥«¥é¥à¤Î̾Á°¡Ê¼±ÊÌ
»Ò¤È¤¤¤¤¤Þ¤¹¡Ë¤ÏÂçʸ»ú¤È¾®Ê¸»ú¤Î¶èÊ̤ò¤·¤Æ³ÊǼ¤µ¤ì¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢pgAdmin¤Î¤è
¤¦¤Ë¥Æ¡¼¥Ö¥ëºîÀ®¤Î¤È¤¤Ë¼«Æ°Åª¤ËÆó½Å°úÍÑÉä¤ò»È¤¦¤â¤Î¤Ï¥¯¥¨¥ê¤ÎÃæ¤Ç¤½¤ì¤é¤Î̾Á°
[ÌõÃí¡§
ÆüËܸìÈǤÎÀ½ºî¤Ë¤Ä¤¤¤Æ¤Ï°Ê²¼¤ÎÄ̤ê¤Ç¤¹¡£
- ºÇ½ª¹¹¿·Æü: 2007ǯ09·î15Æü
- ËÝÌõ¼Ô: ·¬Â¼ ½á (Jun Kuwamura <juk at PostgreSQL.jp>)
+ ºÇ½ª¹¹¿·Æü: 2007ǯ10·î10Æü
+ ËÝÌõ¼Ô: ·¬Â¼ ½á (Jun KUWAMURA <juk at postgresql.jp>)
¤³¤ÎFAQ¤ÎÏÂÌõ¤ÎºîÀ®¤Ë¤¢¤¿¤ê¶¨ÎϤò¤·¤Æ¤¯¤À¤µ¤Ã¤¿Êý¡¹(·É¾Î¤Ïά¤µ¤»¤Æ¤¤¤¿¤À¤¤Þ¤¹):
¤»¤» ¤¸¤å¤ó(Jun SESE <sesejun at linet.gr.jp>)
¿Àë ±Ñ¹§(Hidetaka KAMIYA <hkamiya at catvmics.ne.jp>)
¿û¸¶ ÆØ(Atsushi SUGAWARA <asugawar at f3.dion.ne.jp>)
- °ðÍÕ ¹áÍý(Kaori Inaba <i-kaori at sra.co.jp>)
+ °ðÍÕ ¹áÍý(Kaori Inaba <i-kaori at sraoss.co.jp>)
¤ò¤Ï¤¸¤á¡¢¥Ý¥¹¥È¥°¥ì¥¹¤Ë´Ø¤¹¤ëÏÃÂêËÉÙ¤ÊÆüËܸìPostgreSQL¥á¡¼¥ê¥ó¥°¥ê¥¹¥È¡¢
ÏÂÌõ¤Î¤¤Ã¤«¤±¤òºî¤Ã¤Æ¤¯¤ì¤¿¤ê¡¢¤¤¤Ä¤â¥Á¥§¥Ã¥¯¤ò¤·¤Æ¤¯¤ì¤ë
¤È¤¤¤¦¹àÌܤǤ¢¤ê¤Þ¤¹¡£
¤Þ¤¿¡¢ºÇ¿·ÈǤϰʲ¼¤Î¥µ¥¤¥È¤Ë¤¢¤ê¤Þ¤¹¡£
- http://www.PostgreSQL.jp/wg/jpugdoc/ ¡ÖJPUGʸ½ñ¡¦½ñÀÒ´ØϢʬ²Ê²ñ¡×
+ http://www.postgresql.jp/wg/jpugdoc/ ¡ÖJPUGʸ½ñ¡¦½ñÀÒ´ØϢʬ²Ê²ñ¡×
http://www.linux.or.jp/JF/JFdocs/INDEX-database.html ¡ÖLinux JF¥×¥í¥¸¥§¥¯¥È¡× http://www.linet.gr.jp/~juk/pgsql/ ¡ÖPostgreSQL Notes for Japanese¡×¡ÊËÝÌõ¼Ô¥Ú¡¼¥¸¡Ë
- ¤Ê¤ª¡¢¤³¤ÎÏÂÌõ¤Ë´Ø¤¹¤ë¤´°Õ¸«¡¦¤´¼ÁÌä¤Ï(juk at PostgreSQL.jp)¤Þ¤Ç¤ª´ó¤»¤¯¤À¤µ¤¤¡£
+ ¤Ê¤ª¡¢¤³¤ÎÏÂÌõ¤Ë´Ø¤¹¤ë¤´°Õ¸«¡¦¤´¼ÁÌä¤Ï(juk at postgresql.jp)¤Þ¤Ç¤ª´ó¤»¤¯¤À¤µ¤¤¡£
¡Ê¢¨ ¥á¡¼¥ë¥¢¥É¥ì¥¹¤Î " at " ¤ÏŬÀڤ˾¤·¤Æ¤¯¤À¤µ¤¤¡£È¾³Ñ¤Î "@" ¤Ç¤¹¡£¡Ë
]
<div id="pgContentWrap">
<h1>PostgreSQL(¥Ý¥¹¥È¥°¥ì¥¹¡¦¥¥å¡¼¡¦¥¨¥ë)¤Ë¤Ä¤¤¤Æ¤è¤¯¤¢¤ë¼ÁÌä¤È¤½¤Î²òÅú(FAQ)</h1>
-<p>¸¶Ê¸ºÇ½ª¹¹¿·Æü: Last updated: Fri Sep 14 14:39:54 EDT 2007</p>
+<p>¸¶Ê¸ºÇ½ª¹¹¿·Æü: Last updated: Tue Oct 9 16:13:00 EDT 2007</p>
<p>¸½ºß¤Î°Ý»ý´ÉÍý¼Ô: Bruce Momjian (<A
href="mailto:bruce@momjian.us">bruce@momjian.us</a>)<br />
Maintainer of Japanese Translation: Jun Kuwamura (<A
-href="mailto:juk at PostgreSQL.jp">juk at PostgreSQL.jp</a>)<br /></p>
+href="mailto:juk at postgresql.jp">juk at postgresql.jp</a>)<br /></p>
<p>¤³¤Îʸ½ñ¤ÎºÇ¿·ÈǤÏ<a href=
"http://www.postgresql.org/docs/faqs.FAQ.html">
http://www.postgresql.org/docs/faqs.FAQ.html</a>
<a href="#item4.16">4.16</a>) <i>³°Éô</i>·ë¹ç(<i>outer</i> join)¤Ï¤É¤Î¤è¤¦¤Ë¼Â¸½¤·¤Þ¤¹¤«?<br />
<a href="#item4.17">4.17</a>) Ê£¿ô¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤ò»È¤¦Ì䤤¹ç¤ï¤»¤Ï¤É¤Î¤è¤¦¤Ë¤¹¤ì¤Ð¤Ç¤¤Þ¤¹¤«¡©<br />
<a href="#item4.18">4.18</a>) ´Ø¿ô¤«¤éÊ£¿ô¤Î¥í¥¦¤Þ¤¿¤Ï¥«¥é¥à¤òÊÖ¤¹¤Ë¤Ï¤É¤¦¤·¤Þ¤¹¤«¡©<br />
-<a href="#item4.19">4.19</a>) PL/PgSQL ¤Î´Ø¿ô¤ÎÃæ¤Ç°ì»þ¥Æ¡¼¥Ö¥ë¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤È¤¡¢¤É¤¦¤·¤Æ "relation with OID ##### does not exist" ¤È¤¤¤¦¥¨¥é¡¼¤ò¼õ¤±¼è¤ë¤Î¤Ç¤·¤ç¤¦¤«¡©<br />
-<a href="#item4.20">4.20</a>) ¤É¤Î¤è¤¦¤Ê¥ì¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥½¥ê¥å¡¼¥·¥ç¥ó¤¬¤¢¤ê¤Þ¤¹¤«¡©<br />
-<a href="#item4.21">4.21</a>) ¥Æ¡¼¥Ö¥ë¤È¥«¥é¥à¤Î̾Á°¤¬¥¯¥¨¥ê¡¼¤ÎÃæ¤Çǧ¼±
+<a href="#item4.19">4.19</a>) ¤É¤Î¤è¤¦¤Ê¥ì¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥½¥ê¥å¡¼¥·¥ç¥ó¤¬¤¢¤ê¤Þ¤¹¤«¡©<br />
+<a href="#item4.20">4.20</a>) ¥Æ¡¼¥Ö¥ë¤È¥«¥é¥à¤Î̾Á°¤¬¥¯¥¨¥ê¡¼¤ÎÃæ¤Çǧ¼±
¤µ¤ì¤Ê¤¤¤Î¤Ï¤Ê¤¼¤Ç¤¹¤«¡© ¤Ê¤¼Âçʸ»ú²½(¥¥ã¥Ô¥¿¥é¥¤¥º)¤Ï²¹Â¸¤µ¤ì¤Ê¤¤¤Î¤Ç¤¹¤«?<br />
<h2 align="center">ÆüËܸì¤Ë´Ø¤¹¤ë¼ÁÌä</h2>
ÉÕ¤±¤é¤ì¤Þ¤¹¡£ÆɼԤ¬¤ä¤é¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤³¤È¤Ï¡¢¥á¡¼¥ê¥ó¥°¥ê¥¹¥È¤ò
¥µ¥Ö¥¹¥¯¥é¥¤¥Ö¤·¤Æ¡¢µÄÏÀ¤Ë »²²Ã¤¹¤ë¤³¤È¤Ç¤¹¡£¡Ê<a
href="http://www.postgresql.org/docs/faqs.FAQ_DEV.html">Developer's
- FAQ</a>¤Ë¤Ï¡¢PostgreSQL³«È¯¤Ë²Ã¤ï¤êÊý¤Ë¤Ä¤¤¤Æ¤Î¾ðÊ󤬤¢¤ê¤Þ¤¹¡£¡Ë</p>
+ FAQ</a>¤Ë¤Ï¡¢Postgres³«È¯¤Ë²Ã¤ï¤êÊý¤Ë¤Ä¤¤¤Æ¤Î¾ðÊ󤬤¢¤ê¤Þ¤¹¡£¡Ë</p>
<h4 id="item1.3">1.3</a>) PostgreSQL ¤ÎÃøºî¸¢¤Ï¤É¤¦¤Ê¤Ã¤Æ¤Þ¤¹¤«¡©</h4>
"http://pgfoundry.org/projects/pginstaller">
http://pgfoundry.org/projects/pginstaller</a>
¤Ë¤¢¤ê¡¢ÍøÍѤǤ¤Þ¤¹¡£MSDOS¥Ù¡¼¥¹¤ÎWindows¤Î¥Ð¡¼¥¸¥ç¥ó(Win95, Win98,
- WinMe)¤Ç¤Ï¡¢Cygwin¤ò»È¤Ã¤Æ PostgreSQL ¤òÁö¤é¤»¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£</p>
+ WinMe)¤Ç¤Ï¡¢Cygwin¤ò»È¤Ã¤Æ Postgres ¤òÁö¤é¤»¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£</p>
<small><pre>
[ÌõÃí
<p>Web¥Ö¥é¥¦¥¶·Ðͳ¤À¤È¡¢<a href="http://www.postgresql.org/ftp/">
http://www.postgresql.org/ftp/</a>¡¢¤½¤ì¤«¤é¡¢ftp·Ðͳ¤À¤È¡¢
- <a href="ftp://ftp.PostgreSQL.org/pub/">
- ftp://ftp.PostgreSQL.org/pub/</a> ¤ò»È¤¤¤Þ¤¹¡£</p>
+ <a href="ftp://ftp.postgresql.org/pub/">
+ ftp://ftp.postgresql.org/pub/</a> ¤ò»È¤¤¤Þ¤¹¡£</p>
<h4 id="item1.6">1.6</a>) ºÇ¿·¤Î¥ê¥ê¡¼¥¹¤Ï¤É¤ì¤Ç¤¹¤«¡©</h4>
Web²ñ°÷¤ÈÀµ²ñ°÷¤Î²ñÈñ¤Ï̵ÎÁ¤Ç¤¹¤¬¡¢¶¨»¿²ñ°÷¤Î²ñÈñ¤È²ñ°÷¤Î¹×¸¥¤Ç
²ñ¤Ï±¿±Ä¤µ¤ì¤Æ¤¤¤Þ¤¹¡£)
¾Ü¤·¤¯¤Ï¡¢JPUG ¤ÎWeb ¥µ¥¤¥È:
- <a href="http://www.PostgreSQL.jp/">http://www.PostgreSQL.jp/</a>
+ <a href="http://www.postgresql.jp/">http://www.postgresql.jp/</a>
¤ò¤´¤é¤ó¤¯¤À¤µ¤¤¡£
ÆüËܸì¤ÎIRC¥Á¥ã¥ó¥Í¥ë '#PostgreSQL:*.jp' ¤â¸ºß¤·¤Þ¤¹¡£
¤Ë¤Ä¤¤¤Æ¤Î¼ê°ú¤È»Ø¿Ë¤¬¤¢¤ê¤Þ¤¹¡£</p>
<p> ¤½¤ì¤ÈƱ»þ¤Ë ftp ¥µ¥¤¥È <A
- href="ftp://ftp.PostgreSQL.org/pub/">ftp://ftp.PostgreSQL.org/pub/</a>
- ¤Ç¡¢ºÇ¿·¥Ð¡¼¥¸¥ç¥ó¤Î PostgreSQL ¤òõ¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£</p>
+ href="ftp://ftp.postgresql.org/pub/">ftp://ftp.postgresql.org/pub/</a>
+ ¤Ç¡¢ºÇ¿·¥Ð¡¼¥¸¥ç¥ó¤Î Postgres ¤òõ¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£</p>
<h4 id="item1.9">1.9</a>) ´ûÃΤΥХ°¤ä̤¤À̵¤¤µ¡Ç½¤Ï¤É¤¦¤ä¤Ã¤Æ¸«¤Ä¤±¤Þ¤¹¤«¡©
¥ê¥¹¥È¤òºÇ¿·¤Ë¹¹¿·¤·¤Æ¤æ¤¯¤Û¤¦¤¬¤è¤ê¸ú²ÌŪ¤Ç¤¢¤ë¤³¤È¤òÃΤäƤ¤¤Þ¤¹
¤Î¤Ç¡¢¥Ð¥°ÄÉÀ×¥·¥¹¥Æ¥à¤Ï»È¤¤¤Þ¤»¤ó¡£
¸½¼Â¤Ë¡¢¤³¤Î¥½¥Õ¥È¥¦¥§¥¢¤ÎÃæ¤Ç¥Ð¥°¤Ï¤½¤ì¤Û¤ÉŤ¯¤Ï¤¤Â³¤±¤Þ¤»¤ó¤·¡¢
- ¿¤¯¤Î¥æ¡¼¥¶¤Ë±Æ¶Á¤¹¤ë¥Ð¥°¤ÏÁáµÞ¤Ë½¤Àµ¤µ¤ì¤Þ¤¹¡£PostgreSQL¤Î¥ê¥ê¡¼¥¹
+ ¿¤¯¤Î¥æ¡¼¥¶¤Ë±Æ¶Á¤¹¤ë¥Ð¥°¤ÏÁáµÞ¤Ë½¤Àµ¤µ¤ì¤Þ¤¹¡£Postgres¤Î¥ê¥ê¡¼¥¹
¤Ç¡¢¤¹¤Ù¤Æ¤ÎÊѹ¹ÅÀ¡¢²þÎÉÅÀ¡¢¤½¤·¤Æ¡¢½¤ÀµÅÀ¤òÃΤꤿ¤±¤ì¤Ð¡¢
<a href="http://www.postgresql.org/developer/sourcecode/">CVS</a>
¤Î¥í¥°¥á¥Ã¥»¡¼¥¸¤ò¸«¤Æ¤¯¤À¤µ¤¤¡£¥ê¥ê¡¼¥¹¥Î¡¼¥È¤Ë¤µ¤¨¡¢¤³¤Î¥½¥Õ¥È¥¦¥§¥¢
<p> ÇÛÉÕ¤ÎÃæ¤Ë¡¢¤¤¤¯¤Ä¤«¤Î¥Þ¥Ë¥å¥¢¥ë¤È¥ª¥ó¥é¥¤¥ó¡¦¥Þ¥Ë¥å¥¢¥ë(¥Þ¥Ë¥å
¥¢¥ë¡¦¥Ú¡¼¥¸)¤ª¤è¤Ó¤¤¤¯¤Ä¤«¤Î¾®¤µ¤Ê¥Æ¥¹¥ÈÎãÂ꤬´Þ¤Þ¤ì¤Þ¤¹¡£
<i>/doc</i>¥Ç¥£¥ì¥¯¥È¥ê¤ò¤´¤é¤ó¤¯¤À¤µ¤¤¡£¤Þ¤¿¡¢¥Þ¥Ë¥å¥¢¥ë¤Ï¡¢<A
- href="http://www.PostgreSQL.org/docs/">
-http://www.PostgreSQL.org/docs/</a>¤Ç¥ª¥ó¥é¥¤¥ó¤Ç¤â±ÜÍ÷¤Ç¤¤Þ¤¹¡£
+ href="http://www.postgresql.org/docs/">
+http://www.postgresql.org/docs/</a>¤Ç¥ª¥ó¥é¥¤¥ó¤Ç¤â±ÜÍ÷¤Ç¤¤Þ¤¹¡£
</p>
<p><small><pre>
[ÌõÃí:
JPUG ʸ½ñ¡¦½ñÀÒ´ØϢʬ²Ê²ñ¤ÇËÝÌõ¤µ¤ì¤¿¥Þ¥Ë¥å¥¢¥ë¤â¤¢¤ê¤Þ¤¹¡£
- <a href="http://www.postgresql.jp/document/pg820doc/">
- http://www.postgresql.jp/document/pg803doc/</a>
+ <a href="http://www.postgresql.jp/document/pg825doc/">
+ http://www.postgresql.jp/document/pg825doc/</a>
¥¤¥ó¥×¥ì¥¹¤«¤é¡¢
<a href="http://home.impress.co.jp/reference/2108.htm">
PostgreSQL¥ª¥Õ¥£¥·¥ã¥ë¥Þ¥Ë¥å¥¢¥ë</a>¤È¤·¤Æ½ÐÈǤµ¤ì¤Æ¤¤¤Þ¤¹¡£
<p>¥ª¥ó¥é¥¤¥ó¤Ç»²¾È¤Ç¤¤ë PostgreSQL ¤ÎËܤâ2ºý¤¢¤ê¤Þ¤¹¡£<a href=
- "http://www.PostgreSQL.org/docs/books/awbook.html">
- http://www.PostgreSQL.org/docs/books/awbook.html</a>
+ "http://www.postgresql.org/docs/books/awbook.html">
+ http://www.postgresql.org/docs/books/awbook.html</a>
<p><small><pre>
[ÌõÃí:
- ¤³¤ÎËܤϡ¢JPUG<a href="http://www.PostgreSQL.jp/wg/psqltrans/">¡ÖPostgreSQL BookËÝÌõʬ²Ê²ñ¡×
+ ¤³¤ÎËܤϡ¢JPUG<a href="http://www.postgresql.jp/wg/psqltrans/">¡ÖPostgreSQL BookËÝÌõʬ²Ê²ñ¡×
</a>¤ÇËÝÌõ¤µ¤ì¡¢¥Ô¥¢¥½¥ó¤«¤é<a href="http://www.seshop.com/detail.asp?pid=2587">
¡Ö¤Ï¤¸¤á¤Æ¤ÎPostgreSQL¡×</a>¤È¤·¤Æ½ÐÈǤµ¤ì¤Æ¤¤¤Þ¤¹¡£
]
</pre></small></p>
¹ØÆþ²Äǽ¤Ê½ñÀÒ¤ÎÌÜÏ¿¤Ï¡¢<a href=
- "http://techdocs.postgresql.org/techdocs/bookreviews.php">http://techdocs.PostgreSQL.org/techdocs/bookreviews.php</a>
+ "http://techdocs.postgresql.org/techdocs/bookreviews.php">http://techdocs.postgresql.org/techdocs/bookreviews.php</a>
¤Ë¤¢¤ê¤Þ¤¹¡£
PostgreSQL µ»½Ñ¾ðÊóµ»ö¤â¡¢<a href=
- "http://techdocs.PostgreSQL.org/">http://techdocs.PostgreSQL.org/</a>
+ "http://techdocs.postgresql.org/">http://techdocs.postgresql.org/</a>
¤Ë¤¢¤ê¤Þ¤¹¡£</p>
<p><small><pre>
<h4 id="item3.5">3.5</a>) Àܳ¤·¤è¤¦¤È¤¹¤ë¤È¤¤Ë <i>'Sorry, too many clients'</i> ¤¬½Ð¤ë¤Î¤Ï¤Ê¤¼¤Ç¤¹¤«¡©</h4>
<p> ´ûÄê¤Ç¤ÎÀ©¸Â¤Ç¤¢¤ë 100 ¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¥»¥Ã¥·¥ç¥ó¤Ë㤷¤Æ¤·¤Þ¤Ã¤Æ
- ¤¤¤Þ¤¹¡£<i>postmaster¤¬</i>Ʊ»þÀܳ¤Ç¤¤ë¥Ð¥Ã¥¯¥¨¥ó¥É¥×¥í¥»¥¹¤ÎÀ©¸Â
- ¿ô¤òÁý¤ä¤¹É¬Íפ¬¤¢¤ê¤Þ¤¹¡£<i>postgresql.conf</i> ¤ÎÃæ¤Î
- <i>max_connections</i> ¤ÎÃͤòÊѹ¹¤·¤Æ <i>postmaster</i>¤òºÆµ¯Æ°¤¹¤ë
- ¤³¤È¤Ç²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£</p>
+ ¤¤¤Þ¤¹¡£¥µ¡¼¥Ð¡¼¤ÎƱ»þÀܳ¤Ç¤¤ë¥Ð¥Ã¥¯¥¨¥ó¥É¥×¥í¥»¥¹¤ÎÀ©¸ÂÃͤòÁý¤ä¤¹
+ ɬÍפ¬¤¢¤ê¤Þ¤¹¡£<i>postgresql.conf</i> ¤ÎÃæ¤Î<i>max_connections</i>
+ ¤ÎÃͤòÊѹ¹¤·¤Æ¥µ¡¼¥Ð¤òºÆµ¯Æ°¤¹¤ë¤³¤È¤Ç²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£</p>
<h4 id="item3.6">3.6</a>) PostgreSQL¤Î¥¢¥Ã¥×¥°¥ì¡¼¥É¤Î¼ê½ç¤Ï¤É¤¦¤Ê¤ê¤Þ¤¹¤«¡©</h4>
<p> ÎãÂê¤È¤·¤Æ¡¢³Æ¹Ô¤ËÀ°¿ô¤È¥Æ¥¥¹¥Èµ½Ò¤ò»ý¤Ä 100,000¹Ô¤Î¥Õ¥¡¥¤¥ë¤ò
¹Í¤¨¤Æ¤ß¤Þ¤·¤ç¤¦¡£¥Æ¥¥¹¥È¤Îʸ»úÎó¤ÎÊ¿¶ÑŤµ¤ò20¥Ð¥¤¥È¤È²¾Äꤹ¤ë¤È¡¢
- ¥Õ¥é¥Ã¥È¥Õ¥¡¥¤¥ë¤ÎÂ礤µ¤ÏÌó2.8MB ¤Ç¤¹¡£¤³¤Î¥Ç¡¼¥¿¤ò´Þ¤à PostgreSQL
+ ¥Õ¥é¥Ã¥È¥Õ¥¡¥¤¥ë¤ÎÂ礤µ¤ÏÌó2.8MB ¤Ç¤¹¡£¤³¤Î¥Ç¡¼¥¿¤ò´Þ¤à Postgres
¥Ç¡¼¥¿¥Ù¡¼¥¹¥Õ¥¡¥¤¥ë¤ÎÂ礤µ¤Ï¼¡¤Î¤è¤¦¤ËÌó5.2MB¤È¸«ÀѤâ¤ë¤³¤È¤¬¤Ç¤
¤Þ¤¹¡§
----------------------------------------
52 bytes per row
- PostgreSQL ¤Î¥Ç¡¼¥¿¥Ú¡¼¥¸¥µ¥¤¥º¤Ï 8192¥Ð¥¤¥È(8KB)¤Ê¤Î¤Ç:
+ Postgres ¤Î¥Ç¡¼¥¿¥Ú¡¼¥¸¥µ¥¤¥º¤Ï 8192¥Ð¥¤¥È(8KB)¤Ê¤Î¤Ç:
8192 bytes per page
------------------- = 146 rows per database page (ÀÚ¤ê¼Î¤Æ)
¤¯¤Æ¤Ï¤Ê¤ê¤Þ¤»¤ó¡£¤½¤ÎÍýͳ¤Ï¡¢C¥í¥±¡¼¥ë°Ê³°¤Ç¤Ï¼¡¤ËÂ礤Êʸ»ú¤ò
ÃΤ뤳¤È¤¬¤Ç¤¤Ê¤¤¤«¤é¤Ç¤¹¡£¤³¤Î¤è¤¦¤Ê¾ì¹ç¡¢<pre>LIKE</pre>¥¤¥ó
¥Ç¥¯¥·¥ó¥°¤Ë¤À¤±Æ¯¤¯¤è¤¦¤Ê¡¢ÆÃÊ̤Ê<pre>text_pattern_ops</pre>¥¤
- ¥ó¥Ç¥Ã¥¯¥¹¤òºîÀ®¤¹¤ë¤³¤È¤â¤Ç¤¤Þ¤¹¡£
+ ¥ó¥Ç¥Ã¥¯¥¹¤òºîÀ®¤¹¤ë¤³¤È¤â¤Ç¤¤Þ¤¹¡£¤Þ¤¿¡¢¤½¤ì¤òÁ´Ê¸¸¡º÷¤Î¥Õ¥ë
+ ¥Æ¥¥¹¥È¤Î¥¤¥ó¥Ç¥Ã¥¯¥¹ºîÀ®¤Ë»È¤¦¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
</li>
</ul>
<p>
- <p>8.0¤è¤êÁ°¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï¡¢¥¤¥ó¥Ç¥Ã¥¯¥¹¤Ï¡¢¥Ç¡¼¥¿·¿¤¬¤Á¤ç¤¦¤É¥¤¥ó¥Ç¥Ã
- ¥¯¥¹¤Î¥«¥é¥à¤Î·¿¤È°ìÃפ·¤Ê¤±¤ì¤Ð¡¢»È¤¨¤Ê¤¤¤³¤È¤¬¤·¤Ð¤·¤Ð¤¢¤ê¤Þ¤·¤¿¡£
- ¤ª¤½¤é¤¯¡¢int2, int8, ¤ª¤è¤Ó numeric Åù¤Î¥«¥é¥à¤Î¥¤¥ó¥Ç¥Ã¥¯¥¹¤¬¤½¤¦
- ¤Ç¤¹¡£</p>
-
<h4 id="ITEM4.7">4.7</a>) Ì䤤¹ç¤ï¤»¥ª¥×¥Æ¥£¥Þ¥¤¥¶¤¬¤É¤Î¤è¤¦¤ËÌ䤤¹ç¤ï¤»¤òɾ²Á¤¹¤ë¤Î¤«¤ò¸«¤ë¤Ë¤Ï¤É¤¦¤·¤Þ¤¹¤«¡©</h4>
]
</small></pre></p>
- ÄÌÈ֤ˤĤ¤¤Æ¤Î¤â¤Ã¤È¾Ü¤·¤¤¾ðÊó¤Ï¡¢¥ª¥ó¥é¥¤¥ó¥Þ¥Ë¥å¥¢¥ë¤Ç
- <i>create_sequence</i> ¤ò¤´¤é¤ó¤¯¤À¤µ¤¤¡£
+ <p>¼«Æ°Åª¤ËÀ¸À®¤µ¤ì¤ëÄÌÈ֤ϡ¢
+ <<i>table</i>>_<<i>serialcolumn</i>>_<i>seq</i>
+ ¤È̾ÉÕ¤±¤é¤ì¤Æ¤¤¤Æ¡¢<i>table</i> ¤È <i>serialcolumn</i> ¤Ï¡¢¤½¤ì¤¾¤ì
+ ¥Æ¡¼¥Ö¥ë¤È <small>SERIAL</small> ¥«¥é¥à¤Î̾Á°¤Ç¤¹¡£
+ ÄÌÈ֤ˤĤ¤¤Æ¤Ï¡¢¥ª¥ó¥é¥¤¥ó¥Þ¥Ë¥å¥¢¥ë¤Ç<i>create_sequence</i>
+ ¤ò¤´¤é¤ó¤¯¤À¤µ¤¤¡£</p>
<h4 id="item4.11.2">4.11.2</a>) <small>SERIAL</small>¥Ç¡¼¥¿·¿¤ËÁÞÆþ¤µ¤ì¤ëÃͤϡ¢¤É¤¦¤¹¤ì¤ÐÆÀ¤é¤ì¤Þ¤¹¤«¡©</h4>
- <p>¤Ò¤È¤Ä¤ÎÊýË¡¤Ï¡¢<i>nextval()</i> ´Ø¿ô¤ò»È¤Ã¤Æ¤½¤ÎÃͤòÁÞÆþ¤¹¤ë<i>
- Á°(before)¤Ë</i> SEQUENCE ¥ª¥Ö¥¸¥§¥¯¥È¤«¤é¼¡¤Î <small>SERIAL</small>
- Ãͤò¼è¤ê½Ð¤·¡¢¤½¤ì¤«¤é¼ÂºÝ¤ËÁÞÆþ¤ò¤¹¤ë¤³¤È¤Ç¤¹¡£<a
- href="#item4.11.1">4.11.1</a> ¤Î¥Æ¡¼¥Ö¥ë¤ÎÎã¤ò»È¤¦¤È¤¹¤ë¤È¡¢µ¿»÷¸À¸ì¤Ç¤Ï
- ¤³¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£</p>
-
-<pre>
- new_id = execute("SELECT nextval('person_id_seq')");
- execute("INSERT INTO person (id, name) VALUES (new_id, 'Blaise Pascal')");
-</pre>
-
- ¤½¤¦¤·¤Æ¡¢<tt>new_id</tt> ¤ËÊݸ¤·¤¿¿·¤·¤¤Ãͤò¾¤Î¥¯¥¨¥ê(¤¿¤È¤¨¤Ð¡¢
- <tt>person</tt> ¥Æ¡¼¥Ö¥ë¤ËÂФ¹¤ë³°Éô¥¡¼(foreign key)¤Î¤è¤¦¤Ë)»È¤¦¤È
- ¤è¤¤¤Ç¤·¤ç¤¦¡£¼«Æ°Åª¤Ëºî¤é¤ì¤¿<small>SEQUENCE</small>¥ª¥Ö¥¸¥§¥¯¥È¤Î
- ̾Á°¤Ï¡¢<<i>table</i>>_<<i>serialcolumn</i>>_<i>seq</i>
- ¤Î¤è¤¦¤Ë¤Ê¤ê¡¢¤³¤Î¤¦¤Á¡¢<i>table</i> ¤È <i>serialcolumn</i> ¤Ï¤½¤ì¤¾
- ¤ì¥Æ¡¼¥Ö¥ë¤Î̾Á°¤È<small>SERIAL</small>¥«¥é¥à¤Î̾Á°¤Ç¤¹¡£
-
- <p>¤¢¤ë¤¤¤Ï¡¢Í¿¤¨¤é¤ì¤¿<small>SERIAL</small>Ãͤò¡¢¤½¤ì¤¬´ûÄêÃͤȤ·¤Æ
- ÁÞÆþ¤µ¤ì¤¿<i>¸å¤Ç(after)</i>¡¢ <i>currval()</i> ´Ø¿ô¤ò»È¤Ã¤Æ¼è¤ê½Ð¤¹
- ¤³¤È¤â¤Ç¤¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢ </p>
+ <p>ºÇ¤â´Êñ¤ÊÊýË¡¤Ï¡¢³ä¤êÅö¤Æ¤é¤ì¤¿<small>SERIAL</small>Ãͤò
+ <small>RETURNING</small>¤È¤·¤Æ¼èÆÀ¤¹¤ë¤³¤È¤Ç¤¹¡£
+ <a href="#item4.11.1">4.11.1</a>¤ÎÎãÂê¥Æ¡¼¥Ö¥ë¤ò»È¤¦¤È¼¡¤Î¤è¤¦¤Ë
+ ¤Ê¤ê¤Þ¤¹¡£
<pre>
- execute("INSERT INTO person (name) VALUES ('Blaise Pascal')");
- new_id = execute("SELECT currval('person_id_seq')");
+ INSERT INTO person (name) VALUES ('Blaise Pascal') RETURNING id;
</pre>
<p>¤ª¤½¤é¤¯¡¢¥·¥¹¥Æ¥à¤Î²¾ÁÛ¥á¥â¥ê¡¼¤òÁ´¤Æ»È¤¤²Ì¤¿¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤ë²Ä
ǽÀ¤¬¤¢¤ë¤«¡¢¥«¡¼¥Í¥ë¤¬¤¢¤ë¥ê¥½¡¼¥¹¤Ë¤Ä¤¤¤Æ¤â¤ÄÀ©¸ÂÃͤ¬Ä㤹¤®¤ë²Äǽ
- À¤¬¤¢¤ê¤Þ¤¹¡£<i>postmaster</i> ¤ò»ÏÆ°¤¹¤ëÁ°¤Ë¤³¤ì¤ò»î¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡§</p>
+ À¤¬¤¢¤ê¤Þ¤¹¡£¥µ¡¼¥Ð¤ò»ÏÆ°¤¹¤ëÁ°¤Ë¤³¤ì¤ò»î¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡§</p>
<pre>
ulimit -d 262144
¤ò»È¤¦¤È´Êñ¤Ç¤¹</p>¡£
-<h4 id="item4.19">4.19</a>) PL/PgSQL ¤Î´Ø¿ô¤ÎÃæ¤Ç°ì»þ¥Æ¡¼¥Ö¥ë¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤È¤¡¢¤É¤¦¤·¤Æ "relation with OID ##### does not exist" ¤È¤¤¤¦¥¨¥é¡¼¤ò¼õ¤±¼è¤ë¤Î¤Ç¤·¤ç¤¦¤«¡©</h4>
-
- <p>PL/PgSQL ¤Ï´Ø¿ô¥¹¥¯¥ê¥×¥È¤ò¥¥ã¥Ã¥·¥å¤·¡¢ÉÔ¹¬¤Ë¤â¤½¤ÎÉûºîÍѤǡ¢
- PL/PgSQL´Ø¿ô¤¬°ì»þ¥Æ¡¼¥Ö¥ë¤Ë¥¢¥¯¥»¥¹¤¹¤ë¾ì¹ç¡¢¸å¤Ç¤½¤Î¥Æ¡¼¥Ö¥ë¤ò¾Ã¤·
- ¤Æºî¤ê¤Ê¤ª¤µ¤ì¡¢´Ø¿ô¤¬¤â¤¦°ìÅٸƤӽФµ¤ì¤ë¤È¡¢¤½¤Î´Ø¿ô¤Ï¥¥ã¥Ã¥·¥å¤·
- ¤Æ¤¤¤ë´Ø¿ô¤ÎÆâÍƤϤޤÀ¸Å¤¤°ì»þ¥Æ¡¼¥Ö¥ë¤òº¹¤·¼¨¤·¤¿¤Þ¤Þ¤À¤«¤é¤Ç¤¹¡£
- ¤³¤Î¡¢²ò·èºö¤È¤·¤Æ¡¢PL/PgSQL¤ÎÃæ¤Ç <small>EXECUTE</small> ¤ò°ì»þ¥Æ¡¼
- ¥Ö¥ë¤Ø¤Î¥¢¥¯¥»¥¹¤Î¤¿¤á¤Ë»È¤¤¤Þ¤¹¡£¤½¤¦¤¹¤ë¤È¡¢¥¯¥¨¥ê¤ÏËè²ó¥Ñ¡¼¥¹¤ò¤ä
- ¤êľ¤·¤µ¤ì¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£</p>
-
-<h4 id="item4.20">4.20</a>) ¤É¤Î¤è¤¦¤Ê¥ì¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥½¥ê¥å¡¼¥·¥ç¥ó¤¬¤¢¤ê¤Þ¤¹¤«¡©</h4>
+<h4 id="item4.19">4.19</a>) ¤É¤Î¤è¤¦¤Ê¥ì¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥½¥ê¥å¡¼¥·¥ç¥ó¤¬¤¢¤ê¤Þ¤¹¤«¡©</h4>
<p>¡Ö¥ì¥×¥ê¥±¡¼¥·¥ç¥ó¡×¤È°ì¸À¤Ç¤¤¤¤¤Þ¤¹¤¬¡¢¥ì¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¤¹¤ë
¤¿¤á¤Îµ»½Ñ¤Ï¤¤¤¯¤Ä¤«¤¢¤ê¡¢¤½¤ì¤¾¤ì¡¢ÍøÅÀ¤È·çÅÀ¤¬¤¢¤ê¤Þ¤¹¡£</p>
<p>¤³¤Î¾¤Ë¤â¡¢¾¦ÍѤä¥Ï¡¼¥É¥¦¥§¥¢¡Ý¥Ù¡¼¥¹¤Î¥ì¥×¥ê¥±¡¼¥·¥ç¥ó¥½¥ê¥å¡¼
¥·¥ç¥ó¤¬¤¤¤í¤¤¤í¤Ê¥ì¥×¥ê¥±¡¼¥·¥ç¥ó¥â¥Ç¥ë¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤¹¡£</p>
-<h3 id="item4.21">4.21</a>)¥Æ¡¼¥Ö¥ë¤È¥«¥é¥à¤Î̾Á°¤¬¥¯¥¨¥ê¡¼¤ÎÃæ¤Çǧ¼±¤µ¤ì¤Ê¤¤¤Î¤Ï¤Ê¤¼¤Ç¤¹¤«¡©¤Ê¤¼Âçʸ»ú²½(¥¥ã¥Ô¥¿¥é¥¤¥º)¤Ï²¹Â¸¤µ¤ì¤Ê¤¤¤Î¤Ç¤¹¤«?</h3>
+<h3 id="item4.20">4.20</a>)¥Æ¡¼¥Ö¥ë¤È¥«¥é¥à¤Î̾Á°¤¬¥¯¥¨¥ê¡¼¤ÎÃæ¤Çǧ¼±¤µ¤ì¤Ê¤¤¤Î¤Ï¤Ê¤¼¤Ç¤¹¤«¡©¤Ê¤¼Âçʸ»ú²½(¥¥ã¥Ô¥¿¥é¥¤¥º)¤Ï²¹Â¸¤µ¤ì¤Ê¤¤¤Î¤Ç¤¹¤«?</h3>
- <p>ǧ¼±¤µ¤ì¤¿Ì¾Á°¤Î¤â¤Ã¤È¤â°ìÈÌŪ¤Ê¸¶°ø¤Ï¡¢¥Æ¡¼¥Ö¥ë¤òºîÀ®¤¹¤ëºÝ¤Ë¡¢
+ <p>̾Á°¤¬Ç§¼±¤µ¤ì¤Ê¤¤¡¢ºÇ¤â°ìÈÌŪ¤Ê¸¶°ø¤Ï¡¢¥Æ¡¼¥Ö¥ë¤òºîÀ®¤¹¤ëºÝ¤Ë¡¢
¥Æ¡¼¥Ö¥ë¤ä¥«¥é¥à¤ò°Ï¤¦Æó½Å°úÍÑÉä¤Î»ÈÍѤǤ¹¡£
Æó½Å°úÍÑÉä¤ò»È¤¦¤È¡¢¥Æ¡¼¥Ö¥ë¤È¥«¥é¥à¤Î̾Á°¡Ê¼±Ê̻ҤȤ¤¤¤¤Þ¤¹¡Ë¤Ï<a
href="http://www.postgresql.org/docs/8.0/static/sql-syntax.html#SQL-SYNTAX-IDENTIFIERS">Âçʸ»ú¤È¾®Ê¸»ú¤Î¶èÊÌ</a>
[ÌõÃí¡§
ÆüËܸìÈǤÎÀ½ºî¤Ë¤Ä¤¤¤Æ¤Ï°Ê²¼¤ÎÄ̤ê¤Ç¤¹¡£
- ºÇ½ª¹¹¿·Æü: 2007ǯ09·î15Æü
- ËÝÌõ¼Ô: ·¬Â¼ ½á (<a href="mailto:juk at PostgreSQL.jp">Jun Kuwamura <juk at PostgreSQL.jp></a>)
+ ºÇ½ª¹¹¿·Æü: 2007ǯ10·î10Æü
+ ËÝÌõ¼Ô: ·¬Â¼ ½á (<a href="mailto:juk at postgresql.jp">Jun KUWAMURA <juk at postgresql.jp></a>)
¤³¤ÎFAQ¤ÎÏÂÌõ¤ÎºîÀ®¤Ë¤¢¤¿¤ê¶¨ÎϤò¤·¤Æ¤¯¤À¤µ¤Ã¤¿Êý¡¹(·É¾Î¤Ïά¤µ¤»¤Æ¤¤¤¿¤À¤¤Þ¤¹):
¤»¤» ¤¸¤å¤ó(<a href="mailto:sesejun at linet.gr.jp">Jun SESE <sesejun at linet.gr.jp></a>)
¿Àë ±Ñ¹§(<a href="mailto:hkamiya at catvmics.ne.jp">Hidetaka KAMIYA <hkamiya at catvmics.ne.jp></a>)
¿û¸¶ ÆØ(<a href="mailto:asugawar at f3.dion.ne.jp">Atsushi SUGAWARA <asugawar at f3.dion.ne.jp></a>)
- °ðÍÕ ¹áÍý(<a href="mailto:i-kaori at sra.co.jp">Kaori Inaba <i-kaori at sra.co.jp></a>)
+ °ðÍÕ ¹áÍý(<a href="mailto:i-kaori at sraoss.co.jp">Kaori Inaba <i-kaori at sraoss.co.jp></a>)
¤ò¤Ï¤¸¤á¡¢¥Ý¥¹¥È¥°¥ì¥¹¤Ë´Ø¤¹¤ëÏÃÂêËÉÙ¤ÊÆüËܸìPostgreSQL¥á¡¼¥ê¥ó¥°¥ê¥¹¥È¡¢
ÏÂÌõ¤Î¤¤Ã¤«¤±¤òºî¤Ã¤Æ¤¯¤ì¤¿¤ê¡¢¤¤¤Ä¤â¥Á¥§¥Ã¥¯¤ò¤·¤Æ¤¯¤ì¤ë
¤Þ¤¿¡¢ºÇ¿·ÈǤϰʲ¼¤Î¥µ¥¤¥È¤Ë¤¢¤ê¤Þ¤¹¡£
<a
- href="http://www.PostgreSQL.jp/wg/jpugdoc/">http://www.PostgreSQL.jp/wg/jpugdoc/</a> ¡ÖJPUGʸ½ñ¡¦½ñÀÒ´ØϢʬ²Ê²ñ¡×
+ href="http://www.postgresql.jp/wg/jpugdoc/">http://www.postgresql.jp/wg/jpugdoc/</a> ¡ÖJPUGʸ½ñ¡¦½ñÀÒ´ØϢʬ²Ê²ñ¡×
<a href="http://www.linux.or.jp/JF/JFdocs/INDEX-database.html">http://www.linux.or.jp/JF/JFdocs/INDEX-database.html</a> ¡ÖLinux JF¥×¥í¥¸¥§¥¯¥È¡× <a href="http://www.linet.gr.jp/~juk/pgsql/">http://www.linet.gr.jp/~juk/pgsql/</a> ¡ÖPostgreSQL Notes for Japanese¡×¡ÊËÝÌõ¼Ô¥Ú¡¼¥¸¡Ë
¤Ê¤ª¡¢¤³¤ÎÏÂÌõ¤Ë´Ø¤¹¤ë¤´°Õ¸«¡¦¤´¼ÁÌä¤Ï(<a href="mailto:juk at
- PostgreSQL.jp">juk at PostgreSQL.jp</a>)¤Þ¤Ç¤ª´ó¤»¤¯¤À¤µ¤¤¡£
+ postgresql.jp">juk at postgresql.jp</a>)¤Þ¤Ç¤ª´ó¤»¤¯¤À¤µ¤¤¡£
¡Ê¢¨ ¥á¡¼¥ë¥¢¥É¥ì¥¹¤Î " at " ¤ÏŬÀڤ˾¤·¤Æ¤¯¤À¤µ¤¤¡£È¾³Ñ¤Î "@" ¤Ç¤¹¡£¡Ë
]
</pre></small></p>
-<!-- $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.515 2007/10/05 04:03:41 tgl Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.516 2007/10/10 13:43:42 momjian Exp $ -->
<!--
Typical markup:
<title>Overview</title>
<para>
- This release adds many improvements that were requested by users,
+ This release adds major new capabilities to the
+ <productname>PostgreSQL</> database system, including:
including:
<itemizedlist>
<listitem>
<para>
- Full text search is now a built-in feature
+ Full text search now fully integrated into the core database
+ system
</para>
</listitem>
<listitem>
<para>
- enum data types
+ Enumerated (enum) data types
</para>
</listitem>
<listitem>
<para>
- UUID data type, similar to that defined by RFC 4122
+ Universally Unique Identifier (UUID) data type, similar to that
+ defined by RFC 4122
</para>
</listitem>
<listitem>
<para>
+ Control of whether <literal>NULL</>s sort first or last, using
<literal>ORDER BY ... NULLS FIRST/LAST</>
</para>
</listitem>
<listitem>
<para>
- Updatable cursors
- (<literal>UPDATE/DELETE WHERE CURRENT OF</>
- <replaceable>cursor_name</>)
+ Updatable cursors using <literal>UPDATE/DELETE WHERE CURRENT OF</>
+ <replaceable>cursor_name</>
</para>
</listitem>
<listitem>
<para>
- Per-function parameter settings
+ Per-function server configuration parameter settings
</para>
</listitem>
<listitem>
<para>
- User-defined types can now have type modifiers (parameters)
+ User-defined types can now have type modifiers
</para>
<para>
- Declarations such as <type>varchar(42)</type> are no longer
- restricted to use by built-in data types.
+ This allows a user type to take an optional modifier when
+ being created, e.g. <type>SSNUM(7)</>. Previously only
+ predefined system data types would allow this, e.g.
+ <type>CHAR(4)</>.
</para>
</listitem>
<listitem>
<para>
- Numerous improvements in logging and statistics collection
- capabilities, including the ability to emit postmaster log messages
- in CSV format that can be directly loaded into a database table
- for analysis
+ Numerous improvements in logging and statistics collection,
+ including the ability to emit postmaster log messages in
+ <acronym>CSV</> format, which can be loaded into a database
+ table for analysis
</para>
</listitem>
</para>
<para>
- Autovacuum is now considered mature enough to be enabled by default.
+ This allows multiple vacuums to run concurrently, meaning
+ vacuuming of a large table will not prevent smaller tables from
+ being vacuumed at the same time. Autovacuum is now considered
+ mature and therefore is enabled by default.
</para>
</listitem>
<listitem>
<para>
- The entire <productname>PostgreSQL</productname> system can
- now be compiled with Microsoft Visual C++
+ The backend database server can now be compiled with
+ <productname>Microsoft Visual C++</>
</para>
<para>
- This will improve the ability of Windows-based developers to
- contribute to the project. Windows executables made with Visual C++
- may also have better stability and performance than those made with
- other tool sets.
+ Windows executables made with Visual C++ might have better
+ stability and performance than those made with other tool sets.
+ Development and debugging tools familiar to Windows developers
+ will also work.
</para>
</listitem>
<listitem>
<para>
- Asynchronous commit option to allow transactions to be reported
- committed before they have actually been flushed to disk
+ Asynchronous commit option allows transactions to be committed
+ but on-disk change to be delayed
</para>
<para>
- This would not, of course, be acceptable if the client takes some
- critical external action on the assumption that the transaction
- will be remembered; but for certain applications, it is an acceptable
- risk for some or all transactions to use this mode. Unlike existing
- options such as <varname>fsync</varname>, asynchronous commit does
- not risk database corruption; the worst case is that after a crash,
- the last few reportedly-committed transactions will not have
- taken effect.
+ This feature dramatically increases performance for data
+ modification queries. The disadvantage is that because on-disk
+ changes are delayed, if the operating system crashes before data
+ is written to the disk, committed data will be lost. This is
+ only useful for applications that can accept some data loss.
+ Unlike <varname>fsync</varname>, asynchronous commit does not
+ risk database corruption; the worst case is that after an
+ operating system crash, the last few reportedly-committed
+ transactions will be missing.
</para>
</listitem>
<listitem>
<para>
- <quote>Distributed</> checkpoints to spread out the I/O load of a
- checkpoint
+ <quote>Distributed</> checkpoints prevent I/O spikes during
+ checkpoints
</para>
</listitem>
<listitem>
<para>
- Heap-Only Tuples (HOT) to reduce overhead of updates
+ Heap-Only Tuples (<acronym>HOT</>) reduce overhead of updates
+ </para>
+
+ <para>
+ To allow high concurrency <productname>PostgreSQL</> retains old
+ versions of updated rows. Previously only <command>VACUUM</>
+ could reuse space taken by dead rows. With <acronym>HOT</> dead
+ row space can be reused at the time of <command>UPDATE</> or
+ <command>INSERT</>. This allows for more consistent performance.
</para>
</listitem>
Just-in-time background writer strategy to improve disk write
efficiency
</para>
+
+ <para>
+ This basically makes the background writer self-tuning.
+ </para>
+
</listitem>
<listitem>
<para>
- Reduction of on-disk data size through reducing both per-tuple
- and per-field overheads
+ Reduction of both per-field and per-row storage requirements
+ </para>
+
+ <para>
+ For example, two <type>CHAR(1)</type> fields now take 4 bytes
+ instead of 16.
</para>
</listitem>