你用的JDBC是否支持中文,试试这样做
String str ="select * from mytable where name='中文'"
String sqlStr = new String(str.getBytes(),"ISO-8859-1");
然后用将下面的字串试试
String str ="select * from mytable where name='中文'"
String sqlStr = new String(str.getBytes(),"ISO-8859-1");
然后用将下面的字串试试
i.e
select * from mytable where name='chinese'
就返回正确
可以将sql语句后面补上同长的空格看看
public static synchronized String zhSql(String s)
{
if(s==null) return "";
int oldStringLen=0;
oldStringLen=s.length();
StringBuffer spaceString = new StringBuffer();
for(int i=0;i<=oldStringLen;i++)
{
spaceString.append(" ");
}
s=s+spaceString.toString ();
return s;
}
sql="SELECT id AS '编号',name AS '姓名',sex AS '性别',address AS '地址' FROM person where sex='男' order by id";
sql=new String(sql.getBytes("ISO8859_1"));
ResultSet rs=mysql.executeQuery(sql);