膃・49腴・‡・若‚帥ƒ™・若‚鴻・–≪™・‹・蕁Œ

・“・・‚祉‚・‚激ƒсƒ潟с・HP・・ƒ‡・若‚帥ƒ™・若‚鴻・・–≫・・・–≪™・‹筝€・・š„・・蟹・・’・・ ・„・障™・‚・・‚“・・・PHP・・・絎Ÿ筝Š・‚・‰・†・‹・‡・若‚帥ƒ™・若‚鴻・‚≪‚・‚祉‚鴻™・‹・“・・Œ ・с・障™・‚

1. PHP・・icrosoft SQL・泣ƒ若ƒ・・‚≪‚・‚祉‚鴻с・‹・・ž・・障—・Ÿ・‚・・†・™・Œ・・ ・ˆ・„・・с—・‡・†・‹鐚Ÿ
2. Microsoft Access・‡・若‚帥ƒ™・若‚鴻・‚≪‚・‚祉‚鴻с・障™・‹鐚Ÿ
3. PHP 4・・‚≪ƒƒ・—・違ƒ・ƒ若ƒ‰・—・Ÿ・‰・mysql・泣ƒ若ƒ・Œ"Warning: MySQL: Unable to save result set in ..."・・„・†茘・‘Š・’・—・ゃャ‘・障™・‚篏•・Œ 莎激“・c・„・‹・・с—・‡・†・‹鐚Ÿ
4. PHP 5 no longer bundles MySQL client libraries, what does this mean to me? Can I still use MySQL with PHP? I try to use MySQL and get "function undefined" errors, what gives?
5. ・掩œ‰MySQL・泣ƒ・若ƒˆ・’・ゃƒ潟‚鴻ƒˆ・若ƒ・—・Ÿ・‰・libphp4・Œ・㏍ƒ若ƒ‰・•・Œ・‹・・Œ ・‚・ïpache・Œ・潟‚≪ƒ€・潟ƒ—・—・障™・‚・眼‚Š・障™・‹鐚Ÿ
6. ・・œ・“・・‚ˆ・†・・‚・ƒ・ƒ若Œ・с‚‹・・с—・‡・†・‹鐚Ÿ鐚š "Warning: 0 is not a MySQL result index in <file> on line <x>" ・‚・—・・・"Warning: Supplied argument is not a valid MySQL result resource in <file> on line <x>?

1. PHP・・icrosoft SQL・泣ƒ若ƒ・・‚≪‚・‚祉‚鴻с・‹・・ž・・障—・Ÿ・‚・・†・™・Œ・・ ・ˆ・„・・с—・‡・†・‹鐚Ÿ

Windows・ž・激ƒ割・・с・€ODBC・泣ƒ・若ƒˆ・・・ˆ‡・ŅDBC・‰・・‚ゃƒ・’篏睡”・™・Œ ・違‚ˆ・„・・‘・с™・‚

Unix・ž・激ƒ割・・с・€Sybase-CT・‰・・‚ゃƒ・’篏帥c・icrosoft SQL・泣ƒ若ƒ・・ ・≪‚・‚祉‚鴻™・‹・“・・Œ・с・障™・‚・・œ・・‚‰(・祉・‚“・・・・・å・—・㏍ƒˆ・潟ƒ・・ ・›・・‹・‰・с™・‚Sybase・・ 綽…荀・Ļinux・・ƒ・‚ゃƒ–・・ƒ・・ƒ•・・ƒ若・・茖… ・’篏œ・・—・障—・Ÿ・‚篁–・・nix・激‚鴻ƒ†・・с・・ˆ‡・・ƒ・‚ゃƒ–・・ƒ・‚’・‹・・…ャ‚Œ・‹・Ÿ・・öybase・・ ・g機・’・–・‹綽…荀・Œ・‚・Š・障™・‚ 罨<・蟹・・・・・™・‹・ž膈”・‚・‚・с—・・・・•・„・‚

2. Microsoft Access・‡・若‚帥ƒ™・若‚鴻・‚≪‚・‚祉‚鴻с・障™・‹鐚Ÿ

・・„・‚・‚・—・・・PHP・・icrosoft Access)・’Windows9x/Me/NT/2000筝Š・・ ・•篏œ・•・›・‹・・с‚・Š・ODBC・・icrosoft・Œ・箴›・™・‹ODBC・‰・・‚ゃƒ for Microsoft Access・Œ篏睡”・с・‹・倶…‹・・‚‰・違€・™・鴻・・・荀・・ƒ„・若ƒ・・ƒ・・ ・・„・障™・‚

