当前位置:首页 » 安卓系统 » android数据库表格数据库数据

android数据库表格数据库数据

发布时间: 2022-08-04 22:57:10

① 在android上显示mysql数据库表格数据的小程序

http://www.cnblogs.com/xiao-xu/archive/2013/04/17/3025732.html
这是我自己总结的,有不明白的地方可以问,希望对你有帮助

② android 如何连接mysql数据库,并且往数据库里面插入数据

去看看httpget和httppost,再看一下servlet就可以实现一个简单的连接了,连接写在servlet里面就好

③ android中的数据库怎么去写如何建表,希望有具体代码参考啊!

android 中的数据库操作 android 中的应用开发很难避免不去使用数据库, 聊聊 android 中的数据 库操作,我发给你 word 贴不下
一、android 内的数据库的基础知识介绍
1.用了什么数据库
android 中采用的数据库是 SQLite 这个轻量级的嵌入式开源数据库,它是用 c 语言构建的。相关简介可以从链接查看。
2.数据库基本知识观花
对于一些和我一样还没有真正系统学习数据库技术的同学来说,把 SQL92 标 准中的一些基本概念、基本语句快速的了解一下,是很有必要的,这样待会用 Android 的 database 相关方法去执行一些数据库语句时就不会茫然了。
①数据库的基本结构——表格
表格是数据库中储存资料的基本架构。表格被分为栏位 (column) 及列位 (row)。每 一列代表一笔资料,而每一栏代表一笔资料的一部份。举例来说,如果我们有一个记载顾客 资料的表格,那栏位就有可能包括姓、名、地址、城市、国家、生日..等等。每一个表格 . 拥有一个独一无二的名字(Table Name)以便能够让用户定位到它上面。一个典型的表格结 构如下:
Store_Information 表格
store_name Sales Date Los Angeles $1500 Jan-05-1999 San Diego $250 Jan-07-1999 Los Angeles $300 Jan-08-1999 Boston $700 Jan-08-1999 该表格的表格名字为 Store_Information, 一共有三个栏位, 分别为 store_name , Sales , Data , 已经录入了四笔数据所以有四个列位。
②关于数据类型
和其他的数据库不同的是,sqlite 是无类型的。也就是当你创建一个表格时,无需对 每一个栏位要存储的数据的类型进行声明,当你在给表格增加数据条目时,sqlite 会自动找 到存入的数据的类型。
SQLite 允许忽略数据类型,但是,仍然建议在 Create Table 语句中指定数据类型, 因为数据类型有利于增强程序的可读性。SQLite 支持常见的数据类型,如 VARCHAR、 NVARCHAR、TEXT、INTEGER、FLOAT、BOOLEAN、CLOB、BLOB、TIMESTAMP、 NUMERIC、VARYING、CHARACTER、NATl0NAI, VARYINGCHARACTER。这些数据类 型都是 SQL92 标准中规定的标准数据库数据类型,想要有更近一步了解,请参看下表。
SQL 数据库数据类型详解 数据类型 类型 描 述 bit 整型 bit 数据类型是整型,其值只能是 0、1 或空值。这种数据类型用于存储只有两 种可能值的数据,如 Yes 或 No、True 或 Fa lse 、On 或 Off int 整型 int 数据类型可以存储从- 231(-2147483648)到 231 (2147483 647)之间的整数。存 储到数据库的几乎所有数值型的数据都可以用这种数据类型。 这种数据类型在数据库里占用 4 个字节 smallint 整型 smallint 数据类型可以存储从- 215(-32768)到 215(32767)之间的整数。这种 数据类型对存储一些常限定在特定范围内的数值型数据非常有用。 这种数据类型在数据库里 占用 2 字节空间 tinyint 整型 tinyint 数据类型能存储从 0 到 255 之间的整数。 它在你只打算存储有限数目 的数值时很有用。 这种数据类型在数据库中占用 1 个字节 numeric 精确数值型 numeric 数据类型与 decimal 型相同 decimal 精确数值型 decimal 数据类型能用来存储从-1038-1 到 1038-1 的固定精度和范围 的数值型数据。使用这种数据类型时,必须指定范围和精度。 范围是小数点左右所能存储

④ android 怎么往数据库里面添加数据

