Android SQLite数据库
前言
以前写PHP的时候,内置了print_r()和var_dump()两个函数用于打印输出任意类型的数据内部结构,现在做Android的开发,发现并没有这种类似的函数,对于数据库的查看很不方便,于是就写了一下查看数据库表的方法代码。
代码实现
import java.util.Arrays; import android.app.Activity; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.os.Bundle; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class SecondActivity extends Activity { public static final String TAG = "Debug Info"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ((Button)findViewById(R.id.btnQue)).setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { MyDatabaseHelper dbhelper = new MyDatabaseHelper(SecondActivity.this, "BookStore.db", null, 1); SQLiteDatabase db = dbhelper.getWritableDatabase(); //核心区 //读取系统表 sqlite_master String sql = "select * from sqlite_master"; Cursor cursor = db.rawQuery(sql, null); //打印表的所有列名 Log.i(TAG, Arrays.toString(cursor.getColumnNames())); //打印当前数据库中的所有表 if (cursor.moveToFirst()) { do { String str = ""; for (String item : cursor.getColumnNames()) { str += item + ": " + cursor.getString(cursor.getColumnIndex(item)) + "\n"; } Log.i(TAG, str); } while (cursor.moveToNext()); } } }); } }
功能扩展
查看表是否存在
public Boolean tableIsExist(SQLiteDatabase db, String tableName){ boolean result = false; Cursor cursor = null; if(tableName == null){ return result; } String sql = "select count(*) from sqlite_master where type ='table' and name ='"+tableName.trim()+"'"; cursor = db.rawQuery(sql, null); if(cursor.moveToNext()){ if(cursor.getInt(0) > 0){ result = true; } } return result; }
查看数据库中有哪些表
public ArrayList<String> tablesInDB(SQLiteDatabase db){ ArrayList<String> list = new ArrayList<String>(); String sql = "select name from sqlite_master where type='table'"; Cursor cursor = db.rawQuery(sql, null); if (cursor.moveToFirst()) { do { list.add(cursor.getString(0)); } while (cursor.moveToNext()); } return list; }
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
本文向大家介绍详解数据库中跨库数据表的运算,包括了详解数据库中跨库数据表的运算的使用技巧和注意事项,需要的朋友参考一下 1. 简单合并(FROM) 所谓跨库数据表,是指逻辑上同一张数据表被分别存储在不同数据库中。其原因有可能是因为数据量太大,放在一个数据库难以处理,也可能在业务上就需要将生产库和历史库分开。而不同的数据库,可能只是部署在不同的机器上的同种数据库,也可能是连类型都不同的数据库系统。
本文向大家介绍详解 linux mysqldump 导出数据库、数据、表结构,包括了详解 linux mysqldump 导出数据库、数据、表结构的使用技巧和注意事项,需要的朋友参考一下 详解 linux mysqldump 导出数据库、数据、表结构 导出完整的数据库备份: 说明:--add-locks:导出过程中锁定表,完成后回解锁。-q:不缓冲查询,直接导出至标准输出 导出完整的数据库表结构
试图获取。accdb数据库(2007-2016格式)中所有表的列表。似乎找不到MSysObjects表。使用UCanAccess net.ucanaccess.jdbc.ucanaccessSqlException:UCAEXC::3.0.6用户缺乏权限或找不到对象:MSYSOBJECTS at net.ucanaccess.jdbc.ucanaccessStatement.executeQuer
创建表 查看表结构 查看表详细结构 修改表名 修改字段的数据类型 修改字段名 增加字段 删除字段 删除关联表 (1)删除表的外键约束 (2)删除没有被关联的普通表 (3)删除被其他表关联的父表 创建表: CREATE TABLE 表名 (属性名 数据类型 [完整性约束条件], 属性名 数据类型 [完整性约束条件], 属性名 数据类型 [完整性约束条件]) “完整性约束条件”是指指定某些字段的某些特
本文向大家介绍详解SqlServer数据库中Substring函数的用法,包括了详解SqlServer数据库中Substring函数的用法的使用技巧和注意事项,需要的朋友参考一下 功能:返回字符、二进制、文本或图像表达式的一部分 语法:SUBSTRING ( expression, start, length ) 1、substring(操作的字符串,开始截取的位置,返回的字符个数) 例如: 从'
问题内容: 我正在使用带有SQL数据库的C#开发应用程序。 我有一个模型: 我想将其表示为表格。 表格的哪些正确字段? 问题答案: 这取决于该人与他将负责的其他人之间存在什么样的关系。 如果是父母与子女的关系,即 组成 关系,则可以使用自我参考表。就像是: 包含以下各列: , 。 相同表的外键。 如果一个人与其他人之间的关系是一个 集合 ,并且一个人可能对其他许多事情负责: , 。 : , , 。