
データ型について教えてください。
あまり気にする必要がないかもしれませんが、テーブルにフラグ目的でフィールドを作る場合、
データ型は何するのが一般的なのでしょうか?(CHAR OR NUMBER?)
ACCESSで言えばBOOLEANになると思うのですが、ORACLEやポスグレはないですよね?
私は、CHAR(1)にしています。
理由は、プログラムでSQLを書くときに''で囲むようにするためです。
その他のフィールドもだいたいテキストか日付ですので、''を囲むフィールドばかりです。
できるだけ''囲むフィールドに統一して、SQLの記述ミスを少なくしようというのが狙いです。
この考え方は間違っていますか?
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
間違っていないと思います。
でも、私は、NUMBER 型を使います。
理由は、プログラムを書くときに、明示的にフラグだと解るようにしたいからです。
フラグとしての使い方を考えると、
プログラム上では、単体で動作する事が多くなってきます。
例えば、データを論理削除する場合に、削除フラグとして利用します。
その時には、SELECT の時には、WHERE の一部として入力されて利用されます。
UPDATE では、他のデータと同時にってよりも、削除フラグだけを設定する事が考えられます。
その為に、他のデータと記述上で見分けが付くように、しておきたい為です。
また、入れるデータも プログラム言語上で利用する True や False を使って明示的に解るようにしたい為です。
この辺りは、何が合っていて、何が間違っているって言うのは少ないと思います。
ルールをしっかりして、混合する様なルールになっていなければ、正解だと思います。
No.1
- 回答日時:
PostgreSQLにもboolean型がありますよ。
でも、わたしもchar型を使うことが多いですね。
複数のRDBMSをプロジェクトによって使い分けるので、どのRDBMSでも共通で使える型を使用します。
理由は、その方が間違えが少ないですし、移植する時に修正が少なくなるからです。
この回答への補足
postgresにあるんですか。
運用上統一すべきなのですが、、
弊社にはoracleとpostgresがあり、両者で同じテーブルがあるため、データの移植、移行をよく行っています。そう考えると、postgresでboolean使うべきではないですね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- Access(アクセス) accessでexcelを読み込む時のデータ型 1 2022/03/28 19:45
- その他(データベース) IT用語について質問です。 以前ITパスポートの試験を受けた際にデータベースが何の集まりかについての 2 2022/12/10 12:29
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- SQL Server ACCESSで表が作りたく、そのためのSQL文や設定方法を教えてください。 1 2022/08/15 12:28
- Access(アクセス) Accessのクエリの結果を、既存のエクセルに追加したい 2 2022/07/31 22:44
- Access(アクセス) アクセスの更新クエリでカレントレコードのみ更新したい 1 2022/06/02 23:32
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
- Access(アクセス) access,vbaでフォルダ内のファイルをテーブルにインポート、ファイル名もフィールドに追加したい 1 2022/08/31 11:11
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルのソートの使い方
-
Accessで年月日のデータ...
-
フォーム上で小計など自動計算...
-
wordで文字の上に線を引きたい...
-
データ型について教えてください。
-
Accessで、『"A"以外の場合"--"...
-
クロス集計クエリの最後のデー...
-
ACCESS、時間ごとの集計の仕方は?
-
Accessのマクロでモジュールを...
-
Statement ignored というエラー
-
sqlplusのspoolで空白行出現
-
Excel VBAで「プログラム実行」...
-
【Excel VBA】 WorksheetやRa...
-
エクセルVBAでUserFormを起動し...
-
ODBCリンクの際にACCESSでは読...
-
キャッシュを使わずにSELECTを...
-
callで順に実行されるプロシー...
-
Access VBAで行ラベルが定義さ...
-
PL/SQLカーソルの2重FORループ...
-
ストアドプロシジャからストア...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
データ型について教えてください。
-
Excelのピボットテーブルで数も...
-
Accessで年月日のデータ...
-
ACCESSデータベースのメモ型フィー...
-
Accessで、『"A"以外の場合"--"...
-
ACCESS、時間ごとの集計の仕方は?
-
アクセスのクエリ フィールド...
-
クエリーでのエラーメッセージ...
-
wordで文字の上に線を引きたい...
-
アンパサンドを挿入したい
-
ファイルメーカーでの文字列の...
-
各月の末日を取得する方法を教...
-
Libre Office でフィールドコー...
-
クロス集計クエリの最後のデー...
-
Access→Oracleへ移行後MAX()が...
-
フォーム上で小計など自動計算...
-
ファイルメーカーでフィールド...
-
ファイルメーカーのスクリプト...
-
FileMaker pro12 アンケート
-
VB.NET Type.GetFieldsメソッド...
おすすめ情報