一、引入
数据库创建的问题解决了,接下来就该使用数据库实现应用程序功能的时候了。基
本的操作包括创建、读取、更新、删除,即我们通常说的 CRUD(Create, Read, Update, Delete)。
在实现这些操作的时候,我们会使用到两个比较重要的类 SQLiteDatabase 类和 Cursor 类。

二、创建表
1,execSQL(String sql):执行一条 sql 语句,且执行操作不能为 SELECT
因为它的返回值为 void,所以推荐使用 insert、update 方法等
2.,execSQL (String sql,Object[] bindArgs)
sql:执行一条 sql 语句
bindArgs:为 sql 语句中的?赋值

三、添加数据
1、execSQL(String sql)
2、使用对象的 insert 方法
ContentValues values = new ContentValues();
values.put(USERNAME, user.getUsername());
values.put(PASSWORD, user.getPassword());
db.insert(TABLE_NAME, null, values);
参数:
table:数据库中的表名
nullColumnHack:指定默认插入字段,为 null 时能插入数据
values:表示插入字段所对应的值,使用 put 方法。

四、删除数据
1、execSQL(String sql)
2、使用对象的 delete 方法
String whereClaues="_id=?";
String [] whereArgs={String.valueOf(id)};
//db.delete(TABLE_NAME, "_id="+id, null);
db.delete(TABLE_NAME, whereClaues, whereArgs);
参数
table:数据库的表名
whereClause:where 子句,比如:_id=?
whereArgs:where 子句中?的值

五、修改数据
1、execSQL(String sql)
2、使用对象的 delete 方法
ContentValues values = new ContentValues();
values.put(USERNAME, user.getUsername());
values.put(PASSWORD, user.getPassword());
String whereClaues="_id=?";
String [] whereArgs={String.valueOf(user.getId())};
db.update(TABLE_NAME, values, whereClaues, whereArgs);
参数
table:数据库的表名
values:代表要修改的值,修改方法还是 put(key,values)
whereClause:条件子句,比如 id=?,name=?
whereArgs:为 whereClause 中的?赋值,比如:new String[]{"1","张三"}

图:

参考代码:

程序内使用SQLite数据库是通过SQLiteOpenHelper进行操作

1.自己写个类继承SQLiteOpenHelper,重写以下3个方法

publicvoidonCreate(SQLiteDatabasedb)

