2010年10月6日水曜日

シノニムってなんだ??

MySQLのカラムの型を調べていたら、
BIT , BOOL , BOOLEAN
いずれも TINYINT(1) のシノニム。 シノニム BOOLEAN はバージョン 4.1.0 で追加された。
また新しい造語でも出てきたのかと思った。関係ないけど昔ショムニってドラマがあったよな。

IT用語辞典 http://www.blogger.com/post-create.g?blogID=5207337282554957561
シノニム 【synonym】

「同義語」「類義語」という意味の英単語で、分野や製品によって意味が異なるが、一つの実体に複数の名前や値などが割り当てられる機能や状態を指すことが多い。

データベースやプログラミングの分野では、同じデータ型を複数の型名で参照できる機能や、データ項目などにユーザが別名を付与できる機能などをシノニムと呼ぶことが多い。

また、ファイルの編成方法の一つである直接編成ファイルにおいて、複数のレコードキー値が同一のレコードアドレスに変換されてしまう現象のことをシノニムと呼ぶ。シノニムが発生して本来指定されたレコードアドレスに格納できないキー値をシノニムレコードという。
ITpro http://itpro.nikkeibp.co.jp/word/page/10000703/
一般には同義語,異名の意で,主にリレーショナル・データベース分野で用いられる用語。テーブルなどのデータベース上のオブジェクトの別名のことをいい,ユーザーが自由に作成できる。

 なるほどね。目下のところそんなに追求しなくてもいい見たいだ。なにせテキストファイルでも間に合うぐらいの小さなデータベースだからね。

 ところで、MySQLにはオートナンバーってなかったですかね。確かアクセスにはあったような記憶があるけども。新規にデータを入れると自動で一番大きな?データ数をカウントして一番大きな番号を割り振ってくれるって機能。
これがないと、データを昇順で並べ替えて最後の数値を収得して、+1をする関数を作らなければいけないんだよね。確か。ここまで書いて、違うな、何も並べ替えなんかしないで行数をカウントして+1すればいいのか。

 話は違うけど途中のデータを削除した場合に数字が抜けてしまうね。ランダムで10個だけデータを取り出すとなると抜けている数字を除外しなければならないのか。これはこれで処理が面倒だね。通常どうしているのだろうか。結構難しいな。ランダム数字10個のデータが実際に存在するかしないかを検査しなければいけなくなるのか。
 絶対に削除しないっていうふうにするのが一番簡単なのか?。
ちゃうちゃう
 10回まわせばいいのかも知れない件数分の乱数を20個ぐらい発生させて、ひとつのデータが実在すれば1つカウントして無かったら次のデータに行き、再び検査して・・・・を繰り返せばいいのか。それが終わったらSelect文を作成してSQLに飛ばせばいいのか。今のところこれぐらいしか思いつかないもんね。

昔触っただけだからもう忘れちまっているよ。知ってる人がいたらメールください。この部分しばらく保留

1 件のコメント:

或間二郎 さんのコメント...

>MySQLにはオートナンバーってなかったですかね

だいじょうぶ、ちゃんとあるよ。
さしあたっては、
http://dev.mysql.com/doc/refman/5.1-olh/ja/numeric-type-overview.html
とか
http://www.dbonline.jp/mysql/table/index7.html
を参照して下さい。

MySQL の話題が出たので嬉しくなって書き込んでしまいました。(^。^;