Unix・・HP・’・•篏œ・•・›・・indows・ž・激ƒ潟ф“篏œ・™・‹MS Access・・・膓š・—・Ÿ ・„・翫ˆ・・・nix ODBC・‰・・‚ゃƒ・Œ綽…荀・с™・‚OpenLink Software・ŒUnix・™・若‚・ ・・DBC・‰・・‚ゃƒ・’・箴›・—・・„・障™・‚・“・・ƒ‰・・‚ゃƒ・・・„≧œŸ・・・・・・‰ˆ・Œ ・‚・Š・・障Ÿ・†・・‚泣ƒ・若ƒˆ・・若‚吾ƒсƒ潟Œ675・‰・・€œ ・ф箴›・•・Œ・・„・障™・‚

篁–・・・€Microsoft SQL・泣ƒ若ƒ・ņDBC・‰・・‚ゃƒ・’篏睡”・—・・ƒ‡・若‚帥‚’篆絖˜ ・™・‹・・„・†・‹罧泣‚‚・‚・Š・障™・‚・“・Œ・・‚ˆ・c・€Microsoft Access(ODBC・’ 篏睡”・—・障™)・・HP(腟„・粋昭・障‚Œ・・„・‹・‰・・‚ゃƒ・’篏睡”・—・障™)・сƒ‡・若‚帥・ ・≪‚・‚祉‚鴻™・‹・“・・Œ・с・障™・‚・障Ÿ・Microsoft Access・・HP筝∴€…・宴・ 茹i‡ˆ・・ƒ純・賢・“・•・<‚ゃƒą箴‹・ˆ・医˜絮ゃ‹・‰・・‚‹・•・<‚ゃƒ・‚„・ dBase・‡・・ ・帥ƒ™・若‚合・)・’篏睡”・™・‹・‹・‚・‚・Š・障™・‚・“・Œ・・–≪—・・・peLink Software・・im Hayes・Œ篁ヤ・・・‚ˆ・†・・唇・鴻・„・障™鐚š
PHP・‹・‰・˜・‹・ņDBC・‰・・‚ゃƒ・Œ篏睡”・с・‹・翫ˆ(・ゃ障‚ŠOpenLink・・ƒ‰・・
       ・ゃƒ・’篏睡”・—・・„・‹・翫ˆ)・・・€篁–・・ƒ‡・若‚帥ƒ™・若‚鴻‚’筝㊦・・‹罧泣・—・・”・
       ・„・‹・“・・・‚ˆ・„・≪‚ゃƒ‡・≪・・・・ˆ・・„・‚・・†・—・・‚‚筝㊨–“・•・<‚ゃƒ・Œ綽…
       荀・・翫ˆ・・Ÿ・・・€OpenLink・・T, Linux, ・・—・・・・・nix・・・
       Virtuoso(篁・ƒ潟ƒ‡・若‚帥ƒ™・若‚鴻‚・ƒ潟‚吾ƒ凢・’・・ƒ・ƒ若‚鴻—・Ÿ・‚腱・Ÿ・<・
       ・・‚сƒ–・泣‚ゃƒˆ・’荐・‚Œ・・‚‚
       ・‰・ˆ・Œ・違€・≧–™・сƒ€・・ƒ潟ƒ㏍ƒ若ƒ‰・с・‹・‚

・†・障・„・・“・・Œ・†・‹・c・‚‹・‚・†筝€・ゃ・–号・・・ySQL・・€Windows・・・ MyODBC・‰・・‚ゃƒ・’・・”・—・・ƒ‡・若‚帥ƒ™・若‚鴻‚’・Œ・Ÿ・™・‹・号・・с™・‚Steve Lawrence・Œ荐€・†・・・・

  • MySQL・’茯・˜・・・・c・算・・・ƒ—・・ƒƒ・ˆ・•・・ƒ若ƒ・・‚ゃƒ潟‚鴻ƒˆ・若ƒ・—・障™・‚ ・€・違ƒ・若‚吾ƒсƒ潟・A HREF="http://www.mysql.com/" TARGET="_top" >www.mysql.com(・Ÿ・・ƒ若‚’篏帥†・“・・・) ・・‚・Š・障™・‚・‡・若‚帥ƒ™・若‚鴻‚’篏œ・・™・‹・・・・・—・・ƒ・ƒ若‚吟‚≪‚・‚・ƒ・ ・ˆ・’荐㊤・・™・‹・・・・€・›・鴻ƒˆ・•・cƒ若ƒ・ƒ‰・ă・‹・MySQL・’篏帥c・‚≪‚・ ・祉‚鴻™・‹Windows・ž・激ƒ潟・ƒ›・鴻ƒˆ・・’・ュŠ›・™・‹・・・„・†・“・・札紊–・・・ ・劫ˆャ・┃絎š・・・荀・‚・Š・障›・“・‚ 篏睡”・™・‹・泣ƒ若ƒ・・・・ƒ若‚九・・‘・鴻ƒ・ƒ若ƒ‰・’・吾・・‚・・Š・„・・・・•・„・‚

  • MySQL・泣‚ゃƒˆ・‹・‰Windows・・yODBC・‰・・‚ゃƒ・’・€・・ƒ潟ƒ㏍ƒ若ƒ‰・—・障™・‚ ・€・違・ƒ・ƒ・ƒ若‚鴻・yodbc-2_50_19-win95.zip・с™(NT・ˆ・・純ƒ若‚鴻‚潟ƒ・ ・‰・‚・ユ‰‹・・ƒ純с™)・‚・“・Œ・’Windows・ž・激ƒ潟・‚ゃƒ潟‚鴻ƒˆ・若ƒ・—・障™・‚ ・≪ƒ若‚・‚ゃƒ–・・・障‚Œ・‹・・ƒ若ƒ†・cƒ・ƒ†・cƒ—・㏍‚違ƒ・ƒ・сƒ†・鴻ƒˆ・’茵Œ・†・“ ・・Œ・с・障™・‚

  • ・潟ƒ潟ƒˆ・㏍ƒ若ƒ・ƒ‘・・・・DBC administrator・’篏睡”・—・・ƒ・ƒ若‚吟€・‚・— ・・・‚激‚鴻ƒ†・DSN・’篏œ・・—・障™・‚DSN・・’羆阪・・—・・€Step1・ЎySQL・・ 荐㊤・・—・Ÿ・›・鴻ƒˆ・・・・ƒ若‚九・・‘・鴻ƒ・ƒ若ƒ‰・・・若ƒˆ膈‰・’・ュŠ›・—・障™・‚

  • Access・’・•・・‚ゃƒ潟‚鴻ƒˆ・若ƒ・с‚ゃƒ潟‚鴻ƒˆ・若ƒ・—・障™・‚・“・Œ・・・ˆ‡・・‚・ ・‰・ゃƒ潟‚’・ゃƒ潟‚鴻ƒˆ・若ƒ・™・‹・Ÿ・・с™・‚絨‘・・・・‚‚ODBC・泣ƒ・若ƒˆ・・ƒ・ ・潟‚・ƒ†・若ƒ–・・ƒž・・若‚吾ƒcŒ綽…荀・с™・‚

  • ・“・“・‹・‰・Œ・Š罐純—・帥с™・‚・域・・‡・若‚帥ƒ™・若‚鴻‚’篏œ・・—・障—・‡・†・‚・†・・ ・–・・‚・‚cƒ潟ƒ‰・・у潟‚・ƒ・ƒƒ・・—・・ƒ・ƒ潟‚・ƒ†・若ƒ–・・‚’・御Šž・—・障™・‚・‚ ・—・・・ƒ•・<‚ゃƒ・ƒ<ƒ‹・ャƒ若‹・‰紊–・・ƒ‡・若‚帥・–・Š莨若帥‚’・吾潟ƒ・ƒ潟‚・ƒ†・・ ・–・・‚’・御Šž・—・障™・‚・•・<‚ゃƒ・ƒ–・・‚・‚吟Œ茵・ず・•・Œ・Ÿ・‰・•・<‚ゃƒ・‚帥‚・ ・—・‹・‰ODBC・’・御Šž・—・障™・‚罨<・‚激‚鴻ƒ†・DSN・’・御Šž・・TEP3・т・・・— ・ŸDSN・・’・御Šž・—・障™・‚・・ƒ潟‚・™・‹・†・若ƒ–・・‚’・吾‚“・・K・œ・帥ƒ潟‚’・若— ・障—・‡・†・‚MySQL・泣ƒ若ƒ・сƒ†・若ƒ–・・・‚・ƒ若ƒ—・潟‚’・・ƒ若ƒ—・潟с・‹・ˆ・† ・・・c・„・・€・‡・若‚帥・申・/・Š・・膩・›†・Œ・с・‹・ˆ・†・・・c・„・・ ・™・‚・•・‰・・€・・‚・ƒ・・・膀‰・・†・若ƒ–・・・‚ゃƒ潟ƒ・若ƒˆ/・・‚・‚鴻ƒ・若ƒˆ・ ・•・・ƒ若ƒ・„・・ƒ・若ƒˆ・・・膀‰膈‰・Œ・・ƒ純с™・‚

Tips and Tricks(綵鴻・・・ゃƒ’・潟ƒˆ):

  • Access・сƒ†・若ƒ–・・‚’篏œ・・—・・・Œ・’MySQL・吾‚・‚・‚鴻ƒ・若ƒˆ・—・障™・‚・ ・Œ・’・綺・‚≪‚・‚祉‚鴻‹・‰・・ƒ潟‚・™・Œ・亥・・・・†・若ƒ–・・‚’篏œ・・™・‹・“・・ ・Œ・с・障™・‚

  • Access・сƒ†・若ƒ–・・‚’篏œ・・™・‹・・・・€・・・ƒ†・若ƒ–・・・›吾莨若炊┤・ ・’・‚・Ÿ・›・‹・Ÿ・・・ƒ—・・‚ゃƒž・・‚㏍ƒ若‚’荐㊤・・—・・Š・綽…荀・Œ・‚・Š・障™・‚ Access・・ƒ†・若ƒ–・・‚’・・ƒ潟‚・™・‹・・ńySQL・・ƒ—・・‚ゃƒž・・‚㏍ƒ若‚’荐㊤・・— ・・Š・・“・・‚‚綽˜・Œ・・„・с・・•・„・‚

  • MySQL・眼сƒ†・若ƒ–・ą・・・・)・’紊‰・眼—・Ÿ・翫ˆ・・綺・ccess・・ƒ・ƒ潟‚・™ ・‹綽…荀・Œ・‚・Š・障™・‚・„・若ƒǎ#62;・≪ƒ‰・ゃƒ凕#62;・・ƒ潟‚・ƒ†・若ƒ–・・ƒž・・若‚吾ƒc‹ ・‰・・ˆ‡・ŅDBC DSN・’・吾‚“・у†・・ƒ潟‚・Œ綽…荀・・ƒ†・若ƒ–・・‚’・御Šž・—・障™・‚ ・障Ÿ・・“・“・・K・œ・帥ƒ潟‚’・若™・・・€Œ・・ƒ潟‚・…ˆ・’・贋–違™・‹・Ÿ・・・ƒ—・・ ・潟ƒ—・ˆ・’罸・›ž茵・ず・™・‹・・’・・сƒƒ・・—・・Š・‘・仐SN・純ƒ若‚鴻‚’腱糸‹•・•・› ・‹・“・・Œ・с・障™・‚