{//创建数据库时的操作,如建表}

publicvoidonUpgrade(SQLiteDatabasedb,intoldVersion,intnewVersion)

{

//版本更新的操作

}

2.通过SQLiteOpenHelper的getWritableDatabase()获得一个SQLiteDatabase数据库,以后的操作都是对SQLiteDatabase进行操作。

3.对得到的SQLiteDatabase对象进行增,改,删,查等操作。

代码

packagecx.myNote;

importandroid.content.ContentValues;

importandroid.content.Context;

importandroid.content.Intent;

importandroid.database.Cursor;

importandroid.database.sqlite.SQLiteDatabase;

importandroid.database.sqlite.SQLiteOpenHelper;

//DBOptionsforlogin

publicclassDBOptions{

privatestaticfinalStringDB_NAME="notes.db";

privatestaticfinalStringDB_CREATE="createtablelogininf(nametext,pwdtext)";

{

publicDBHelper(Contextcontext){

super(context,DB_NAME,null,1);

}

@Override

publicvoidonCreate(SQLiteDatabasedb){

//TODOAuto-generatedmethodstub

//建表

db.execSQL(DB_CREATE);

}

@Override

publicvoidonUpgrade(SQLiteDatabasedb,intoldVersion,intnewVersion){

//TODOAuto-generatedmethodstub

db.execSQL("droptableifexistslogininf");

onCreate(db);

}

}

privateContextcontext;

privateSQLiteDatabasedb;

privateDBHelperdbHelper;

publicDBOptions(Contextcontext)

{

this.context=context;

dbHelper=newDBHelper(context);

db=dbHelper.getReadableDatabase();

}

//自己写的方法,对数据库进行操作

publicStringgetName()

{

Cursorcursor=db.rawQuery("selectnamefromlogininf",null);

cursor.moveToFirst();

returncursor.getString(0);

}

publicintchangePWD(StringoldP,Stringpwd)

{

ContentValuesvalues=newContentValues();

values.put("pwd",pwd);

returndb.update("logininf",values,"pwd="+oldP,null);

}

}


insert方法插入的一行记录使用ContentValus存放,ContentValues类似于Map,它提供了put(String key, Xxx value)(其中key为数据列的列名)方法用于存入数据、getAsXxxx(String key)方法用于取出数据

⑤ 跪求android将Excel表格中的数据导入数据库中的demo

我只能给您思路,DEMO我没。。。

这个你可以网络下具体过程。

我来告诉你大致思路。

  1. 首先,根据excel表格创建对象。最好字段都一样,不然怕你自己整迷糊了。

  2. 读取excel文件

  3. 写入数据库

    数据库工具:你可以用GreenDAO3.0框架,15分钟差不多能学会,很简单方便使用。其他没有什么难度点了。

⑥ android 怎么把数据库表数据 写入二维数组

这个例子是将数据库中的数据存储到集合中
List<ContactInfo> list = new ArrayList<ContactInfo>();//ContactInfo实体类
SQLiteDatabase db = dbOpentHlper.getReadableDatabase();
String sql = "select * from contactinfo";
Cursor cursor = db.rawQuery(sql, null);
while (cursor.moveToNext()) {
int id = cursor.getInt(cursor.getColumnIndex("_id"));
String name = cursor.getString(cursor.getColumnIndex("name"));
String qq = cursor.getString(cursor.getColumnIndex("qq"));
String msn = cursor.getString(cursor.getColumnIndex("msn"));
String phone = cursor.getString(cursor.getColumnIndex("phone"));
list.add(new ContactInfo(id, name, qq, msn, phone));
}

⑦ Android数据库操作表的两种方法,通过sql 语句法和谷歌提供的api 方法进行比较情况如何

DirverManager类:是JDBC的管理层,作用于用户和驱动之间。该类负责注册和加载JDBC驱动。
Connection接口:代表与数据库的链接,并拥有创建SQL语句的方法,以完成基本的SQL操作,同时为数据库事务提供提交和回滚方法。如:上面的例子就是链接到了TestData数据库。
Statement接口:用于执行不带参数的简单SQL语句。创建Statement实例对象后可以调用JDBC提供的3种执行SQL语句的方法:
(1)executeUpdate()方法,一般用于执行SQL的INSERT,DELETE,UPDATE语句
(2)executeQuery()方法,一般用于执行SQL的SELECT语句,因为 它的返回值是执行SQL语句后产生的一个ResultSet接口的实例(结果集)
(3)execute()方法,即一般它执行的SQL语句既有查询又有更新值,约等于executeUpdate()和executeQuery()两个方法的合辑。
PreparedStatement接口:它与Statement 的主要区别
(1)它包含的SQL语句是预编译的,所以当多次执行一条SQL语句时用它会更快
(2)在设置参数是可以用“?”代替。如:
PreparedStatement pstmt=conn.preparedStatement(insert into test values(?,?));
pstmt.setString(1,'gg');
pstmt.setString(2,'123');
ResultSet接口:包含了Statement和PreparedStatement的executeQuery方法中SELECT的结果集。相当于用它来读取数据库里每列的值。
DatabaseMetaData接口:主要是用来得到数据库的相关信息的。如:数据库版本啊
ResultSetMetaData接口:主要是用来获取数据库中表的相关信息的。如:表的行数啊。,谢谢

⑧ android数据库存储,代码创建数据库、表,实现编辑框内输入,点击按钮提交进行存入;从数据库中提

常量类:ConstantUtil

java">publicclassConstantUtil{

//数据库名称
_NAME="user_manager.db";
//数据库版本号
publicstaticfinalintDATABASE_VERSION=1;

//表名
publicstaticfinalStringTABLE_NAME="user_info";
//字段名
publicstaticfinalStringUSER_ID="userId";
publicstaticfinalStringUSER_NAME="username";
publicstaticfinalStringUSER_PASSWORD="password";
publicstaticfinalStringUSER_ADDRESS="address";



}


自定义SQLiteOpenHelper:MySQLiteOpenHelper

