DBの最近の情報



このたび、MovableTypeをバージョン4からバージョン5にアップデートした。

 

少しバージョンが古かったのもあったけど、ブログの更新をTwitterに投稿する、

OAuth対応のプラグイン「PostTwiOAuth」を入れたかったから。

 

MovableTypeのアップデート自体はそれほど問題なくできたのだけど、

手間取ったのは、データベース(MySQL)のデータのインポートとエクスポート。

 

レンタルサーバ上で、MySQLのデータベースを複数作成できたので、

既存のデータベースを残す方式のアップグレード 」を選択した。

MySQLのデータベースも以前作成したものとバージョンが異なるサーバのようで、

PhpMyAdminのインターフェイス、データベースの文字コードも違っていた。

 

最初、データベースを丸ごとエクスポートしてインポートしようとしたけど、エクスポート

データの中にCreate Database文も含まれており、別のデータベースにインポートできへん・・

そんな状態で、よくよくインポートのオプションを見ると、最初のn個のクエリを

無視するなんてのがあったので、「こういう時に使うのかと納得した」

で、Create Database文、Set Database文が含まれる、最初の6ステートメントを

飛ばすことで、インポートはできるようになった・・

が、インポート後のデータが文字化け・・そういえば、エクスポートデータの最初に、

文字コードに関するステートメントも含まれてたので、それが原因か・・

タイトルと関係ない部分で長くなってしまっているが、結局のところ、

データベース丸ごとエクスポートではなく、テーブルを個別に選択してエクスポート

できる機能がPhpMyAdminにあったので、こちらで、全テーブルを選択してエクスポート、

それをインポートすることでうまくいった。

Create Database文がそもそも含まれないので、最初のn個のクエリを無視するという

オプションも使わずに済んだのがよかったんだろう。

 

そんなこんなで、Movable Typeのバージョンアップ。少し手こずったけど、無事完了。

 

本題の、PostTwiOAuthプラグイン。

現時点(2010/7/25)での最新版、0.40をインストール。

インストールは簡単。インストールするとMovable Typeのアップデートが行われたので

ちょっとびっくり。

 

PostTwiOAuthプラグインの設定。

TwitterAPIは既存のものを利用するのかと思っていたけれど、自分自身でAPIを作成

する必要がある。API作成して、そのAPIにログインして各種設定。

テスト用のツィートまではサクサクっと完了。

 

次に、既存の記事に対して、Twitterへの投稿のRepost機能があるので、早速、既存の

記事で試してみるが、投稿されない・・

エラーは発生しないので何が何だか不明。

プラグイン入れる前に投稿した記事だから?古いバージョンのMovableTypeの記事だから?

よくわからないので、とりあえず新しい記事を投稿して動作確認。

 

そう・・、この記事が動作確認用の記事。

うまくいったかどうかは、投稿してみないとわかりませんので・・。

 

タイムラインで早速確認してみよう。

 

OTNでオンデマンドのセミナーコンテンツが公開されています。


 WEBでのオンラインセミナーの資料をオンデマンドで公開したのだと思うが、

タイトルも興味深いものが多いのでいろいろと利用できると思う。

必要な情報の収集、新入社員研修、社内研修での利用等々。

 

資料は、PDF(たぶんPowerPoint)の資料だけでなく、

その資料を基に実施されたセミナーの動画での説明ファイルも付属している

物もあるので、手軽に利用できそう。

 

サイトより

いつでも好きな時間にオラクルの製品や技術について学べるように、オンデマンドコンテンツをご用意しました。日々の学習にお役立てください。

こんな方に

  • 自分のペースで学習したい
  • 日中はセミナーを受講する時間がない

 

サイトでは、以下のようなタイトルが公開されてます。

 

・超入門!Oracle Databaseって何だ!?

・ここからはじめよう! Oracle SQL入門

・意外と簡単!? OracleDatabase11g -データベース設定編

・今さら聞けない!?レプリケーション

・今さら聞けない!?バックアップ・リカバリ入門

・今さら聞けない!?Oracle入門

・意外と簡単!? Oracle Database 11g -セキュリティ編

・今さら聞けない!?パフォーマンス・チューニング入門

・意外と簡単!? Oracle Database 11g -バックアップ・リカバリ編

・Oracle入門 前編(ダイセミより)<本編:約31分>

・パーティショニング<本編:約26分>

・ORACLE MASTER取得支援プログラム

 Get ORACLE MASTER!ポイント解説[11g SilverDBA11g]

・ORACLE MASTER取得支援プログラム

 Get ORACLE MASTER!ポイント解説[BronzeDBA11g]

・ORACLE MASTER取得支援プログラム

 Get ORACLE MASTER!ポイント解説[11g SQL基礎?]


 

書籍を買ってまで勉強する必要のない場合は、

まずはこのサイトのコンテンツを利用してみてはどうでしょう。

 

最近仕事でC#をメインで使うようになってきたので。

新しいこともいろいろと習得中です。

 

業務アプリケーションにデータベース処理はつきもので、

さらにデータベース処理には、トランザクションがつきもので、

またまたトランザクション処理にはコミットと、ロールバックが・・・

 

今まではどんな言語を使うにしろ、トランザクション処理では、

トランザクションの開始と、コミット、そして例外時にはロールバックと

明示的に記述していた。

 

C#で、SqlTransactionを利用した従来の書き方

using (SqlTransaction tran = con.Begin.Transaction())

{

    try {

        //SQLによるデータベース更新処理

        :

        //コミット

        tran.Commit();

    }

    catch {

        //ロールバック

        tran.Rollback();

    }

}

 

しかし.NET Framework2.0ではもう少し簡単に書けるようになった、

System.Transaction.TransactionScopeクラスが用意されている。

TransactionScope.Complete()メソッドが呼ばれるとコミットされ、

TransactionScope.Dispose()メソッドが呼ばれるとロールバック

される仕組みとのこと。

なので、usingステートメントと組み合わせて、以下のように書ける。

using (TransactionScope tran = new TransactionScope()) {

    //SQLによるデータベース更新処理

    :

    //コミット

    tran.Complete();

}

※例外が発生したり、Complete()メソッドを呼び出さずに、

usingステートメントを抜けると自動的にロールバックされる。

 

また、TransactionScope クラスには自動的にコネクションや、

SqlCommandクラスを検出する機能があるため、今までのように

明示的にコネクションやSqlCommandのインスタンスとトランザクション

のインスタンスを結びつける必要が無くなっているのもポイント。