问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

sqliteopenhelper 中的oncreate方法中 只能建一个表么, 为什么我建两个以上时 会出错

发布网友 发布时间:2022-05-01 14:02

我来回答

2个回答

懂视网 时间:2022-05-01 18:23

com.example.sjk; import android.content.Context; import android.database.sqlite.SQLiteCursor; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteDatabase.CursorFactory; import android.database.sqlite.SQLiteOpenHelper; import android.util.Log; public class SqlText extends SQLiteOpenHelper{ private static final String DB_NAME = "mydata.db"; //数据库名称 private static final int version =1; // 数据库版本
//调用父类构造器 public SqlText(Context context) { super(context, DB_NAME, null, version); //context 注意一下 } @Override public void onCreate(SQLiteDatabase db) { //新安装的软件从这里开始 String sql_message = "create table t_message (id int primary key,name varchar(50),age varchar(50))"; db.execSQL(sql_message); Log.i("hi", "创建表成功"); String sql_up1 = "insert into t_message values(1,‘小白‘,‘18‘)"; db.execSQL(sql_up1); Log.i("hi", "版本1.0插入数据成功了"); } @Override //在原来的软件上更新会从这里开始,不卸载在线更新 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { } }
 public void onCreate(SQLiteDatabase db) //本人理解为:新安装的软件从这里开始 ,其他的都不关事;

这个时候我们的数据库已经创建好了,并且建立表,插入了数据

技术分享

选择导出:

技术分享

 

 数据库有数据了,小白乱码了;但还是插入了数据。

 

//增加点查询功能 MainActivity.java

package com.example.sjk;
import android.app.Activity;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.widget.TextView;


public class MainActivity extends Activity {
		private SqlText st; //得到SqlText这个类的context
		private TextView tv;	
 @Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
  tv = (TextView) findViewById(R.id.TextView);//找到这个TextView组件
  st = new SqlText(MainActivity.this);
  
  String text = query();//调用查询这个方法
  tv.setText("id 	"+"name	"+"age
"+text);//显示
 }
 
 public String query(){//查询数据库的数据
		String result = "";
 	//获取数据库对象
		SQLiteDatabase db = st.getReadableDatabase();//只读:ReadableDatabase;读写:WritableDatabase
 	//查询数据库中的数据
		Cursor cursor = db.query("t_message", null, null, null, null, null, null);
		//结果集
		for(int i=0;i<cursor.getCount();i++) {
			cursor.moveToNext();
			result += cursor.getInt(cursor.getColumnIndex("id"));
			result += cursor.getString(cursor.getColumnIndex("name"));
			result += cursor.getString(cursor.getColumnIndex("age"));	
		}
		cursor.close();//关闭结果集
		db.close();//关闭数据库对象
		return result;
 	
 }

}

  

结果:

技术分享

 

浅谈SQLiteOpenHelper之onCreate例子

标签:move   关闭   http   insert   nal   arch   count   卸载   out   

热心网友 时间:2022-05-01 15:31

粘上你的代码,截个图看看,看看报的什么错
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
手机puik什么意思 广东江南理工高级技工学校地址在哪里 广州市技师学院具体地址 广州市高级技工学校江高校区有什么专业 广州市高级技工学校学校地址 话费支付是什么意思? 2019年华为保值机型排行:P40系列保值预计如何? 鸦片战争的二号元凶:威廉·嘉道理 局域网内访问共享要密码 Win10怎么设置局域网共享密码访问 个人如何缴纳商业养老保险 养老商业保险缴费标准 我想问一下商业养老保险是怎样缴费的,商业养老金又是怎样领取的 目前市场上的强光手电筒的开关很易坏,有什么好办法解决? 强光军用警用手电筒开关坏了怎么修 我贷款2000,年利息是18%是多少? 贷款23000元,利率百分之18,月利率是多少? 任务栏右下角箭头怎么弄出来? EXCEl表格中右下角的黑色小箭头是什么意思 重庆立信职业学校全国排名第几 左下和右下的箭头(符号)怎么打? 我用洗衣粉洗过衣服以后,觉得手上粘乎乎的,奇怪的是,我用清水洗了好几遍,已经洗得很干净了,手上还是 洗完衣服 衣服粘粘的 为什么 右下箭头符号怎么打出来 全国排行前十位的技校。职业学校 洗衣粉洗完衣服的手总是很粘,粘上东西很难洗掉!好像有一层胶,粘上的东西很难搓掉。 - 信息提示 衣服第一次穿没有毛洗过后衣服里面就有很多毛粘手上 求 《风景这边独好》 的作文 500字以上 复制的一边去 速度。。。。。急~~~ 为什么从洗衣机里拿出来的衣服摸起来黏糊糊的 商业个人养老保险每年交费 甜采叶子上有白粉,怎么办? 温室白粉虱如何防治? 白菜软腐病怎么治疗? 自家楼上种的所有青菜都有小白点 微信占用5个g怎么删不掉 如何登陆两个 迅游国际版和玲珑加速器哪个更好用? 国际网游加速器哪个好? 目前国内外哪个网游加速器性能最好 跪求火影qq名字 最好要雏田的 关于火影忍者的qq网名 要卡卡西的不要太长 +卡卡西签名谢谢了 关于火影忍者的QQ网名和签名。 求火影忍者鸣人和佐助的QQ网名 我想起个关于火影,晓组织的QQ名 跪求火影忍者的QQ签名、网名,谢谢!!! 谁能给我一个关于火影忍者帅点的QQ网名和头像还有个性签名,最好是匹配的,谢谢 爱莫生口罩为什么下架? 火影忍者的QQ昵称 火影忍者卡卡西的QQ网名