アプリ版:「スタンプのみでお礼する」機能のリリースについて

Access2000でメモ型を含むテーブルを作成し、VBからアクセスします。
テーブルへの書込みはサイズに関係なく(257バイト以上も)問題なく出来ます。257バイト以上の文字列を書き込んだ後Accessで直接テーブルの内容を確認すると、正常に書き込まれています。
が、257バイト以上の文字列の読み込みを行うと255バイトで切れてしまいます。
テキスト型は255バイトまでで、メモ型は65534バイトまでと思っていたのですが違いますか?
違っているとしたら、60000バイトは必要ありませんが1000文字(2000バイト)くらいは使いたいと思っていますので、フィールドの型と、VBからのアクセスの方法を教えてください。

A 回答 (2件)

ん~、何でしょうねぇ。


手元のVB5 + DAO3.6 + Access2000の環境では正しく取得できてるんですが…

一旦単純にメモ型フィールドを読み取るだけの、最小限のプロジェクトを新規で作ってみたら、どこに問題があるのかが見えてくるかもしれませんね。

ちなみに、Access2000のメモ型は、最大2Gバイトだったはずです。

以下、テストに使用したソースです。

Private Sub Command1_Click()
 Dim db As DAO.Database
 Dim RST As DAO.Recordset
 Dim memo As String
 
 Set db = DAO.OpenDatabase("db5.mdb")
 Set RST = db.OpenRecordset("MEMO", dbOpenDynaset)
 RST.MoveFirst
 memo = RST.Fields![memo]
 Debug.Print memo
End Sub
    • good
    • 0

 ひょっとしてVBの側で定義されている変数の型等に問題はありませんか?


 …自信はありませんが^^;

 

この回答への補足

OpenRecordset を実行した直後に Recordset の中身を直接確認した結果です。VB側の定義は関係ありません。

補足日時:2003/09/21 17:29
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!