2011-08-02 59 views
2

我是jdbc和android的新手。所以如果這個問題看起來很愚蠢,請原諒我。
我正試圖從應用程序連接到MySql數據庫。
我通過JDBC教程去了,寫了下面的代碼:
在Android的jdbc問題 - 無法連接到數據庫


public static void connectToServer() 
{
Connection conn = null;
try
{
//Connect to the database String userName = "********"; String password = "********"; String url = "jdbc:mysql://my.domain.name/myDBname"; Class.forName ("com.mysql.jdbc.Driver").newInstance(); conn = DriverManager.getConnection (url, userName, password); Log.e(tag,"Database connection established"); // Query the database Statement s = conn.createStatement(); String query = "INSERT INTO myTableName (A,B,C)" + "VALUES ('a','b','c')"); Log.e(tag,query); s.executeQuery (query); s.close(); } catch (Exception e) { Log.e(tag,"Database Connection Failed"); Log.e(tag,e.getMessage()); } finally { if (conn != null) { try { conn.close(); Log.e(tag,"Database connection terminated"); } catch (Exception e) { /* ignore close errors */ } } } }


我的清單代碼:
< uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
< uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />

的logcat的是:
....
Database connection terminated //my output
com.mysql.jdbc.Driver // output from exception e.getMessage()

我在做什麼錯誤?
從java應用程序和android應用程序連接有區別嗎?

編輯:新增清單權限

回答

3

確保您請求在您的清單上網權限。

編輯:爲此,請將<uses-permission android:name="android.permission.INTERNET" />添加到您的清單。

剛發現this鏈接。不知道這是否可以輕鬆完成。

還有其他的東西可以看看是CouchDB。它基於REST,所以你不需要圍繞MySQL DB建立一個PHP服務 - 它純粹是REST。

+0

請檢查我添加的權限是否足夠。 – Brahadeesh

+0

艙單代碼爲空 – Jack

+0

對不起。現在檢查 – Brahadeesh

0

我知道這對一些人有用。確保使用JDBC連接器mysql-connector-java-3.0.17-ga-bin.jar。谷歌爲它。

+0

我有mysql-connector-java-5.1.17裏面eclipse文件夾。這可以嗎?如果它的位置錯誤,我應該在哪裏?另外我猜jdbc驅動程序帶有jdk1.7.0 jre7軟件包。那麼我是否也需要分開安裝驅動程序? – Brahadeesh

+0

你把它作爲外部的jar添加了嗎? –

+0

不可以請告訴我該怎麼做? – Brahadeesh

0

爲什麼不花一些時間學習android.database.sqlite呢?恕我直言,這將是值得的,從長遠來看。

祝你好運。

+0

我試圖將它存儲在手機之外,以便任何具有憑證的人都可以訪問它。不過謝謝你的建議。 – Brahadeesh

相關問題