3. PHP 4・・‚≪ƒƒ・—・違ƒ・ƒ若ƒ‰・—・Ÿ・‰・mysql・泣ƒ若ƒ・Œ"Warning: MySQL: Unable to save result set in ..."・・„・†茘・‘Š・’・—・ゃャ‘・障™・‚篏•・Œ 莎激“・c・„・‹・・с—・‡・†・‹鐚Ÿ

筝€・・・€ƒ・ˆ・‰・Œ・‹・・・HP 4・’・MySQL・吾・ƒ‘・号Œ‡絎š・・—・ā--with-mysql' ・・ƒ—・激ƒсƒ潟‚’・ゃ‘・・‚潟ƒ潟ƒ‘・ゃƒ・—・Ÿ・・„・†・翫ˆ・с™・‚・“・Œ ・・HP・Œ腟„・粋昭・障‚Œ・ŸMySQL・・ƒ・‚ゃ‚≪ƒ潟ƒˆ・・‚ゃƒ–・・ƒ・‚’篏睡”・™・‹・・„・†・“ ・・‚’・・潟—・障™・‚・‚・—・‚・・Ÿ・・‚激‚鴻ƒ†・・с€PHP 3・„auth-mysql・・ apache・≪‚吾ƒャƒ若ƒ・・„・cŸ篁–・・ƒ・若‚吾ƒсƒ潟・ySQL・・ƒ・‚ゃ‚≪ƒ潟ƒˆ・’篏睡”・ ・™・‹・≪ƒ—・・‚宴ƒ若‚激ƒсƒ潟Œ・Œ・‚・・‹•篏œ・—・・„・‹・翫ˆ・・・€・„・・ƒ・‚ゃ‚≪ƒ潟ƒˆ ・“・сƒ・若‚吾ƒсƒ潟・・・ˆ・Œ・榊”Ÿ・—・・—・障„・障™・‚

