
import java.sql.*;

public class MySQLBug
{
    public static void main(String[] args)
			throws Exception
	{
		if (args.length!=2)
		{
			System.out.println("Usage: java MySQLBug driver url");
			System.exit(1);
		}

		DriverManager.registerDriver((Driver)Class
				.forName(args[0]).newInstance());
		Connection connection=DriverManager.getConnection(args[1]);

		PreparedStatement statement;

		statement=connection.prepareStatement(
				"SELECT COUNT(a.f_a) FROM t_a a, t_b b "+
				"WHERE a.f_a>=1050003600000 AND a.f_a=1050003600000");
		executeQuery(statement);

		statement=connection.prepareStatement(
				"SELECT COUNT(a.f_a) FROM t_a a, t_b b "+
				"WHERE a.f_a>=1050003600000 AND a.f_a=?");
		statement.setLong(1, 1050003600000l);
		executeQuery(statement);

		statement=connection.prepareStatement(
				"SELECT COUNT(a.f_a) FROM t_a a "+
				"WHERE a.f_a>=1050003600000 AND a.f_a=1050003600000");
		executeQuery(statement);

		statement=connection.prepareStatement(
				"SELECT COUNT(a.f_a) FROM t_a a "+
				"WHERE a.f_a>=1050003600000 AND a.f_a=?");
		statement.setLong(1, 1050003600000l);
		executeQuery(statement);
	}

	private static void executeQuery(PreparedStatement statement)
			throws SQLException
	{
		ResultSet rs;
		rs=statement.executeQuery();
		while (rs.next())
			System.out.println(rs.getLong(1));
		rs.close(); statement.close();
	}
}