» »

Java - Problem zarad šumnikov pri SQL

Java - Problem zarad šumnikov pri SQL

c0dehunter ::

V bazi podatkov imam polje tipa String, ki pa vsebuje šumnik. V program ga potegnem z executeQuery("SELECT ekipa FROM ekipe"); in shranim rezultate v ResultSet. Problem je sedaj z tistim šumnikom, saj v programu namesto šumnika izpiše ?. Kak bi lah to rešu?
I do not agree with what you have to say,
but I'll defend to the death your right to say it.

c0dehunter ::

Anybody here?
I do not agree with what you have to say,
but I'll defend to the death your right to say it.

DavidJ ::

Težava je v kodiranju -- lahko na več koncih:
- v bazi
- v JVM
- tam kjer izpisuješ na ekran (datoteka, konzola, jsp (če slednje, je važno še kodiranje na Java containerju in v JSP dokumentu))

Vsa kodiranja morajo biti enaka in podpirati šumnike. Drugače se da zelo hitro in grdo zabluzit.

Je pa zelo naporno in neprijetno, ker je material težko najdit, te povsem razumem. :)
"Do, or do not. There is no 'try'. "
- Yoda ('The Empire Strikes Back')

overlord_tm ::

probaj z

SET NAMES 'utf8'


queryem na zacetku.

c0dehunter ::

Hvala obema, bom poskušal najprej z tem SET NAMES queryem, drugače se pa sistematično lotit pregledovanja za locales v BP, ker sklepam da je tam problem.
I do not agree with what you have to say,
but I'll defend to the death your right to say it.

DiTi ::

v bazi moraš imeti utf8_slovenian_ci, html dokument mora imeti meta oznako
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

v glavi dokumenta še request.setCharacterEncoding("utf-8"); (takoj za povezavo z bazo, torej
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection conn=DriverManager.getConnection(pov_baza);
request.setCharacterEncoding("utf-8");

ter pri vnostnih poljih oz. pri formi še rabiš tole: accept-charset="UTF-8" dati sploh shrani pravilno v bazo
primer:
<form action="prijava.jsp" method="post" accept-charset="UTF-8">
<input type="text" class="vnos1" name="uporabnik" value="Uporabniško ime" onBlur="if(this.value=='') this.value='Uporabniško ime';" onFocus="if(this.value=='Uporabniško ime') this.value='';"/>


to je za jsp, za program v javi pa nimam primera. mislim da je vse enako razen forme ter html taga.

Zgodovina sprememb…

  • spremenil: DiTi ()


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[php] encoding niza

Oddelek: Izdelava spletišč
173790 (1705) BivšiUser2
»

Šumniki v php-ju

Oddelek: Izdelava spletišč
214747 (3250) JoSmo
»

MSSQL UTF-8 in šumniki

Oddelek: Programiranje
122035 (1786) biasko
»

[PHP] charter set windows-1250

Oddelek: Programiranje
282812 (2812) Blisk
»

MySQL in czs

Oddelek: Izdelava spletišč
423601 (2691) krho

Več podobnih tem