免责声明

易百易数码科技

android 访问mysql数据库_函数如何访问MySQL数据库?

在Android中,可以使用JDBC驱动访问MySQL数据库。首先需要添加MySQL JDBC驱动到项目中,然后使用Connection、Statement和ResultSet等对象进行数据库操作。

在Android中访问MySQL数据库,可以使用以下步骤:

1、添加依赖库

android 访问mysql数据库_函数如何访问MySQL数据库?-图1

在项目的build.gradle文件中添加MySQL Connector/J的依赖库:

dependencies {
    implementation 'mysql:mysqlconnectorjava:8.0.26'
}

2、创建数据库连接工具类

创建一个名为DBHelper的工具类,用于封装数据库连接和操作的方法。

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
public class DBHelper extends SQLiteOpenHelper {
    private static final String DATABASE_NAME = "mydb.db";
    private static final int DATABASE_VERSION = 1;
    private static final String TABLE_NAME = "mytable";
    private static final String COLUMN_ID = "id";
    private static final String COLUMN_NAME = "name";
    private static final String COLUMN_AGE = "age";
    public DBHelper(Context context) {
        super(context, DATABASE_NAME, null, DATABASE_VERSION);
    }
    @Override
    public void onCreate(SQLiteDatabase db) {
        String sql = "CREATE TABLE " + TABLE_NAME + " (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER)";
        db.execSQL(sql);
    }
    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME);
        onCreate(db);
    }
}

3、创建数据库操作接口

创建一个名为MyDatabaseOperation的接口,用于定义访问数据库的方法。

public interface MyDatabaseOperation {
    void insertData(String name, int age);
    void updateData(int id, String name, int age);
    void deleteData(int id);
    void queryAllData();
}

4、实现数据库操作接口

创建一个名为MyDatabaseImpl的类,实现MyDatabaseOperation接口,在这个类中,我们将使用DBHelper工具类来操作数据库。

android 访问mysql数据库_函数如何访问MySQL数据库?-图2
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.util.Log;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.List;
public class MyDatabaseImpl implements MyDatabaseOperation {
    private DBHelper dbHelper;
    private SQLiteDatabase db;
    private List<String> dataList = new ArrayList<>(); // 存储查询到的数据列表
    private static final String TAG = "MyDatabaseImpl"; // 日志标签名
    private static final String DB_PATH = "/data/data/com.example.myapplication/databases/"; // 数据库文件路径(需要根据实际情况修改)
    private static final String DB_NAME = "mydb"; // 数据库名称(需要根据实际情况修改)
    private static final int DB_VERSION = 1; // 数据库版本号(需要根据实际情况修改)
    private static final String DB_FILE = DB_PATH + DB_NAME + "." + DB_VERSION; // 数据库文件路径(需要根据实际情况修改)
    private static final String DB_TABLE = "mytable"; // 数据库表名(需要根据实际情况修改)
    private static final String[] ALL_COLUMNS = {"id", "name", "age"}; // 所有列名(需要根据实际情况修改)
    private static final String[] PROJECTION = {"id AS _id", "name", "age"}; // 查询结果投影(需要根据实际情况修改)
    private static final String SORT_ORDER = "id ASC"; // 排序规则(需要根据实际情况修改)
    private static final int STARRED = 1; // SQL语句中的通配符,表示匹配任意字符出现0次或多次(需要根据实际情况修改)
    private static final int DOTTED = 1; // SQL语句中的通配符,表示匹配任意字符出现一次(需要根据实际情况修改)
    private static final int EMPTY = 1; // SQL语句中的通配符,表示占位符(需要根据实际情况修改)
    private static final int NOT_NULLABLE = 0; // SQL语句中的约束条件,表示非空(需要根据实际情况修改)
    private static final int NULLABLE = 1; // SQL语句中的约束条件,表示可空(需要根据实际情况修改)
    private static final int ASCENDING = 1; // SQL语句中的排序规则,表示升序(需要根据实际情况修改)
    private static final int DESCENDING = 2; // SQL语句中的排序规则,表示降序(需要根据实际情况修改)
    private static final int NOT_EQUALS = 0; // SQL语句中的比较运算符,表示不等于(需要根据实际情况修改)
    private static final int EQUALS = 1; // SQL语句中的比较运算符,表示等于(需要根据实际情况修改)
    private static final int LESS_THAN = 2; // SQL语句中的比较运算符,表示小于(需要根据实际情况修改)
    private static final int LESS_THAN_OR_EQUALS = 3; // SQL语句中的比较运算符,表示小于等于(需要根据实际情况修改)
    private static final int GREATER_THAN = 4; // SQL语句中的比较运算符,表示大于(需要根据实际情况修改)
    private static final int GREATER_THAN_OR_EQUALS = 5; // SQL语句中的比较运算符,表示大于等于(需要根据实际情况修改)
    private static final int IS_NULL = 6; // SQL语句中的函数,表示判断是否为空(需要根据实际情况修改)
    private static final int ISNOTNULL = 7; // SQL语句中的函数,表示判断是否不为空(需要根据实际情况修改)
    private static final int DIGIT = 8; // SQL语句中的函数,表示提取数字(需要根据实际情况修改)
    private static final int LIKE = 9; // SQL语句中的函数,表示模糊匹配(需要根据实际情况修改)
android 访问mysql数据库_函数如何访问MySQL数据库?-图3
分享:
扫描分享到社交APP
上一篇
下一篇