當前位置:首頁 » 安卓系統 » android資料庫MYSQL

android資料庫MYSQL

發布時間: 2023-08-16 08:05:50

1. android怎麼鏈接資料庫mysql

有點多請耐心看完。
希望能幫助你,還請及時採納謝謝。
一.前言

android連接資料庫的方式有兩種,第一種是通過連接伺服器,再由伺服器讀取資料庫來實現數據的增刪改查,這也是我們常用的方式。第二種方式是android直接連接資料庫,這種方式非常耗手機內存,而且容易被反編譯造成安全隱患,所以在實際項目中不推薦使用。

二.准備工作

1.載入外部jar包

在Android工程中要使用jdbc的話,要導入jdbc的外部jar包,因為在java的jdk中並沒有jdbc的api,我使用的jar包是mysql-connector-java-5.1.18-bin.jar包,網路上有使用mysql-connector-java-5.1.18-bin.jar包的,自己去用的時候發現不兼容,所以下載了比較新版本的,jar包可以去官網下載,也可以去網路,有很多前人們上傳的。

2.導入jar包的方式

方式一:

可以在項目的build.gradle文件中直接添加如下語句導入

compile files('libs/mysql-connector-java-5.1.18-bin.jar')
方式二:下載jar包復制到項目的libs目錄下,然後右鍵復制過來的jar包Add as libs

三.建立資料庫連接

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_jdbc);
new Thread(runnable).start();
}

Handler myHandler=new Handler(){

public void handleMessage(Message msg) {
// TODO Auto-generated method stub
super.handleMessage(msg);
Bundle data=new Bundle();
data=msg.getData();

//System.out.println("id:"+data.get("id").toString()); //輸出第n行,列名為「id」的值
Log.e("TAG","id:"+data.get("id").toString());
TextView tv= (TextView) findViewById(R.id.jdbc);

//System.out.println("content:"+data.get("content").toString());
}
};

