sqlit的基本 *** 作

sqlit的基本 *** 作,第1张

概述sqlite *** 作 首先是创建SQLiteOpenHelper的实现类; 需要重写onCreate() @Override public void onCreate(SQLiteDatabase db) { db.execSQL(CREATE_BOOK); db.execSQL(CREATE_CATEGORY); Toast.makeText( sqlite *** 作

首先是创建sqliteOpenHelper的实现类;
需要重写onCreate()

@OverrIDe    public voID onCreate(sqliteDatabase db) {        db.execsql(CREATE_BOOK);        db.execsql(CREATE_category);        Toast.makeText(context,"数据库创建成功",Toast.LENGTH_LONG).show();    }

和onUpgrade()

@OverrIDe    public voID onUpgrade(sqliteDatabase db,int oldVersion,int newVersion) {        db.execsql("drop table if exists Book");        db.execsql("drop table if exists category");//增加的表        onCreate(db);    }

两个方法;
onUpgrade()这个方法在数据库更新的时候会自动调用;

public static String CREATE_BOOK="create table Book ( ID integer primary key autoincrement,auther text,price real,pages integer,name text )"; 

上述代码是创建一个数据库中的 Book 表;
添加一个构造方法:

public MyDataBaseHelper(Context context,String name,CursorFactory factory,int version) {        super(context,name,factory,version);        this .context=context;        // Todo auto-generated constructor stub    }

在MainActivity.class中创建sqliteOpenHelper的实现类;

myDataBaseHelper=new MyDataBaseHelper(this,"BookStore.db",null,3);

参数1代表的是上下文对象
参数2代表的是要创建的数据表的名字
参数3代表的是CursorFactory 一般都写为null
参数4代表的是数据的版本;

增:

sqliteOpenHelper的实现类调用getWritableDatabase()方法得到一个sqliteDataBase对象;

sqliteDatabase db=myDataBaseHelper.getWritableDatabase();

用db调用insert()方法;

ContentValues values=new ContentValues();            values.put("name","安卓基础");            values.put("auther","老罗");            values.put("price",57);            values.put("pages",670);            db.insert("Book",null,values);db.insert("Book",values);


用db调用delete()方法;

db.delete("Book",null,null);//全部删除了Book表中的数据


把作者为老罗的书的价格改成了70;

ContentValues values2=new ContentValues();            values2.put("price",70);            db.update("Book",values2,"auther=?",new String[]{"老罗"});

private List<Book> books=new ArrayList<Book>();...Cursor cursor=db.query("Book",null);            if (cursor.movetoFirst()) {                books.clear();                do {                    Book book=new Book();                    String name=cursor.getString(cursor.getColumnIndex("name"));                    book.setname(name);                    String auther=cursor.getString(cursor.getColumnIndex("auther"));                    book.setAuther(auther);                    double price=cursor.getDouble(cursor.getColumnIndex("price"));                    book.setPrice(price);                    int pages=cursor.getInt(cursor.getColumnIndex("pages"));                    book.setPages(pages);                    books.add(book);                } while (cursor.movetoNext()) ;            }

把Book表中的数据全部读出来;并添加到了一个List集合中;
写了一个Book实体类

public class Book {    private String name;    private String auther;    private int pages;    private double price;    public String getname() {        return name;    }    public voID setname(String name) {        this.name = name;    }    public String getAuther() {        return auther;    }    public voID setAuther(String auther) {        this.auther = auther;    }    public int getPages() {        return pages;    }    public voID setPages(int pages) {        this.pages = pages;    }    public double getPrice() {        return price;    }    public voID setPrice(double price) {        this.price = price;    }    @OverrIDe    public String toString() {        return "Book [name=" + name + ",auther=" + auther + ",pages=" + pages                + ",price=" + price + "]";    }}
总结

以上是内存溢出为你收集整理的sqlit的基本 *** 作全部内容,希望文章能够帮你解决sqlit的基本 *** 作所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1167633.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存