
Win XP
VB6 SP5
SQL Server
VB6とSQL Serverの桁の扱い方について
文字列の桁数チェックをする際に
以下の不都合が出ています。
例:1
SQL Serverのvarchar(4)には
"aaaa"が登録可能です。
しかしLenB("aaaa")は8が返ってきます。
例:2
SQL Serverのvarchar(4)には
"ああ"が登録可能です。
LenB("ああ")は4が返ってきます。
結論
LenB("aa")とLenB("ああ")は両方共4が返ってきます。
"a"も"あ"も2バイトとして扱っています。
SQL Serverでは"a"は1バイト
"あ"は2バイトとして扱っています。
これは少しおかしいと感じたのですがいかがでしょうか?
文字の桁数チェックを行う時に発見したのですが
みなさんは文字の桁数チェックをどのようなやり方で
行っているのでしょうか?
No.2ベストアンサー
- 回答日時:
少なくともNT4.0やWindows2000はOS内部ではUNICODEで稼動しています。
多分その影響でしょう。VB、VBAからLenB等の関数を使用した場合、1文字2Byteで計算してくれるという間抜けな仕様になっています。
過去に同じ内容の質問があります。
【http://www.okweb.ne.jp/kotaeru.php3?qid=177605】
参考URL:http://www.okweb.ne.jp/kotaeru.php3?qid=177605
No.1
- 回答日時:
通りすがりの者で詳しい知識が有る訳では有りませんが。
SQLserverは基本として、どのようなマシンからも入出力を受付ける目的で文字コードの限定をしなくてもokな様に、データ保存はユニコードで保存されていると考えて差し支えないのでは無いでしょうか?
マイクロソフトの採用しているユニコードは2バイトコード系だからそのような結果として出るのではないでしょうか?
あまり役に立たない情報ですね。
では。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- SQL Server [SQLServer] テーブル名からカラム名を取得する 1 2022/08/23 21:20
- SQL Server SQL ServerでDBを構築。これは開発? 4 2022/05/28 14:10
- MySQL テーブル作成です。どこかのスペルが間違っているか記号など スペースかな? 1 2022/10/01 05:08
- MySQL 何にかが違うから エラーなんでしょうね! 2 2022/09/18 05:28
- その他(ブラウザ) python から COBOL を呼び出すことは可能でしょうか。 1 2023/04/21 21:03
- Excel(エクセル) Excelの入力規則にいれる関数について 7 2022/12/22 10:19
- Excel(エクセル) EXCELの「接続」のSQLのコマンド文字列にて、セルから任意の数値を利用したい 2 2023/03/09 16:43
- Oracle SQLについて教えて下さい。 主キーを持ったカラムを主キーの機能を持たせたまま カンマ区切りで文字列 1 2023/03/27 22:47
- その他(プログラミング・Web制作) Rでのスクリプトのご相談 3 2022/12/08 16:22
- MySQL MySQLのテーブル作成でハイフン - は使用できないのでしょうか? 2 2022/10/21 16:50
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
UTF-8で5~6バイトになる文字コ...
-
10Mバイトて文字数に すると何...
-
COBOLのCOMP形式について
-
char str[256]の256の意味は?
-
バイト列とバイナリ列の違いが...
-
エクセルシート名の制限を変更...
-
ビットスワップとバイトスワッ...
-
Javaで日本語1文字のバイト数
-
windowsのファイルパス最大文字数
-
memcmp バイナリデータの比較方法
-
【VB2005】テキストボックス内...
-
日付時刻を4バイトに
-
C++ Builderで文字列をバイトに...
-
ワイド文字のバイト数が取得で...
-
3バイト文字(UTF-8)をprintfで...
-
Console.writeLineで文字化け
-
VBAでShift-JISのURLエンコード
-
機種依存文字をチェックしたい。
-
:(コロン)のKeyCode
-
GetWindowTextでアドレスバーか...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
UTF-8で5~6バイトになる文字コ...
-
10Mバイトて文字数に すると何...
-
COBOLのCOMP形式について
-
エクセルシート名の制限を変更...
-
char str[256]の256の意味は?
-
バイト列とバイナリ列の違いが...
-
ピクセル,dpiから容量(バイト...
-
C++ Builderで文字列をバイトに...
-
Javaで日本語1文字のバイト数
-
ビットスワップとバイトスワッ...
-
SQLで1バイト、2バイト混在...
-
バイナリとBCDコード
-
URLは最高何文字まで可能なので...
-
機種依存文字をチェックしたい。
-
VBAでShift-JISのURLエンコード
-
COBOL PICTUREで X,S,Vの意味
-
memcmp バイナリデータの比較方法
-
pythonでバイナリデータを配列...
-
64bit対応
-
3バイト文字(UTF-8)をprintfで...
おすすめ情報