MySQL 5.1 での整数のビットとしてのキャスト
MySQL 5.1 では、SQL Server から移行する際の一般的な障害は、整数をキャストできないことです。 CAST 演算子を使用して整数をビットとして変換します。この制限は、CAST 演算子が BINARY、CHAR、DATE などの特定のデータ型セットへのキャストのみをサポートしているために発生します。
解決策:
残念ながら、MySQL 5.1ネイティブでは、整数をビットにキャストすることはできません。この制限を克服するには、整数をビットに変換するカスタム関数を定義できます。使用できるカスタム関数は次のとおりです:
<code class="sql">DELIMITER $$ CREATE FUNCTION cast_to_bit (N INT) RETURNS bit(1) BEGIN RETURN N; END $$</code>
例:
関数を作成したら、それを使用して整数列をビット列。これを説明するために、さまざまな式をビットに変換するビューを作成してみましょう。
<code class="sql">CREATE VIEW view_bit AS SELECT cast_to_bit(0), cast_to_bit(1), cast_to_bit(FALSE), cast_to_bit(TRUE), cast_to_bit(b'0'), cast_to_bit(b'1'), cast_to_bit(2=3), cast_to_bit(2=2)</code>
検証:
キャストを検証するには、DESCRIBE コマンドを使用して、ビューのスキーマ:
<code class="sql">DESCRIBE view_bit;</code>
出力では、すべての列のデータ型が bit(1) であることが示されます。
以上がMySQL 5.1 で整数をビットとしてキャストするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。