# mysql --version
mysql Ver 14.7 Distrib 4.1.22, for redhat-linux-gnu (i686) using readline 4.3
ただしmysqlにパスが通っていないとcommand not foundと言われるかもしれない。
WEBエンジニアがLinux,Mac,Rails他のTIPSをまとめます。目指せ1024TIPS!
# mysql --version
mysql Ver 14.7 Distrib 4.1.22, for redhat-linux-gnu (i686) using readline 4.3
ただしmysqlにパスが通っていないとcommand not foundと言われるかもしれない。
SSHでしかアクセスできないPostgreSQLサーバでスキーマ変更する必要があった。下記のようにALTER TABLE文でNOT_NULL制約を外した。
[書式]
#NOT NULL制約の削除
ALTER TABLE テーブル名 ALTER COLUMN カラム名 DROP NOT NULL;
Rails2.3.2のアプリをRails2.3.4にした所、「undefined method `quote_ident' for PGconn:Class」という見慣れないエラーが。
http://d.hatena.ne.jp/TrinityT/20090831/1251722550 とかhttp://d.hatena.ne.jp/hs9587/20090915/1253008328 を読んだ所、文字通りPostgreSQL用のメソッドがNoMethodになっているようなので以下の記述を追加した。
■config/initializers/new_rails_defaults.rbの修正箇所
以下を冒頭に追加する。冒頭に必要なのは、ActiveRecord初期化前に必要なため。
# for Rails2.3.3 with PostgreSQL
class PGconn
def self.quote_ident(name)
'"' + name + '"'
end
end
http://journal.mycom.co.jp/news/2009/09/01/033/index.htmlRails開発環境、Snow Leopardへアップグレードする方法
MySQLインストール
おかしな挙動を避けるあために64ビット版のMySQLへのアップグレードが強く推奨される。MySQLサーバが動作している場合は停止させ、MySQL 5.1 GA Downloadsから「Mac OS X 10.5 (x86_64)」をダウンロード。ディスクイメージを開いたら、デフォルトのオプションのまま、まず「mysql-5.1.37-osx10.5-x86_64.pkg」をインストール。次に、同じくデフォルトオプションのまま「MySQLStartupItem.pkg」をインストールし、さらに「MySQL.prefPane」をダブルクリック。選択を求められたら既存の設定パネルを置き換える方を選択するようにと説明がある。ここまで作業したらディスクイメージをアンマウントする。LeopardからSnow Leopardにアップグレードした場合、mysql gemが32ビットモードでコンパイルされているため、再ビルドの必要がある。しかしこの部分は若干状況が複雑だという。Snow Leopardにおいては、Cエクステンションをインストールする場合にはgemはi386 (32ビット)とx86_64 (64ビット)の両方のエクステンションをビルドしようとするものの、mysql.comから提供されているバイナリはユニバーサルではないためこの方法はうまくいかないという。64ビットモードのみをビルドするように次のように強制する必要があると説明されている。
$ sudo env ARCHFLAGS="-arch x86_64" gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config
PGError: ERROR: function to_number(character varying, integer) does not existとなっていてdoes not existということはto_number()が使えなくなったように見えるので焦る。
■原因と解決方法
引数の解釈が厳密になり関数の文字列の引数は’文字列’と明示的に囲う必要がある。postgreSQL8.3のマニュアルに型変換(キャスト)の関数の一覧がある。
http://www.postgresql.jp/document/pg837doc/html/functions-formatting.html
to_number(text, text) 文字列を数値に変換
例)to_number('12,454.8-', '99G999D9S')
【改訂第3版】 SQLポケットリファレンス (POCKET REFERENCE)
達人に学ぶ SQL徹底指南書 (CodeZine BOOKS)以下のドキュメントに書かれているキーワードを使用してテーブルを作ろうとすると、文法エラーになる。
ERROR: syntax error at or near "該当キーワード"
http://osb.sra.co.jp/PostgreSQL/Manual/PostgreSQL-7.1-ja/sql-keywords-appendix.html
PostgreSQL徹底入門 第2版
著者:浅羽 義之
販売元:翔泳社
発売日:2008-04-15
おすすめ度:![]()
クチコミを見る
改訂版 今すぐ導入!PHP×PostgreSQLで作る最強Webシステム (Gihyo Expert Books)
著者:石井 達夫
販売元:技術評論社
発売日:2009-06-27
クチコミを見る