我正在尝试建立连接但由于某种原因我遇到了问题。
我认为这可能是语法错误 - 但我不完全确定。我已经注释了我尝试过的众多语法方法。我使用MySQL文档寻求帮助,即使遵循他们的语法我也会遇到问题。
当我在没有连接的情况下运行代码时,程序会跳转到try。但是一旦我添加了连接代码,它就会跳转到代码的catch部分 - 因此语法必定存在问题。
有人可以找出我出错的地方吗?提前谢谢。
public void selectData()
{
try
{
Connection con = null;
//Accessing driver from the JAR file
Class.forName("com.mysql.jdbc.Driver").newInstance();
//Class.forName("com.mysql.jdbc");
//String a = "jdbc:mysql://localhost:3306/c3361434?profileSQL=true";
///String a = "jdbc:mysql://address=(protocol=tcp)(host=localhost)(port=3306)(user=root)(password=root)/c3361434";
//Connection con = DriverManager.getConnection("jdbc:mysql://address=(protocol=tcp)(host=localhost)(port=3306)(user=root)/c3361434");
//Connection con = DriverManager.getConnection("jdbc:mysql://127.0.0.1/c3361434", "root", "root");
//con = DriverManager.getConnection("jdbc:mysql://localhost:3306/c3361434?" + "user=root&password=root");
Output3.setText("Connection has been established");
/*
PreparedStatement statement = con.prepareStatement("SELECT * FROM RSA-data");
ResultSet result = statement.executeQuery();
while(result.next())
{
Output2.setText(result.getString(1));
Output3.setText("in the while loop");
}
*/
}
catch (Exception e)
{
// TODO Auto-generated catch block
e.printStackTrace();
Output4.setText("db fail");
}
}
答案 0 :(得分:0)
试试看:在命令行类型中检查你的mysql是否正在运行:
mysqld --install
在java源代码中:
Class.forName("com.mysql.jdbc.Driver");
DriverManager.getConnection("jdbc:mysql://localhost:3306/yourDB?dontTrackOpenResources=true");
答案 1 :(得分:0)
命令mysql无法识别,因为您需要输入特定路径。 例如:
MS - DOS:
cd C:/MySQL/bin
C:/MySQL/bin>mysqld --install
进入文件夹bin有mysqld.exe
你明白了吗?