問題タブ [tinyint]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - MySQL の BIT と TINYINT の違いは何ですか?
どのような場合に、どちらを使用しますか? 違いはありますか?ブール値を保存するために永続化エンジンで通常使用されるのはどれですか?
sql - 値が255を超えないことがわかっている場合、tinyintフィールドを設定することに利点はありますか?
可能な限り最小のデータ型を選択する必要がありますか、またはたとえば値1を格納する場合、colデータ型が何であるかは問題ではなく、値は同じメモリサイズを占有しますか?
問題は、私は常にそれを変換してアプリケーションで遊んでいなければならないということです。
アップデート
値が「a」の場合、varchar(1)とvarchar(50)は同じメモリサイズだと思います。intとtinyintでも同じだと思いました。答えによれば、そうではないのではないでしょうか。
asp.net - MySQL 関数の結果を tinyint(1) に変換する方法
これが問題です。MySQL の Connector/NET では、TINYINT(1)
フィールドが .NET bool 値に適切に変換されます。列のあるテーブルから選択するとTINYINT(1)
、すべてがゴールデンになります。ただし、次のような組み込みの MySQL v5.0 関数を使用する場合:
データベースからの実際の戻り値の型は、このフィールドをINT
orとして登録しますBIGINT
が、Connector/.NET は明らかに bool に変換しません。へのキャストを許可CAST()
しCONVERT()
ませんTINYINT(1)
。
これを行うためにユーザー関数を試すことさえしましたが、しかし、これもうまくいきません(編集:これは機能します):
MySQL のクエリで aINT
を aに変換するにはどうすればよいですか?TINYINT(1)
編集: 上記の関数は実際には値を に変換するために機能しますTINYINT(1)
が、私の Connector/NET にはバグがあり、関数から値を適切に変換しません。
UPDATE 2009-11-03: コネクタを更新しましたが、それでも Int32 が返されます。さらにテストを行った結果、これは特定の状況でのみ発生する MySQL 5.0.xのInnoDB バグであることが明らかになりました。
mysql - char(1) と tinyint(1) のどちらが速いですか? なんで?
私のプラットフォーム:
PHP & MySQL
私の状況:
テーブルの列の 1 つにユーザー選択の値を格納する必要がある状況に遭遇しました。今、私のオプションは次のとおりです。
- 列を char(1) として宣言し、値を 'y' または 'n' として格納します。
- または、列を tinyint(1) として宣言し、値を 1 または 0 として保存します
- そのように宣言されたこの列は、アプリケーション内で使用するために索引付けすることもできます。
私の質問:
だから私は知りたかったのですが、上記の2つのタイプのどれですか:
その列にアクセスすると、クエリ速度が速くなります (簡単にするために、他のクエリを混在させたり、他の列にアクセスしたりすることは避けてください)。
データを保存およびアクセスする最も効率的な方法とその理由は?
列に索引が付けられている場合とそうでない場合、アクセス速度はどのように異なりますか?
私の理解では、char(1) と tinyint(1) は 1 バイトのスペースしか占有しないため、この場合、ストレージ スペースは問題になりません。あとはアクセス速度ですね。私の知る限り、数値インデックスは何よりも高速で効率的です。しかし、ここでのケースは判断が難しいと思います。これに関するあなたの経験をぜひお聞きしたいと思います。
前もって感謝します。
mysql - tinyint が MySQL に 255 を超える数を格納できないのはなぜですか?
たとえば、TINYINT が 3 文字を格納できる場合、なぜ 999 まで格納できないのでしょうか?
asp.net-mvc - Html.RadioButton グループのデフォルトは 0
デフォルト値の 0 が、開発中の Surveys アプリに忍び寄っていますが、理由はわかりません。問題は次のとおりです。
ユーザーがアンケートの質問に回答するために選択できる値を表す Html.RadioButtons のグループがあります (1 == まったくない、2 == 少し、3 == 多くある)。各質問への回答を格納するために、null を許可しない tinyint データ型を使用しました。
ビューのコードは次のようになります。
[上記のコードに関する注意:]
各アンケートには約 70 の質問があるため、質問のテキストを 1 つのテーブルに配置し、結果を別のテーブルに保存しました。質問をフォーム ビュー モデルに入れました (したがって、Model.Questions)。質問テーブルには、上に示すように、回答テーブルの列を質問にリンクできる QuestionColumn というフィールドがあります (<%= Html.RadioButton(col, "1")%> など)。
[/ノート]
ただし、ユーザーが質問に答えない場合、値 0 がデータベース列に挿入されます。ユーザーがラジオボタンを選択しない場合、Null が期待されます。
その結果、期待どおりの結果が得られません。つまり、null 値 (ユーザー入力なし) による検証エラーです。
Answers テーブルのフィールドのデフォルト値を 0 と規定したことはありません。
それで、何が起こっているのですか?何か案は?
asp.net-mvc - asp.net mvc linq sqlの問題
asp.net mvc 2 と linq to sql を使用するプロジェクトに取り組んでいます。この問題は、テーブルの ID 列の型が tinyint であるテーブルにデータを挿入しようとすると発生します。挿入しようとすると、次のエラーが発生します。
linq to sql は tinyint データ型をサポートしていますか?
私を助けてください
c# - TinyInt を使用してコントロールを非表示/表示しますか?
私のGUIには6つのボタンがあります。ボタンの表示は、チェックボックスで構成できます。チェックボックスをオンにして保存すると、対応するボタンが表示されます。6つのボタンすべての可視性を表すTinyInt列をデータベースに1つ持つことが何とか可能かどうか疑問に思っています。
ボタンの列挙型を作成しました。次のようになります。
ここで、たとえば、この 1 つの列を使用してボタン 1、ボタン 5、およびボタン 6 のみがチェックされると言う方法を考えています。まったく可能ですか?
ありがとう :-)
mysql - true / false値に適切なデータフィールドタイプ?
mySQLデータベースにtrue/false / 1/0値を格納するための最も適切な(データ消費量が最も少ない)データフィールドは何ですか?
私は以前に1文字の長いtinyintを使用しましたが、それが最善の解決策であるかどうかわかりませんか?
ありがとう!
sql - SQL:最大値が255の場合、整数の代わりにtinyintを使用するのは効率的ですか?
最大になる可能性のあるデータグリッド行の数を保存したいとします。各行が1時間であるため、24。
データベースに行インデックスを保存するには、tinyintフィールドで十分です。しかし、私の心に戻って、データベースが整数用に最適化されていることを少し覚えていますか?!
では、tinyintを使用する価値はありますか?