{

//定义一个SQLiteDatabase对象,对表进行相应的操作
;

publicMySQLiteOpenHelper(Contextcontext){
super(context,ConstantUtil.DATABASE_NAME,null,
ConstantUtil.DATABASE_VERSION);
mDatabase=getWritableDatabase();
}

/*
*创建表
*/
@Override
publicvoidonCreate(SQLiteDatabasedb){
//TODOAuto-generatedmethodstub

//sql语句
Stringsql="createtable"+ConstantUtil.TABLE_NAME+"("
+ConstantUtil.USER_ID+"integerprimarykey,"
+ConstantUtil.USER_NAME+"textnotnull,"
+ConstantUtil.USER_PASSWORD+"textnotnull,"
+ConstantUtil.USER_ADDRESS+"textnotnull)";
db.execSQL(sql);
}

@Override
publicvoidonUpgrade(SQLiteDatabasedb,intoldVersion,intnewVersion){
//TODOAuto-generatedmethodstub
onCreate(db);
}

/**
*添加数据
*@paramcv
*@return
*/
publicbooleaninsertData(ContentValuescv){
returnmDatabase.insert(ConstantUtil.TABLE_NAME,null,cv)>0;
}

/**
*查询所有数据
*@return
*/
publicList<Userinfo>queryData(){

List<Userinfo>userinfos=newArrayList<Userinfo>();
//从数据库里查询数据
Cursorcursor=mDatabase.query(ConstantUtil.TABLE_NAME,null,null,null,null,null,null);

if(cursor!=null){
//取出数据
while(cursor.moveToNext()){
Userinfouserinfo=newUserinfo();
userinfo.setUserId(cursor.getInt(0));
userinfo.setUsername(cursor.getString(1));
userinfo.setPassword(cursor.getString(2));
userinfo.setAddress(cursor.getString(3));
userinfos.add(userinfo);
}

}
returnuserinfos;

}

}

主Activity

{
//控件
privateTextViewtxtName,txtPwd,txtAddress;
privateEditTextedtName,edtPwd,edtAddress;
privateListViewmListView;
//数据库对象
;

privateUserinfoAdapteradapter;
/**.*/
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

findView();
init();
}

privatevoidfindView(){
//TODOAuto-generatedmethodstub

edtName=(EditText)findViewById(R.id.id_edit1);
edtPwd=(EditText)findViewById(R.id.id_edit2);
edtAddress=(EditText)findViewById(R.id.id_edit3);
mListView=(ListView)findViewById(R.id.id_listview);

}

privatevoidinit(){
//TODOAuto-generatedmethodstub
mySQLiteOpenHelper=newMySQLiteOpenHelper(MainActivity.this);
}

publicvoidonAction(Viewv){

switch(v.getId()){
caseR.id.id_btn_add:
//添加数据
StringuserName=edtName.getText().toString();
StringuserPwd=edtPwd.getText().toString();
StringuserAdress=edtAddress.getText().toString();
//传入参数
ContentValuescv=newContentValues();
//列名和值
cv.put(ConstantUtil.USER_NAME,userName);
cv.put(ConstantUtil.USER_PASSWORD,userPwd);
cv.put(ConstantUtil.USER_ADDRESS,userAdress);
//得到结果
booleanflag=mySQLiteOpenHelper.insertData(cv);

if(flag){

Toast.makeText(MainActivity.this,"添加记录成功",Toast.LENGTH_SHORT).show();

}else{

Toast.makeText(MainActivity.this,"添加记录失败",Toast.LENGTH_SHORT).show();
}

break;
caseR.id.id_btn_query:
//查询数据
List<Userinfo>userinfos=mySQLiteOpenHelper.queryData();
if(adapter!=null){
adapter=null;
}
adapter=newUserinfoAdapter(userinfos);
mListView.setAdapter(adapter);

break;
default:
break;
}

}

