Специальные символы с использованием jdbc.gupta.sqlbase.SqlbaseDriverAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Специальные символы с использованием jdbc.gupta.sqlbase.SqlbaseDriver

Сообщение Anonymous »

Я разрабатываю Android-приложение для отображения данных из базы данных SQLBASE.
Мы не можем передавать тексты со специальными символами: команда

Код: Выделить всё

daten.Bezeichnung = rs.getString("bezeichnung1");
результат

Код: Выделить всё

daten.Bezeichnung
содержит текст с поврежденными символами:
"Теперь впоследствии изменено BT10", тогда как правильный текст - "Теперь впоследствии изменено BT10"
Программа:

Код: Выделить всё

try {
Class.forName("jdbc.gupta.sqlbase.SqlbaseDriver");
} catch (ClassNotFoundException e) {
Log.e(TAG, "ODBC driver load failed!");
}

// 1. tit_umbuchung lesen
String sql = "SELECT titel_nr, bezeichnung1, isbn, loesch_datum "
+ "FROM sysadm.titel "
+ "WHERE mandant = "+config.CONFIG_MANDANT+" and ( isbn = '"+ barcode +"' or ean_nr = '"+barcode+"' or titel_nr like '"+barcode+"')";

try (Connection conn = DriverManager.getConnection(config.getConnectionURL(), config.CONFIG_USER, config.CONFIG_PASSWORD);
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery()) {

if (rs.next()) {
TitelDaten daten = new TitelDaten();
daten.TitelNr = rs.getString("titel_nr");
daten.Bezeichnung = rs.getString("bezeichnung1");
daten.Isbn = rs.getString("isbn");
daten.Deaktiviert = rs.getDate("loesch_datum");

// Basislager
String basis_lager = "";
sql = "SELECT tit_lager_basis "
+ "FROM sysadm.firm_stamm "
+ "WHERE mandant = "+config.CONFIG_MANDANT;
try {
PreparedStatement ps0 = conn.prepareStatement(sql);
ResultSet rs0 = ps0.executeQuery();

if (rs0.next()) {
basis_lager = rs0.getString("tit_lager_basis");
}
if (basis_lager.isEmpty()) {
basis_lager = "LA0001";
}
}catch (Exception e){
Log.e(TAG, "SQL: " + e.getMessage());
}
Можно ли получить доступ к данным в SQLBASE, содержащим специальные символы?
Как получить доступ к SQLBASE в Android с помощью специальных символов?

Подробнее здесь: https://stackoverflow.com/questions/787 ... basedriver
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»