私は以下の疑問を持っています:何らかの形で条件付き3進演算子を文字列連結に使用できますか?私はこのような何かをしようとしています条件付き三項演算子を文字列連結に使用できますか?
は:
String sql = "insert into TirConsolidatoPolizzaFondo "
+ "(Polizzaid, FondoID, isQuadraturaOk, ReteVendita, CodiceConferimento, PercentualeRendimentoDaInizioGestione, "
+ "DataInizioGestione, PercentualeRendimentoDaInizioAnno, DataInizioAnno, PercentualeRendimentoDaInizioTrimestre, "
+ "DataInizioTrimestre, DataCalcoloBF, ValoreNavBF, DataRiferimentoNavBF, ControvaloreFinaleBF, ValoreNavPUC, "
+ "DataRiferimentoNavPUC, ControvaloreFinalePUC, NumeroQuotePUC, DeltaControvaloreFinale, TIMESTAMP, "
+ "DataValutaUltimaOperazione, MsgPercentualeRendimentoDaInizioAnno, MsgPercentualeRendimentoDaInizioGestione, "
+ "MsgPercentualeRendimentoDaInizioTrimestre, isTirAnomalo, CodiceLineaBF) "
+ "values"
+ "(" +
qsTirPF.getPolizzaid() != null ? qsTirPF.getPolizzaid() : "null";
最初の文字列のトランクに私がして評価値を連結することを意味している:
qsTirPF.getPolizzaid() != null ? qsTirPF.getPolizzaid() : "null";
が、Eclipseは私にこのエラーに署名:
Type mismatch: cannot convert from Object&Comparable<?>&Serializable to String
なぜですか?なにが問題ですか?この問題を解決するにはどうすればよいですか?
三項式のまわりにカッコを入れてみましたか? '... +(qsTirPF.getPolizzaid()!= null?qsTirPF.getPolizzaid():" null ");' –
また、SQLクエリ引数を提供するために文字列連結を使用したいですか?通常、Bobby Tablesを避けるための好ましい方法は、PreparedStatementを使用し、その 'setXYZ'メソッドを使うことです。 – Pshemo
メモとして、これは2016です。潜在的なSQLインジェクションを避けるために、あなた自身に好意を持ち、準備された文を使用してください –