• ベストアンサー

VB6とSQL Serverの桁の扱い方について

selenityの回答

  • ベストアンサー
  • selenity
  • ベストアンサー率41% (324/772)
回答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

関連するQ&A

  • 列名の最大文字数は?(MS SQL Server)

    こんにちは、いつも参考にさせていただいております。 今Microcoft SQL Server2008のためのDB設計を行っているのですが、 列名を設定する時点になって、文字数の制限があっただろうかと 立ち止まってしまいました。 Oracleは30Byteとか指定がありましたが、 MS SQL Serverでは公式文書ぐらいしか見つけられず これだ!というわかりやすい答えに出会えていません。 (公式文書…  http://msdn.microsoft.com/ja-jp/library/aa260295(SQL.80).aspx ) 公式文書の 「COLUMN_LENGTH」の横にある数字「128」があやしいな、と思っていますが型はvarcharなのでしょうか? それだと何文字ぐらい入るのでしょうか? とても初歩的という質問だとは思いますが、どうかご助言いただけないでしょうか。 よろしくお願いいたします。

  • SQL文(テーブル作成)に関する質問です

    SQL文についての質問です。仕様にあわせたテーブルを作ろうとしていますが、何故... SQL文についての質問です。 仕様にあわせたテーブルを作ろうとしていますが、何故かエラーが出ます。 どのように書けばいいんでしょうか? どなたか教えて下さい。 以下がSQL文です。 mysql> CREATE TABLE Syain -> ( user_id char(10) NOT NULL ← ユーザーID:半角英数字記号文字 10桁(固定) 自動発番 -> username varchar(250) ←ユーザー名:最大250文字まで登録可能 -> user_Yomi varchar(250) ←読み仮名:最大250文字まで登録可能 -> email varchar(250) NOT NULL ←e-mail:250文字まで登録可能 @必須 -> renrak varchar(250) ←連絡先:250文字まで登録可能 -> Yubin varchar(8) NOT NULL ←郵便番号:必須 8桁 -> Adress varchar(10) ←住所:500文字(半角換算)真で登録可能。 -> PRIMARY KEY(user_id)); ←このuser_idはプライマリキーになる。 また、以下がエラーです。 ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'usern ame varchar(250) user_Yomi varchar(250) email varchar(250) NOTNULL renrak v' at line 3 よろしくお願いします。

  • SQL Server 2005 日付期間について(SQL文)

    恐れ入ります。 現在、SQL Serever 2005を利用し、VS 2005にて某システムを作成しています。 その中で、ある条件のデータをテーブルから削除する機能を作らなければならないのですが、以下がやりたい旨です。 [テーブル] SYSTEMTBL [定  義] systemYMD (varchar(8) ): 登録日付(例.20080725) systemHMS (varchar(6) ): 登録時間(例.103050) AAAAA (varchar(10)): カラム1 BBBBB (varchar(10)): カラム2 とあり、 SQL文を次のようにしたいです。 DELETE FROM SYSTEMTBL WHERE 登録日付 < 本日日付 - 日数 条件部分をどのようにすれば、 正しい日付の計算をしてくれるのでしょうか? 宜しくお願い申し上げます。

  • A~H 4桁 組み合わせパターン 全件リスト

    A, B, C, D, E, F, G, Hのうち4桁(桁数固定, 文字重複可)の組み合わせパターンをExcelなどでリスト化する方法を教えてください。 例 AAAA ABCD

  • エクセルで桁合わせ!

    エクセルでA列に文字形式の数字があります. 例 0123 12345 234567 この文字形式の数字を仮に7桁で統一したいとします. 先頭に足りない桁は0を付加します. 変換後 0000123 0012345 0234567 このようにしたいのです. 列にあるデータごとに0を桁数分だけ付加していけばいいのですが このようなデータがたくさんあるので なにかいい方法がありましたら教えてください. お願いします.

  • VBとsql serverを使ってデータベースを操作したいと思って、

    VBとsql serverを使ってデータベースを操作したいと思って、 sql server management studioをインストールしたんですが、 Accessと違って何が何やら分からず、テーブルの作成すらできません。 最初に登録済みサーバを見ると、 自分のコンピュータ名\sqlexpless という名前のサーバらしきものがあり、 こんなサーバ作った覚えないぞ、デフォルトで作られるのかな? と思って右クリックから削除したんですが、 そのあと「オブジェクトエクスプローラを接続」を選択すると、さっきの名前のサーバが入力されてて、 接続を押したらなぜか復活していました。 意味が分からなかったので削除は諦め、新しくサーバを作ろうと「新規サーバの登録」から、適当に名前をつけてテストボタンを押したんですが、画像のようなエラーが出てきました。 見ても解決できなかったので諦めて、最初もともとあったサーバを使って新しくデータベースを作成しようとすると今度は、 CREATE DATABASE 権限が拒否された とのエラーが発生します。もう何もできなくなってしまいました。 お時間がよろしければ、インストールした直後からオリジナルのサーバとデータベースを作成して、テーブルの作成あたりまでを解説していただけないでしょうか。

  • SQL serverへの画像の取り込みについて

    環境:vb.net 2008 express    SQL server2005 express 上記の環境でデータベースを作り出した初心者です。 画像ファイル(GIFまたはJPG)をvarbinary(MAX)型で SQLサーバーに保存したいのですが方法まったくがわかりません。 今、SQL側は * Int 型の "ID" という名前の ID フィールド * VarChar 型 の "Description" という名前のフィールド * varbinary 型の "Picture" という名前のフィールド があり、FORM1にこれらとButton1があります。 ボタンを押すと画像のパスを選択し、"Picture"ファイルに登録できればいいと考えています。 参考書を3冊ほど購入して勉強しているのですが、画像の取り込みについての記載がなく完全に足止めになってしまいました。 どうかご教授お願いいたします。 また、参考になるサイトがございましたら教えてください。

  • CSVファイルのバッチまたはVBでの編集

    バッチおよびVBのドがつくほどの初心者です。 環境:Windows7 Pro 下記のような行が数百行ほど記載されているCSVファイル(xyz.csv)があります。 "(桁数不定の変数a)-(1桁の変数b)(1桁の変数c)","yyyymm" これをバッチまたはVBにて (1桁の変数b),(桁数不定の変数a),(1桁の変数c),yyyymm に自動的に変更したいと考えています。 例 "1234567890-12","201409" ↓ 1,1234567890,2,201409 「-」を「,」に変更したり「"」の削除、また桁数が不定でなければ指定の位置に「,」を入れることは出来そうなのですが 桁数が不定ということで、行き詰ってしまいました。 システム上 "(a)-(b)(c)","yyyymm"を "(a)-(b)(c)","(a)-(b)(c)","(a)-(b)(c)","yyyymm" に変更することは出来そうなので、先頭から検索して「-」の個数と位置で指定の文字列を消すという方法もあるのかなと思ったのですが こちらについてもやり方がまったくわからなくお手上げ状態になってしまいました。 (桁数固定なら、こちらで指定の位置だけ削除できればと思っていたのですが……) 上記処理を行えるバッチまたはVBで編集するコマンドをご教示いただければと思います。 ご回答お願いいたします。

  • Excelでバーコードコントロールを使用したい

    Excel2013でバーコードコントロール15.0を使用し セル(A4)に商品名15桁+数量4桁+シリアルNo.8桁(合計27文字)を Code128でバーコードにする必要があります。 例)A1【商品名】ABC01 A2【数量】1個 A3【シリアルNo.】00000001 B1【商品文字数】=LENB(A1) B2【数量桁数】=LENB(A2) B3【シリアル桁数】=LENB(A3) A4【バーコード内容】=A1&REPT(" ",15-B1)&REPT("0",4-B2)&A2&REPT("0",4-B3)&A3  希望の表示はA4のセルで   ABC01 000100000001 上記の空白部分、判り難いとは存じますが、10文字の空白です。 値としては表現できるようですが、バーコードコントロールの プロパティでLinkedCellをA4にしてもバーコードが生成されません。 そもそもの使い方が間違っているのでしょうか? スタートコード、チェックデジット、ストップコード等 http://www.kishugiken.co.jp/reading/barcode/barcode4.html ここで書いている事が、私には理解できずにいます。 ご教授下さいます様、お願い申し上げます。

  • VBでSQL Serverに接続したいのですが

    お世話になります。大変困っているので助けてください。 VB 2008EXPRESS EditionとSQL Server EXPRESS Edition(共に無償)をネットからダウンロードしてインストールしました。 VBからSQL Serverに接続したく以下のようなコードを記述しました。 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click ' 接続文字列を生成する Dim stConnectionString As String = String.Empty stConnectionString = "Server=ABSAN\SQLEXPRESS;Initial Catalog=ABSAN;Integrated Security = SSPI;" ' SqlConnection の新しいインスタンスを生成する (接続文字列を指定) Dim cSqlConnection As New System.Data.SqlClient.SqlConnection(stConnectionString) ' データベース接続を開く cSqlConnection.Open() ' 接続に成功した旨を表示する MessageBox.Show("Microsoft SQL Server に接続されました") ' データベース接続を閉じる (正しくは オブジェクトの破棄を保証する を参照) cSqlConnection.Close() cSqlConnection.Dispose() End Sub 結果として、「SqlEXceptionはハンドルされませんでした」旨のメッセージが帰ってきます。 但し、自分でもData SourceとInitial Catalogの設定のところがこれでいいのかと思っています。 何らかの形で正しい設定をしたいのですが、サーバのインストール時にこのような設定があったように記憶がありません。 また他にも原因があるようでしたら教えてください。 全然わかってないのですが、アクセスするDBファイルはまだ存在しません。 上記コードではとりあえずローカルのサーバに接続するという概念で受け取っていますが、間違っていますでしょうか? 何分急いで下ります。よろしくお願いいたします。