2017-07-10 16 views
1

3番目の質問にのみ出てくるアンケートの10個の質問を印刷し、停止してこのエラーを表示します。原因は何か?org.postgresql.util.PSQLException:終了していない文字列リテラル

org.postgresql.util.PSQLExceptionは:非終端文字列リテラルはdomandarispostaからSQL SELECT *に位置150で開始WHERE domandachiusa = '鳩のsi trova L'エストニア?' AND insegnamento = 'geografia' AND dataprova = '12 -12-12 'AND docente =' Buffon '

+1

"l'Estonia"のアポストロフィは文字列を破っています。あなたはそれをエスケープする必要があります。 –

答えて

2

「エストニア?私は確かに言うことはできませんが、それは値のアポストロフィのように見えます。

変数付きのPreparedStatementを使用することをお勧めします。変数の値は、アポストロフィやその他の句読点をチェックする必要はありません。 BTWは、句読点付きの値を提供することは、SQLインジェクション攻撃を開始する手段です。

関連する問題