Runnable runnable=new Runnable() {
private Connection con = null;

@Override
public void run() {
// TODO Auto-generated method stub
try {
Class.forName("com.mysql.jdbc.Driver");
//引用代碼此處需要修改,address為數據IP,Port為埠號,DBName為數據名稱,UserName為資料庫登錄賬戶,Password為資料庫登錄密碼
con =
//DriverManager.getConnection("jdbc:mysql://192.168.1.202:3306/b2b", "root", "");
DriverManager.getConnection("jdbc:mysql://http://192.168.1.100/phpmyadmin/index.php:8086/b2b",
UserName,Password);

} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

try {
testConnection(con); //測試資料庫連接
} catch (java.sql.SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

public void testConnection(Connection con1) throws java.sql.SQLException {
try {
String sql = "select * from ecs_users"; //查詢表名為「oner_alarm」的所有內容
Statement stmt = con1.createStatement(); //創建Statement
ResultSet rs = stmt.executeQuery(sql); //ResultSet類似Cursor

//<code>ResultSet</code>最初指向第一行
Bundle bundle=new Bundle();
while (rs.next()) {
bundle.clear();
bundle.putString("id",rs.getString("userid"));
//bundle.putString("content",rs.getString("content"));
Message msg=new Message();
msg.setData(bundle);
myHandler.sendMessage(msg);
}

rs.close();
stmt.close();
} catch (SQLException e) {

} finally {
if (con1 != null)
try {
con1.close();
} catch (SQLException e) {}
}
}
};

注意:

在Android4.0之後,不允許在主線程中進行比較耗時的操作(連接資料庫就屬於比較耗時的操作),需要開一個新的線程來處理這種耗時的操作,沒新線程時,一直就是程序直接退出,開了一個新線程處理直接,就沒問題了。

當然,連接資料庫是需要網路的,千萬別忘了添加訪問網路許可權:

<uses-permission android:name=」android.permission.INTERNET」/>

四.bug點

1.導入的jar包一定要正確

2.連接資料庫一定要開啟新線程

3.資料庫的IP一定要是可以ping通的,區域網地址手機是訪問不了的

4.資料庫所在的伺服器是否開了防火牆,阻止了訪問
————————————————
版權聲明:本文為CSDN博主「shuaiyou_comon」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/shuaiyou_comon/article/details/75647355

2. Android 開發。。。如何連接到伺服器上的mysql資料庫

1、首先輸入代碼

public void SendByHttpClient(final String id, final String pw){

new Thread(new Runnable() {

@Override

public void run() {

try {

HttpClient httpclient=new DefaultHttpClient();

HttpPost httpPost=new HttpPost("http://web應用部署伺服器上的IP地址:/HttpClientDemo/Login");//伺服器地址,指向Servlet

List<NameValuePair> params=new ArrayList<NameValuePair>();//將id和pw裝入list

params.add(new BasicNameValuePair("ID",id));

params.add(new BasicNameValuePair("PW",pw));

final UrlEncodedFormEntity entity=new UrlEncodedFormEntity(params,"utf-8");//以UTF-8格式發送

httpPost.setEntity(entity);

HttpResponse httpResponse= httpclient.execute(httpPost);

if(httpResponse.getStatusLine().getStatusCode()==200)//在200毫秒之內接收到返回值

3. Android 開發。。。如何連接到伺服器上的mysql資料庫

1、打開Tableau軟體。

4. 移動端開發(iOS,安卓)資料庫用MySQL或是sqlserver優缺點

不管是移動端開發,還是PC端開發,其實都有用mysql還是顫蠢sqlserver這樣的選擇,今天就把我的觀點給大家分享下:

1.Sqlserver和MySQL都是關系型資料庫,在整體功能上差異不算太大,都支持表、視圖、函數、存儲過程。

2.就部署平台來收,sqlserver是微軟出品,很顯然他必須部署在windows系統上,而mysql既可以部署在windows系統上,也可以部署在linux系統上,就這點來說mysql優勢更明顯。

3.就使用成本來說,mysql目前開發使用費用很小,而sqlserver作為微軟的產品,應用與商業的話必須購買,而且價格也不菲。因此這點上mysql仍然占據優勢。

4.mysql短小精悍,學習上容易上手,操作相對簡單,sqlserver作為一個大型的資料庫系統,上手稍微復雜些,但有功能超強的圖形界面工具進行操作。目前mysql多應用與一些網站系統,即web頁面要求響應速度較蠢洞尺快的系統中。sqlserver多應用於一些行業領域信息化系統中。

5.mysql的性能是相當出色的,但穩定性不如sqlserver好,而且sqlserver有很強大的備份恢復機制,對數據的完整性,容錯性有較大的優勢。sqlserver可以很方便的整帶高庫分離和附加,還有可以定製維護計劃以及詳細的日誌信息。

因此,這兩種資料庫系統應該說各有優劣,可根據具體開發應用場景進行選擇。

移動端開發(iOS,安卓)的話建議服務端用mysql了,部署在Linux環境,穩定性更強。

熱點內容
滑板鞋腳本視頻 發布:2025-02-02 09:48:54 瀏覽:433
群暉怎麼玩安卓模擬器 發布:2025-02-02 09:45:23 瀏覽:557
三星安卓12彩蛋怎麼玩 發布:2025-02-02 09:44:39 瀏覽:743
電腦顯示連接伺服器錯誤 發布:2025-02-02 09:24:10 瀏覽:537
瑞芯微開發板編譯 發布:2025-02-02 09:22:54 瀏覽:146
linux虛擬機用gcc編譯時顯示錯誤 發布:2025-02-02 09:14:01 瀏覽:240
java駝峰 發布:2025-02-02 09:13:26 瀏覽:652
魔獸腳本怎麼用 發布:2025-02-02 09:10:28 瀏覽:538
linuxadobe 發布:2025-02-02 09:09:43 瀏覽:212
sql2000資料庫連接 發布:2025-02-02 09:09:43 瀏覽:726