1
我想用JDBC驅動程序將字符串(它包含保加利亞字符,如下所示'КИПЕПСИ')插入到MySQL數據庫中如何使用com.mysql.jdbc.Driver將保加利亞字符字符串插入到MySQL數據庫中「
這裏如下如何我想插入的代碼片段
String DB_URL = "jdbc:mysql://myurl.amazonaws.com/mydatabase?useUnicode=true&characterEncoding=Cp1251";
static final String USER = "username";
static final String PASS = "mypassword";
Connection conn = DriverManager.getConnection(DB_URL, USER, PASS);
String SQL = "INSERT INTO tmptab(city) VALUES('КИ ПЕПСИ')";
Statement stmt = conn.createStatement();
stmt.executeUpdate(SQL);
是的DDL表tmptab如下:
create table tmptab (city varchar(255) COLLATE cp1251_bulgarian_ci DEFAULT NULL) DEFAULT CHARSET=cp1251 COLLATE=cp1251_bulgarian_ci;
但是,當我看到在T值他的數據庫如下:
城市'? ?????」
我不知道我在這裏做了什麼錯誤。我只是假設它與字符集編碼有關。如果有任何幫助可以提供,我將不勝感激。
我還想提一點,當我將數據插入本地系統時,它會正確插入。但是,當我嘗試插入MySQL數據庫運行到亞馬遜雲我沒有得到適當的值插入。我只看到???????。
你在哪裏看到這些?在Java中,在MySQL控制檯...? – Jan
當我在mysql workbench中運行select * from tmptab時,我看到了????。如果我在java控制檯中打印,我也可以在java控制檯上看到相同的(????)。 –
如果我在java控制檯上打印SQL語句如下System.out.println(SQL),我看到以下文本:INSERT INTO tmptab(city)VALUES('?? ?????') –