免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 2521 | 回复: 12
打印 上一主题 下一主题

求助:在字符串中如果想要使用“”号怎么办 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-08-22 20:11 |只看该作者 |倒序浏览
比如我写了一个
String sql="select * from table where name="张三"";
应该不能这么用吧?在字符串中用“”改怎么写?

[ 本帖最后由 liutao_eagle 于 2006-8-22 20:15 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2006-08-22 20:16 |只看该作者

回复 1楼 liutao_eagle 的帖子

我试了一下好象可以用‘’号代替,不知道是否还有其他方法?

论坛徽章:
0
3 [报告]
发表于 2006-08-22 20:20 |只看该作者
可以使用跳脱符\
example:

String string = "INSERT INTO mytable (id,name,age)  VALUES (1,\"Joden\",\"22\")";

[ 本帖最后由 xxjoyjn 于 2006-8-22 20:23 编辑 ]

论坛徽章:
0
4 [报告]
发表于 2006-08-22 20:27 |只看该作者
楼主啊我佩服 好好看看入门的书吧

论坛徽章:
0
5 [报告]
发表于 2006-08-22 20:40 |只看该作者

回复 3楼 xxjoyjn 的帖子

这是转义字符的一种用法吗?

论坛徽章:
0
6 [报告]
发表于 2006-08-22 20:53 |只看该作者
把\"解释为"

论坛徽章:
0
7 [报告]
发表于 2006-08-22 20:58 |只看该作者

回复 3楼 xxjoyjn 的帖子

String sql="select * from table where name=\"张三\"";是这样写吗?
好象不行,Eclipse报错;
贴出我的原代码:
import java.sql.*;

public class JdbcTest {

public static void main(String[] args){

try {
        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver";
    String str="jdbcdbc:liutao";
    String sqlStr="select * from table where name=\"张三\"";
    Connection conn=DriverManager.getConnection(str);
    Statement stm=conn.createStatement();
    ResultSet rs=stm.executeQuery(sqlStr);
    while(rs.next()){
           
                    System.out.println(rs.getString(1));
                        System.out.println(rs.getString(2));
                        System.out.println(rs.getString(3));
                        System.out.println(rs.getString(4));
                    
   
   
    }
} catch (ClassNotFoundException e) {
        // TODO 自动生成 catch 块
        e.printStackTrace();
} catch (SQLException e) {
        // TODO 自动生成 catch 块
        e.printStackTrace();
}


}



}

Eclipse报错:
java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver] 参数不足,期待是 1。
        at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
        at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
        at sun.jdbc.odbc.JdbcOdbc.SQLExecDirect(Unknown Source)
        at sun.jdbc.odbc.JdbcOdbcStatement.execute(Unknown Source)
        at sun.jdbc.odbc.JdbcOdbcStatement.executeQuery(Unknown Source)
        at JdbcTest.main(JdbcTest.java:13)

[ 本帖最后由 liutao_eagle 于 2006-8-22 21:04 编辑 ]

论坛徽章:
0
8 [报告]
发表于 2006-08-22 21:34 |只看该作者
String sql="select * from table where name="张三"";
String sql="select * from table where name='张三'";

论坛徽章:
0
9 [报告]
发表于 2006-08-22 23:03 |只看该作者
.......
似乎楼主不仅要补习一下java基础,还得补习一下sql基础了,

頑張れ!!!!

论坛徽章:
0
10 [报告]
发表于 2006-08-23 11:50 |只看该作者

回复 9楼 lemonboy 的帖子

这和sql语句没关系,我用String sql="select * from table where name='张三'"就可以执行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP