WEBアプリケーション研究室 開発ノート TOP

WEBアプリケーション研究室 開発ノート 2011年06月

スポンサーサイト

-------- --:--

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

    このエントリーをはてなブックマークに追加

ネットで探すと、結構エントリーを見つけるのですが、意外に手こずったので載せておきます。

まずCSVで書きだすSQLですが


SELECT * INTO OUTFILE "file.csv" FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' FROM table;
こんな感じです。で実行してみたら
Access denied for user 'user'@'localhost'
とでました。あれ?ログインしてるのに・・・と調べてみるとAccess denied エラーの原因
「MySQL サーバに接続はできるけれども、SELECT ... INTO OUTFILE または LOAD DATA INFILE を発行すると、Access denied が出る場合は、user テーブルのエントリで、FILE 権限がないことを意味します。」
と発見。なるほどと思い

GRANT file ON db_name.* TO 'user'@'localhost';
と実行してみる、今度は
Incorrect usage of DB GRANT and GLOBAL PRIVILEGES
というエラーが。FILE権限はDB単位に与えるものではなくGlobalな権限なので

GRANT file ON *.* TO 'user'@'localhost';
と実行する必要があります。

また、当然ですが、書き出しはmysqlユーザーで行われますので、書き出し先にmysqlが書き込める必要があります。

    このエントリーをはてなブックマークに追加

いままで気づかなかったのですが、Eclipseで便利な機能を発見しました。

私のWorkspaseは沢山のサイトでフレームワークを使い回す関係で、現在36個のプロジェクトが並んでます。編集するファイルを探すときShift+Ctrl+Rなども使いますが、目でさがすのは大変です。また、特定のプロジェクト群のSubversion更新もプロジェクトを選択するのが面倒でした。

今日Explorerの編集メニュを見ていた
「Top Level Element」という項目を発見。ここを「Working Sets」に変更すると、検索時に使えるあのグループをExplorerに表示できるのを発見しました。



これで、プロジェクトをグルーピングして表示できるようになります。

    このエントリーをはてなブックマークに追加

Ajaxやタブの切替などjavascriptで画面遷移をしたとき、ブラウザの「戻る」を押すとユーザーが期待したところと違うページに戻ります。それを防ぐテクニックとしてURLのハッシュ(#)を利用する方法があります。ちょっと前にGoogleの検索がAjaxになりましたが、Googleの検索もハッシュを利用しています。

javascriptで画面遷移をするときに


http://your.domain/page#tab=1
の様なURLにリンクして、ハッシュが変わったのをトリガーにスクリプトを動かします。画面の再読込は行われませんが、ブラウザの履歴には残っていきます。

しかし、javascriptにはハッシュが変更されたイベントがありません。そこで、役に立つのがjQueryプラグインの
hashchange
です。

ちらっとソースを見た感じでは、数十ミリ秒置きにチェックしているようです。イベントがあっても良さそうなもんですよね。

「戻る」だけではなく、検索結果や、特定のタブが選ばれた状態にリンクを貼ったり、URLを教えたり出来る利点もあります。

    このエントリーをはてなブックマークに追加
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。