競馬予想プログラミングに関する記事を「投稿まとめ」で一覧にしてます。この記事は「自動投票」の一覧に含まれてます。一覧の順に読むとステップごとで分かりやすいです。
自作プロシージャで自動投票を「やる/やらない」に関係なく、ユーザーが自作のオブジェクトを作る場合は、次のルールで名前を決めてください。「PC-KEIBA Database」のデータベース・オブジェクトと重複しない名前を付けるよう注意してください。
オブジェクトとは
オブジェクトを直訳すると「物」です。いかにも英語らしい、抽象的になんでも表せる単語です。データベースの世界では、
- テーブル
- プロシージャ
- ファンクション
- インデックス
など、データベースを構成する「物」を総じて「データベース・オブジェクト」と呼びます。
プレフィックス
名前の先頭を統一して分類する文字を、プログラムの世界で「プレフィックス」または「接頭辞(せっとうじ)」と呼びます。「PC-KEIBA Database」ではオブジェクトに対して、3桁のプレフィックスを以下のように定めています。
プレフィックス(1~2桁目)
データの種類を表します。
- jv →JRA-VAN データラボ
- nv →地方競馬DATA
- ap →PC-KEIBA Database
上記3つのプレフィックスは「PC-KEIBA Database」で使ってます。なので、自作のオブジェクトに同じプレフィックスは使わないでください。同じにすると、将来ソフトのバージョンアップで重複する名前が現れてアップデートに失敗する可能性があるからです。
自作のオブジェクトにオススメのプレフィックスは「my」。プログラムの世界でよく使われ、当サイト内のサンプルプログラムでも使ってます。プレフィックスを統一すれば「これは自分が作ったオブジェクトだ」と、一目でわかる便利さもあります。
ユーザー予想プログラミングにおける注意事項
また、上記3つのプレフィックス(jv、nv、ap)で始まる名前のオブジェクトは「PC-KEIBA Database」のシステムに必須のオブジェクトです。なので、イジったり変更したりは絶対しないでください。見るだけなら大丈夫ですが。
自作プロシージャで自動投票する場合においては、例外的にイジる必要がある「ap」のオブジェクトもあります。それは、この先の【弐ノ型】と【参ノ型】で説明します。
プレフィックス(3桁目)
オブジェクトの種類を表します。
- d →テーブル
- p →プロシージャ
- f →ファンクション
5桁目以降に名前をつける
名前を読みやすいように、4桁目はアンダーバー(_)の区切り文字にして、5桁目以降に名前をつけます。ここまでのルールで自作のオブジェクトに対して名前をつけた具体的な例は、
- 「基準タイムを作成するプロシージャ」であれば →myp_kijun_time
- 「スピード指数を保存するテーブル」であれば →myd_speed_shisu
といった感じになります。このように誰が見てもその内容がわかるストレートな名前にしておきましょう。そうしないと時間が経てば作った本人でも「これって何だったっけ?」と忘れるので(笑)
ちなみに「PC-KEIBA Database」のオブジェクトの場合は、「JV-Data 仕様書」に定義された「レコード種別ID」を名前にしてます。
オブジェクト名の長さ(文字数)には制限があります。PostgreSQLのルールは半角文字で最大63文字まで。でも、長すぎる名前もわかりにくいし、半角30文字までが目安と思います。