2009年12月 6日 (日)

PostgreSQLを始める - CREATE ROLE でハマる-

PostgresSQLを始めることにしました.

本屋で何冊か立ち読みした結果,「新標準PostgreSQL」:ソフトバンククリエイティブを『テキスト』にすることにしました.

環境はWinXP 付録のCD-ROMにはPostgreSQL8.4.0が収録されているようですが,今使っているPCにすでにインストールされていた8.3.4を使うことにしました.これが悪かったのかいきなりハマってしまいました.

『テキスト』p55 には「ユーザを作成しよう」と題して,

postgres=# CREATE ROLE sample CREATEDB;

とコマンドが紹介されているのですが,どうもこのコマンドは対話型インタフェース psql から発行してもユーザを作成していないようです.pgAdminIII なるGUIベースのクライアントインタフェースを起動して,眺めてみて分かったのですが,上記コマンドで作成されているのはユーザ(pgAdminIIIでは「ログインロール」と表記される)ではなく,「グループロール」(pgAdminIIIの表記)のようです.

その結果,『テキスト』p56の「データベースを作成しよう」で紹介される,

postgres=# \c postgres sample

コマンドでユーザをsampleに変更しようとすると,

FATAL: role "sample" is not permitted to log in postgres  ...

とエラーメッセージを食らうことになります.そんなこんなでポスグレを始めることにしました.

| | コメント (0) | トラックバック (0)

2006年1月21日 (土)

DataGridViewコントロール

.NET 2.0で追加された,DataGridViewコントロールの使い方で分からないことがあります.

Visual C#.NET逆引き大全 500の極意」には「DataGridコントロールにデータを表示する」という項目で,DataSetオブジェクトにテーブルを作成して,その内容をDataGridコントロールに表示する方法が載っています.

以前のバージョンであるDataGridコントロールでは,SetDataBindingメソッドの引数にDataSetオブジェクトを指定してやれば,テーブルの内容を表示してくれるのです.しかし,DataGridViewコントロールでは同様のメッソドがあるのでしょうか?

@ITDataGridViewコントロールの使い方に関する記事にはSQL Server上であらかじめ作ったテーブルを指定する方法が解説してあります.この記事からDataSetオブジェクトに作成したテーブルを指定するにはどうしたらよいのかは,読み取れないような気がします.

一旦SQL Server上でテーブルを作るのがよい方法なのでしょうか?

| | コメント (1) | トラックバック (0)

2006年1月13日 (金)

プログラミング雑感

僕はこれまで,事あるごとにプログラミングに挑戦したいと思って,書籍を読みながらPCにソースを打ち込むなどして勉強してきました.それでも,なかなか身に付いたという実感がありませんでした.ところが,最近ちょっと分かってきたような気になりつつあります.どうして,そんな気分になったのか,ちょっと振り返ってみたいと思います.

分かってきたかな?と思うようになったきっかけは,日経ソフトウェア2005年3月号の記事「C#でガンガン作ろう!」(第一回)を読んだことだったと思います.この記事ではサンプルプログラムの構造をおおまかに説明しているだけなので,初心者には難しい内容だと思います.なんとなく分かった気分になったのは,挫折を繰り返しながらも,いろいろな書籍を読んでいた,という経験があったからなのかもしれません.ここでC#(Visual C#.NET)ってイケテルかも?と思ったのでした.

それまでは,中学生の時にMSXパソコンで雑誌に載っていたゲームのプログラム(BASIC)を,わけもわからず打ち込んでいたのですが,挫折.大学生時代に授業でPascalを習ったの,やはり大学のプログラミング演習で学んだC言語も挫折.卒業研究では,Prologで挫折.大学院でもやはりPrologで挫折.僕にはプログラミングって向いていないと思いながらも,この世界で生きていくには共通言語としてプログラミング言語のひとつはマスターしないといけないと,参考書を購入しては挫折を繰り返していました.社会人になってからも,当時新しく登場したJavaに,新しい言語なら!と飛びつきましたが,ものにすることはできませんでした.そうこう言っているうちに,20年という月日が流れたことになります.そういえば,その間にPerlが面白そうと飛びついたこともありました.

日経ソフトウェアの記事を読んだ後,すぐに購入したのが,Visual C#.NET逆引き大全 500の極意」で,これが僕にとってはアタリだと思っています.

マイクロソフトのVisual StudioはVC++ 6.0の時から持っていて,やはり参考書に書いてあるプログラムを打ち込むというところまでは試していたのですが,その先には進めませんでした.どうしてもイベントドリブンを実現する仕組みでつまづく(多分そうだと思っている)のです.2001年の夏にVB 6.0をいじりはじめて,ともかくボタンをクリックするまでの仕組みはツールに任せようと,割り切るようになって,少し先に進んだような気になったのですが,仕事の都合などで,プログラミングに関してはブランクがあきました.

先の,Visual C#.NET逆引き大全 500の極意」は書いてあるプログラムを打ち込んで理解しようとすると,まずはフォームにボタンを配置して,そのボタンをダブルクリックして,ボタンをクリックした後の処理を記述するソースへたどり着くというVisual Studioの基本操作を知っていないと挫折すると思います.付属のCD-ROMをVSに読み込ませて動かすだけで,理解が進むのかは不明です.この書籍は「逆引き」とあるように,こんなこと出来ないかなぁと思った人が,読むように作られていますから,その前段にVSの基本的な使い方の知識が必要なのは当たり前かもしれませんが.

ボタンをクリックしたら,処理が始まって(その処理をプログラミングします)結果を返して,表示する.

この一番基本となることを,抑えることが大切なのだろうと思っています.こう考えるようになって,これまで購入したいろいろな書籍が理解出来るようになって来ました.C#はマイクロソフトのJavaだ!という人もいるという話もあるようで,Javaに関する書籍も,分かるようになってきたと感じています.

ようやく,プログラミングの一歩目を踏み出せたのではないか?と思っている今日この頃です.

| | コメント (0) | トラックバック (0)