java的jdbc怎么实现使用有where的select函数?

代码为

String sql = "select * from lottery , userandlottery , users where lottery.Lotteryid=userandlottery.Lotteryid and userandlottery.nickname = users.nickname and users.nickname = " ;
java.sql.Statement statement = conn.createStatement();
java.sql.ResultSet rsResultset = statement.executeQuery(sql +  name ) ;

其中name表示要查询的关键字名字,如果这样写而且name设置为tom会报错如下所示:

数据库访问有问题 java.sql.SQLSyntaxErrorException: Unknown column 'tom' in 'where clause'

各位们!!感谢

你可以打印一下 sql + name 这个字符串看长什么样,

这是字符串拼接模式,tom作为一个字符串,在sql中要用单引号引起来,
所以你拼sql的时候,name前后都要拼一个单引号的字符串;

但是,一般建议用绑定变量的方式,因为这种拼字符串的方式容易被sql注入攻击