SQLiteStudio创建数据库见
Android复制数据库见
Android Studio添加SQLiteStudio数据库-CSDN博客
1.创建一个MySQLDatabase类
2.主要程序
import static android.content.Context.MODE_PRIVATE;
import android.annotation.SuppressLint;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;
import java.util.ArrayList;
import java.util.concurrent.atomic.AtomicReference;
public class MySQLDatabase {
DatabaseHelper mOpenHeiper;
static final String Database_name = "newebook.db";
static final int Database_Version = 1;
static final String TABLE_NAME = "shenxiao";
static final String ID = "ID";
static final String NAME = "name";
static final String INFO = "info";
SQLiteDatabase db;
Context context;
private static class DatabaseHelper extends SQLiteOpenHelper{
DatabaseHelper(Context context)
{
super(context,Database_name,null,Database_Version);
}
@Override
public void onCreate(SQLiteDatabase db) {}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {}
}
public void onCreate(Context c) {
// 将传入的Context对象赋值给成员变量context,以便在类的其他方法中使用。
context = c;
// 定义SQLite数据库的打开模式为MODE_PRIVATE,表示该数据库是私有的,只能被创建它的应用访问。
int mode = MODE_PRIVATE;
try {
// 调用Context的openOrCreateDatabase方法创建或打开一个名为Database_name的数据库。
// 第二个参数指定了数据库打开模式(MODE_PRIVATE),第三个参数通常设置为null,表示不使用自定义的SQLiteDatabase.CursorFactory。
db = context.openOrCreateDatabase(Database_name, mode, null);
// 如果数据库成功创建或打开,db对象现在包含了该数据库的引用。
} catch (SQLException e) {
// 如果在创建或打开数据库时发生任何SQLException(通常是由于磁盘空间不足或I/O错误),
Log.i("SQLite", "数据库操作错误", e);
}
}
/**
* 获取全部记录
*/
public String showItems(String name) {
StringBuilder result = new StringBuilder(); // 创建一个StringBuilder来构建结果字符串
Cursor cursor = db.query(TABLE_NAME,new String[] {INFO},"name like ?",new String[] {name},null,null,null);
try {
if (cursor.moveToFirst()) { // 使用moveToFirst()而不是moveToNext(),因为我们想从第一行开始
do {
String infodata = cursor.getString(cursor.getColumnIndex("info"));
result.append(infodata).append("\n"); // 将数据添加到结果中,并添加一个换行符(如果需要)
} while (cursor.moveToNext()); // 在循环的末尾调用moveToNext()
}
} finally {
cursor.close(); // 确保始终关闭Cursor
}
return result.toString(); // 返回结果字符串
}
}
3.主程序调用
定义一个对象
调用对应函数
myc = new MySQLDatabase();
myc.onCreate(this);
textView.setText(myc.showItems(str));
4.查询成功
注:侵权,联系删!