[解決済み] オラクルのブーリアンフィールド
2022-05-05 15:57:52
質問
昨日、Oracleのテーブルにbooleanフィールドを追加したいと思いました。 しかし、実際にはOracleにbooleanデータ型はありません。 どなたか、booleanをシミュレートする最良の方法をご存知でしょうか? ググってみると、いくつかの方法が見つかりました。
-
整数を使い、0か1以外をわざわざ代入しない。
-
Y'または'N'の2つの値のみを持つcharフィールドを使用します。
-
CHECK制約のあるenumを使用する。
経験豊富なOracle開発者は、どのアプローチが好ましいか/正統的か知っていますか?
どのように解決するのですか?
私は これ のリンクが便利です。
以下は、各アプローチの長所と短所を強調した段落です。
<ブロッククオート最もよく見られるデザインは、多くのブール値のようなものを模倣することです。 Oracle のデータディクショナリビューが使用しているフラグで、'Y' を選択すると true になります。 を、'N' は false を表します。しかし、ホスト JDBC、OCCI、その他のプログラミング環境など。 のように、0を選択するとfalse、1を選択するとtrueとなり、より効果的です。 getBoolean関数とsetBoolean関数で正しく動作します。
基本的に彼らは、効率のために、2番の方法を提唱しています。
-
値
の0/1(JDBCとの相互運用性のために
getBoolean()
など)をチェックする制約があります。 - a タイプ のCHARを使用します(NUMBERよりも使用するスペースが少ないため)。
彼らの例
create table tbool (bool char check (bool in (0,1)); insert into tbool values(0); insert into tbool values(1);`
関連
-
PLSQLDeveloper14を使用したOracle11gへの接続手順を詳しく伝授
-
オラクルのTO_DATEの使い方解説
-
[解決済み] argparseによるブーリアン値のパース
-
[解決済み] ブーリアン値を格納するために使用するMySQLデータ型
-
[解決済み] シェルスクリプトでブール変数を宣言して使用するにはどうすればよいですか?
-
[解決済み] Oracleの全テーブルのリストを取得しますか?
-
[解決済み] Pythonで文字列からbooleanに変換する?
-
[解決済み] C言語でのブーリアン値の使用
-
[解決済み] SQLサーバーでyes/noのブーリアンフィールドを作成する方法は?
-
[解決済み】Oracleクエリが順序付け後に返す行数を制限するにはどうすればいいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Oracle Dbeaver ストアドプロシージャの構文説明
-
PLSQLは、ローカルオラクルまたはリモートオラクルデータベースに接続し、ランダムスイッチ機能を実現します。
-
オラクルのブロック修正追跡機能の説明
-
sqlplusコマンドによるOracleデータベースへのさまざまなログイン方法
-
オラクルのファジー・クエリーとその使い方
-
Oracle ADGプロセスを構築するDBCAコマンドライン
-
[解決済み] ORA-01465: BLOB を使用しているとき、Oracle の 16 進数が無効です。
-
[解決済み] ORA-00980 PLSQL で同義語の翻訳が有効でなくなった。
-
[解決済み] カラムが存在するにもかかわらず、ORA-00904が発生するのはなぜですか?
-
[解決済み] ORA-01747:user.table.column, table.column, または column の指定が無効です。