PHP 4・’ '--with-mysql=/your/path/to/mysql' ・・„・†・ˆ・†・・‚・ƒ—・激ƒсƒ潟・ƒ‘・鴻‚’荐˜菴違—・・†・潟ƒ潟ƒ‘・ゃƒ・™・‹・“・・ч€š絽・ ・・翫ˆ・・•蕁Œ・・В羆冴•・Œ・障™・‚

4. PHP 5 no longer bundles MySQL client libraries, what does this mean to me? Can I still use MySQL with PHP? I try to use MySQL and get "function undefined" errors, what gives?

Yes. There will always be MySQL support in PHP of one kind or another. The only change in PHP 5 is that we are no longer bundling the client library itself. Some reasons in no particular order:

  • Most systems these days already have the client library installed.

  • Given the above, having multiple versions of the library can get messy. For example, if you link mod_auth_mysql against one version and PHP against another, and then enable both in Apache, you get a nice fat crash. Also, the bundled library didn't always play well with the installed server version. The most obvious symptom of this being disagreement over where to find the mysql.socket Unix domain socket file.

  • Maintenance was somewhat lax and it was falling further and further behind the released version.

  • Future versions of the library are under the GPL and thus we don't have an upgrade path since we cannot bundle a GPL'ed library in a BSD/Apache-style licensed project. A clean break in PHP 5 seemed like the best option.

