- PR -

ExcelデータのDB取り込み処理について

投稿者投稿内容
きくちゃん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 854
お住まい・勤務地: 都内某所
投稿日時: 2004-09-19 00:14
真空牙さん、こんばんは。

済みません、他の方の投稿にあるような、Excelファイルの内容を読みとってDBに書き込む...という処理とは違いますよね? ファイルをそのまま、DBに放り込んでるんですよね?

引用:

とエラーがでています。byte変換した際に何か破損がおきているのかな?と思ってみたりもしているのですが。


仮に、データの内容が破損して二度と開けないファイルになってしまったとしても、バイト配列はバイト配列ですから、書き込みに支障を来す筈はありませんよね?

最初の投稿では、書き込む先のDBが何なのかが明らかではなかったのですが、前回の投稿にあった例外の内容を見ると、DBはMySQLとかいうやつなんですよね? このDBって、特にLOBの扱いに関する実績はあるんでしょうか。そっち方面も調べてみて下さい。
また、接続には Data Provider for ODBC を使用されているようですが、ODBC ドライバの方も疑ってみた方がよいかも知れません。
真空牙
会議室デビュー日: 2004/09/01
投稿数: 9
投稿日時: 2004-09-19 01:06
回答ありがとうございます。

はぃ、記述し忘れておりました。
DBはMySQL、ODBC接続です。

引用:
--------------------------------------------------------------------------------
Excelファイルの内容を読みとってDBに書き込む...という処理とは違いますよね?
--------------------------------------------------------------------------------
えーっと・・・サーバにフォルダを作ってそこに保存させたくないので
あとで取り出してまたExcelを出力するように、ダイレクトにDBに保存。となります。
中身を保存ではなく、オブジェクト自体を保存?といった形にしたいのです。

引用:
--------------------------------------------------------------------------------
特にLOBの扱いに関する実績はあるんでしょうか。そっち方面も調べてみて下さい。
--------------------------------------------------------------------------------

色々調べた結果になりますが、答えは「可能」ということらしいです。

引用:
--------------------------------------------------------------------------------
未記入さんの書き込み (2004-09-18 14:32) より:

これはMSの仕様ですので、回避策はありません。データソースとしてはExcel
ではなく、Accessを使うべきです。Accessならこの問題はありません。
--------------------------------------------------------------------------------

システムのユーザーはExcel主体の運用です。Accessにはできません。。
また、多数派問題というのがありますが、極端なシンプル増幅データを
作ってアップ処理のテストをしています。「a」と言う文字を縦横ずらずらと
伸ばしていきならがらという感じです。

また取り込めるデータにはセルの結合やら、オブジェクトが張り付いていたりと
中身がごちゃごちゃものもあれば、取り込めないデータはひたすら文章が
打ってあるものもあります。

いったいこの違いは何なのか・・・。
きくちゃん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 854
お住まい・勤務地: 都内某所
投稿日時: 2004-09-21 09:09
真空牙さん、お早うございます。

引用:

色々調べた結果になりますが、答えは「可能」ということらしいです。


なんというか、この、「可能」という表現がまた、微妙ですねぇ。

取り合えず、
1)同じDBに別の手段(JAVAでも旧来のVBでも)で同様の事を試してみる。
2)別のDBに同じデータ・プロバイダを使って同様の事を試してみる。
3)別のDBに別のデータ・プロバイダを使って同様の事を試してみる。
等々を行う事によって、問題の切り分けが出来ると思います。

いずれの場合もNGなのであれば、DB関係はシロってことになりますよね。

ところで、念のために伺いますが、DB側のカラム、ODBCCommand のパラメータ共に、データ型の指定は間違いありませんよね。
真空牙
会議室デビュー日: 2004/09/01
投稿数: 9
投稿日時: 2004-09-22 15:28
きくちゃん、お世話になります。
引用:
--------------------------------------------------------------------------------
ところで、念のために伺いますが、DB側のカラム、ODBCCommand のパラメータ共に、データ型の指定は間違いありませんよね。
--------------------------------------------------------------------------------

よくよく調べてみたところ・・・テーブルのの項目の型が、blob型で設定されていました。
(テーブルの作成は他担当が行なっていたもので・・・)これではMAX値があまりにも小さい。
同じ型の対応容量の大きいlongblob型に変えたらうまくいきました。

お騒がせしました(汗

スキルアップ/キャリアアップ(JOB@IT)