2012-01-17 9 views
0

休止中の.doc履歴書を格納することはできませんよ。insert into data_files (file_content, file_name, doc_title, resume_text, title, title_id, file_type) values (?, ?, ?, ?, ?, ?, ?)私は、MySQLデータベース

エラー:DATA_FILESテーブルの履歴書を格納しながら、私は上記のエラーを取得しています

org.springframework.jdbc.UncategorizedSQLException: Hibernate operation: could not insert: [com.dckap.intranet.dto.FileUpload]; uncategorized SQLException for SQL [insert into data_files (file_content, file_name, doc_title, resume_text, title, title_id, file_type) values (?, ?, ?, ?, ?, ?, ?)]; SQL state [HY000]; error code [1366]; Incorrect string value: '\xE2\x96\xAA Re...' for column 'resume_text' at row 1; nested exception is java.sql.SQLException: Incorrect string value: '\xE2\x96\xAA Re...' for column 'resume_text' at row 1 

  1. この問題は、mochaホストでホストされているライブDBでのみ発生します。
  2. がローカルマシンで同じ履歴書

に問題がないデータ型は、DBの両方のテーブルにすべて同じです。

どうすればいいのですか?

答えて

2

varcharまたはCLOB列にバイナリ文書を格納しているようです。バイナリデータを格納するには、バイナリ形式を使用します。

+0

なぜローカルデータベースで動作するのですか? – Meenakshi

+0

もう1つは、テキスト検索を再開するために 'テキスト'を使用することです。そのリクエストは影響を受けます – Meenakshi

+0

おそらく、ローカルデータベースは別のcharエンコーディングを使用します。 –

0

私は、この特定の形式をサポートしていない列にファイルを保存するという事実に関連していると思います。例外による問題のあるcharは 'bullet'です。InnoDBのエンコーディング設定を確認してください。ファイルシステムにファイル自体とそのパスをDBに格納する方が良い考えです(IMO)。 thisスレッドに関連する可能性があります。 幸運!

+0

なぜそれはローカルデータベースで動作するのですか? - – Meenakshi

+0

は、InnoDBエンジンの設定(エンコーディング)に違いがある可能性があるためです。しかし、私はあなたがもっと重要な部分を欠いていたと思います。ファイルパスではなくDBにファイルパスを保存してください。 – aviad

関連する問題