255文字以上の扱いについて


 2005-10-20 05:37:33  No: 18190  IP: 192.*.*.*

おはようございます。
現在、D7でCSVからDBへのコンバーターを作っているのですが
255文字以上のINSERTを行おうとするとエラーになってしまいます。

そこで、調べた結果変数自体に値を入れられないみたいなんですが
みなさんは、どういう対処法で、行っているのか教えて頂きたく
思い書き込みさせていただきました。

すいませんが、よろしくお願いいたします。

編集 削除
ヨーダ  2005-10-20 07:56:32  No: 18191  IP: 192.*.*.*

> 255文字以上のINSERTを行おうとするとエラーになってしまいます。

これはD7とは関係ないのでは?
目的のフィールドがchar(255)で宣言されていて、そのエラーが発生する可能性が考えられるはず…。

はずしていますかね?

編集 削除
@っしー  2005-10-20 10:07:10  No: 18192  IP: 192.*.*.*

おそらく、DBのフィールド型の問題でしょう

TEXTのBlob型でもDBのマニュアルで確認されては如何でしょう。

ん?
DBのコンバートということは、DBは既に設計されていているということですよね。他のアプリから同じDB(Table)が使われているときは、型変更にはご注意ください。

編集 削除
 2005-10-23 13:05:38  No: 18193  IP: 192.*.*.*

ヨーダ さん、@っしー さん、お返事ありがとうございます。

ものは、CSV形式になっている掲示板の内容をPHPのSqliteに移行
しようというものなんですが、PHPからは255文字以上書き込めているので
テーブルの形式では無いと思われ。

多分↓のような Query1.SQL.text 自体に、255文字以上いれられないものと思われます。
Query1.sql.text:='INSERT INTO new_bbs('comment') VALUES ('○○ここが255文字以上○○');';

また、試しに

memo1.text:='○○ここが255文字以上○○';

な感じにしてもエラーになってしまいます。

何が悪いか検討がつかないため是非ご指導おねがいいたします。

編集 削除
ヨーダ  2005-10-23 18:17:04  No: 18194  IP: 192.*.*.*

> Query1.sql.text:='INSERT INTO new_bbs('comment') VALUES ('○○ここが255文字以上○○');';

確かにその場合は255文字がリミットになりますが、適当にクエリーを空白かなんかで区切って、Query1.sql.Add('query');の形で入れてやればOKですよ。

編集 削除