SQLiteで相関副問い合わせ動かない?
先週より引き続きの演習にて、 SQLを実際に使ってもらう課題。 テーマとしては、副問い合わせを含むSQLも試すこと…としていた。 しかし学生さんから、教科書記載の「相関副問い合わせ」が動かないとの問い合わせがあった。
実際に、実行してみるけど、以下のように表示され動かない。うーむ。 SQLiteは、簡易型データベースだし、完全に実装されていないのかな…
((教科書記載の相関副問い合わせの例)) select * from G where 'S4' in (select SG.業者番号 from SG where SG.商品番号=G.商品番号) ; ((SQLiteで実行した時のメッセージ)) Warning: sqlite_query() [function.sqlite-query]: no such column: G.商品番号 in ...
エラーメッセージを見るからには、主問い合わせのテーブルGが、 副問い合わせの中に含まれているだけで、no such column と出ているようだし、 相関副問い合わせ自体をサポートしていないような….
インターンシップ報告会評価結果
先日行われた、インターンシップ報告会の評価シートの結果の集計を行った。
教員評価 | 学生評価 | ||
---|---|---|---|
1位 | 久世さん | 1位 | 飯田君 |
2位 | 片岡君 | 2位 | 久世さん |
3位 | 原君 | 3位 | 青山君 |
以上の優秀発表者には、図書券を送らせて頂きます。
OSの基本機能と役割
先週のインタプリタとコンパイラの話の続き。 特殊な事例として、Javaにおけるバイトコードインタプリタ方式を説明。 Javaでは、この方式によりあらかじめJavaソースをコンパイルした、OS,CPUに依存しない バイトコードを、仮想マシン(VM)でインタプリタ方式で実行する。これにより、 機械語に近いバイトコードであるため、極端な速度低下をすることなく実行できる。
機械語の実行の話としては、コンパイルの流れとして、コンパイラにより中間コードが生成され、 次にリンカ(リンケージエディタ)により、ライブラリと組み合わされて実行プログラムが生成されることを説明する。また、ライブラリが、実行プログラム内に組み込まれる(静的リンク方式)と、マルチタスクOSでは、 同じ機械語コードがメモリに複数存在しメモリのムダが発生するとともに、 ライブラリに間違いがあった場合の修正が手間となる。 このため、最近では動的リンク方式(Dynamic Link Library)がとられ、 OSがライブラリのコードを必要に応じて読み込む方式を説明。
OSの基本機能と役割
OSの機能として、カーネルと呼ばれる制御プログラム、開発環境としてのコンパイラ・リンカ・デバッガの説明、ユーティリティプログラムとしてのコマンドラインインタプリタ・GUI・エディタなどを紹介。
OSの導入により、プログラマは資源の使い方の共通化により プログラム作成が容易になることを説明する。 また、プログラムの説明として、処理単位プロセスを解説し、 サービス視点のジョブや、プロセス内の並列化のスレッドなどを紹介する。