//数据适配器
{

List<Userinfo>userinfos;
publicUserinfoAdapter(List<Userinfo>_userinfos){
this.userinfos=_userinfos;
}

@Override
publicintgetCount(){
//TODOAuto-generatedmethodstub
returnuserinfos.size();
}

@Override
publicObjectgetItem(intposition){
//TODOAuto-generatedmethodstub
returnuserinfos.get(position);
}

@Override
publiclonggetItemId(intposition){
//TODOAuto-generatedmethodstub
returnposition;
}

@Override
publicViewgetView(intposition,ViewconvertView,ViewGroupparent){
//TODOAuto-generatedmethodstub
if(convertView==null){
convertView=LayoutInflater.from(MainActivity.this).inflate(R.layout.listview_item,null);

txtName=(TextView)convertView.findViewById(R.id.id_txt_name);
txtPwd=(TextView)convertView.findViewById(R.id.id_txt_pwd);
txtAddress=(TextView)convertView.findViewById(R.id.id_txt_address);

txtName.setText(userinfos.get(position).getUsername());
txtPwd.setText(userinfos.get(position).getPassword());
txtAddress.setText(userinfos.get(position).getAddress());
}


returnconvertView;
}

}
}


完整源码下载地址(附数据库文件查询软件+运行效果图):

⑨ 如何往android中添加数据库

一、新建外部SQLite数据库
(1)下载并安装 SQLite可视化管理工具(SQLite Expert Pro) v3.4.17 破解版
http://www.cr173.com/soft/36343.html
(2)将你手头上的数据放到EXCEL表格中,保存为CSV格式的数据
(3)在此工具中按照你现有的数据格式新建数据库和表,如数据库为:contact.db,表为employee
(4)通过此工具菜单栏中Import/Export下的Import text file(CSV,TSC)功能,将你现有的CSV数据导入到你新建的数据表中(主要目的是省的一个一个的录入了)
二、在eclipse中新建一个android app工程,并在新建的工程文件夹点右键new->folder,在res文件夹下新建raw文件夹(如果有就不用新建了)
三、用鼠标将新建的SQLite数据库文件contact.db拖动到新建工程的res下的raw文件下,出现提示,选择
四、程序代码
private static final String DATABASE_PATH = "/data/data/你的主程序包路径(如:com.szair.contact)/databases";
private static final int DATABASE_VERSION = 0;
private static final String DATABASE_NAME = "contact.db";
private static String outFileName = DATABASE_PATH + "/" + DATABASE_NAME;
try {
buildDatabase();//见下
} catch (Exception e) {
e.printStackTrace();
}
//SQLiteDatabase对象
SQLiteDatabase db=SQLiteDatabase.openDatabase(outFileName, null,SQLiteDatabase.NO_LOCALIZED_COLLATORS);
String t="SELECT 字段名1,字段名2 FROM employee WHERE **** ORDER BY ***";
Cursor c =db.rawQuery(t, null);
if(c.moveToFirst()){
for(int i=0;i
{
String zian1=c.getString(0);//字段1的数据
String zian2=c.getString(1);//字段1的数据
}
}
------------------------------------------------
//前面用到的buildDatabase方法
private void buildDatabase() throws Exception{
InputStream myInput = getResources().openRawResource(R.raw.sz_contact);
File file = new File(outFileName);
File dir = new File(DATABASE_PATH);
if (!dir.exists()) {
if (!dir.mkdir()) {
throw new Exception("创建失败");
}
}

if (!file.exists()) {
try {
OutputStream myOutput = new FileOutputStream(outFileName);

byte[] buffer = new byte[1024];
int length;
while ((length = myInput.read(buffer))>0){
myOutput.write(buffer, 0, length);
}
myOutput.close();
myInput.close();
} catch (Exception e) {
e.printStackTrace();
}

}
}
五、程序发布
按照以上方式,可以将外部建的SQLite数据库成功的发布出来

热点内容
福建电信服务器ip地址 发布:2025-01-19 23:07:24 浏览:647
服务器怎么制作公告栏 发布:2025-01-19 23:06:23 浏览:873
英雄联盟皮肤源码 发布:2025-01-19 22:56:14 浏览:94
三星手机忘记解锁密码怎么办 发布:2025-01-19 22:45:43 浏览:291
Java为什么没有预编译命令 发布:2025-01-19 22:44:14 浏览:303
路由器上写的初始无密码什么意思 发布:2025-01-19 22:42:38 浏览:847
mysql配置主从数据库 发布:2025-01-19 22:35:33 浏览:730
4大数据库 发布:2025-01-19 22:34:35 浏览:975
win10用什么解压 发布:2025-01-19 22:27:15 浏览:799
反编译连接数据库 发布:2025-01-19 22:07:55 浏览:787