String sql = null;
sql = "select * from my.txt where name='张三'";
-------------------
晕倒。
不可以直接写成?
String sql = "select * from my.txt where name='张三'";

解决方案 »

  1.   

    junyi2003(超级菜鸟),哈哈,我刚学,比你还菜,不过不是这样的问题,好像sql不支持where语句啊?????
    我的程序改成如下格式,就可以运行,得到结果,晕倒,怎么样才能执行????????????????????????????????????????????????????????????????????
    import java.sql.*; 
    import java.io.*; 
    public class showdb { 
    public static void main (String args[]) {
    String sql = null;
    //sql = "select * from my.txt where ÐÕÃû='ÕÅÈý'";
    try { 
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
    Connection con = DriverManager.getConnection("jdbc:odbc:myd", "", ""); 
    Statement stmt = con.createStatement();
    ResultSet resultSet=stmt.executeQuery("select count(*) from my.txt");
    resultSet.next();
    int rowcount=resultSet.getInt(1);
    System.out.println(rowcount);
    //ResultSet rset = stmt.executeQuery("select * from my.txt where ÐÕÃû='ÕÅÈý'"); //while (rset.next()){ 
    // System.out.println (rset.getString(1)); 
    // System.out.println (rset.getString(2)); 
    // System.out.println (rset.getString(3)); 
    //} 
    con.close(); 
    } catch (Exception e) { 
    e.printStackTrace(); 


    }
      

  2.   

    也就是说:
    这样的不能执行 String sql = "select * from my.txt where name='张三'";
    这样的能执行 String sql = "select count(*) from my.txt";
    为什么啊???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
      

  3.   

    如果使用的工具不是本文的JavaTM 2 SDK, Standard Edition, v 1.3,处理中文可能会有问题。但将字段名称和数据库内容全部改为英文即可练习。 
    其实是连接的字符编码有问题的
    我现在也有这样的问题 如果where部分有中文的话就查询出空集
    可以参考setbytes来解决而不要用setxxx
      

  4.   

    不是,我试过了, where name = 'aa' 也出现这样的错误.