This won't actually affect that many people. Unix users, at least the ones who know what they are doing, tend to always build PHP against their system's libmyqlclient library simply by doing --with-mysql=/usr when building PHP. Windows users may enable the extension php_mysql.dll inside php.ini. Also, copy libmySQL.dll into the appropriate %SYSTEMROOT% directory, just like you do with every other bundled DLL from the dll directory.

5. ・掩œ‰MySQL・泣ƒ・若ƒˆ・’・ゃƒ潟‚鴻ƒˆ・若ƒ・—・Ÿ・‰・libphp4・Œ・㏍ƒ若ƒ‰・•・Œ・‹・・Œ ・‚・ïpache・Œ・潟‚≪ƒ€・潟ƒ—・—・障™・‚・眼‚Š・障™・‹鐚Ÿ

・‚・—・‚・・Ÿ・・‚激‚鴻ƒ†・・・ySQL・・‚ゃƒ–・・ƒ・Œpthreads・・ƒ・ƒ潟‚・•・Œ・・„ ・‹・翫ˆ・・・“・・乗院・Œ・榊”Ÿ・—・障™・‚ldd・潟ƒž・潟ƒ‰・’篏睡”・—・・ƒ・сƒƒ・・— ・・・・•・„・‚・‚・—pthreads・Œ・・ƒ潟‚・•・Œ・・„・‹・翫ˆ・・€MySQL・・arball ・’絮•・‹・—・・‚純ƒ若‚鴻‹・‰・潟ƒ潟ƒ‘・ゃƒ・—・・Š・—・・・・•・„・‚・‚・—・・・RPM・・ SPEC・•・<‚ゃƒ・・‚鴻ƒ・ƒƒ・‰・・ƒ・‚ゃ‚≪ƒ潟ƒˆ・潟ƒ若ƒ‰・・・・€・’・Š・ゃ—・・‚潟ƒ潟ƒ‘・・ ・・—・・Š・—・・・・•・„・‚・„・š・Œ・‹・・–号・・у•蕁Œ・’茹f浦・с・障™・‚・・・・・ PHP・’・違—・„MySQL・・‚ゃƒ–・・ƒ・с‚潟ƒ潟ƒ‘・ゃƒ・—・・Š・—・・・・•・„・‚

6. ・・œ・“・・‚ˆ・†・・‚・ƒ・ƒ若Œ・с‚‹・・с—・‡・†・‹鐚Ÿ鐚š "Warning: 0 is not a MySQL result index in <file> on line <x>" ・‚・—・・・"Warning: Supplied argument is not a valid MySQL result resource in <file> on line <x>?

・‚・・Ÿ・・€ゃŒ0・с‚・‹腟・œ(result)ID・’・‡絎š・—・ˆ・†・・—・・„・障™・‚0・・‚ ・・Ÿ・・‚・‚・ƒ・Œ篏•・‰・‹・・†・宴уけ・—・—・Ÿ・“・・‚’腓冴—・・„・障™・‚綽œ膈” (result)ID・’篏睡”・™・‹・・・€・・‚・ƒ・‚’・篆<—・Ÿ・‚・・・‚・ƒ・ƒ若‚’・・сƒƒ・・ ・™・‹綽…荀・Œ・‚・Š・障™・‚篁ヤ・・・‚ˆ・†・・‚潟ƒ若ƒ‰・Œ罩c—・„・号・・с™・‚
$result = mysql_query("SELECT * FROM tables_priv");
if (!$result) {
    echo mysql_error();
    exit;
}
・‚・—・・・
$result = mysql_query("SELECT * FROM tables_priv")
    or die("Bad query: ".mysql_error());