SQL資料庫的基本操作

2021-09-25 06:57:53 字數 3884 閱讀 2057

新建乙個類,繼承sqliteopenhelper。

public class mydatabasehelp extends sqliteopenhelper
寫乙個建構函式

private context context;//上下文物件

string name;//資料庫名稱

sqlitedatabase.curso***ctory factory;//工產

int version;//資料庫的版本號(用於判斷)

public mydatebasehelp(context context, string name, sqlitedatabase.curso***ctory factory, int version)

重寫兩個方法:

//執行一次  沒有時建立 有則開啟  有變動則更新 呼叫onupgrade方法

@override

public void oncreate(sqlitedatabase db)

//更新資料

@override

public void onupgrade(sqlitedatabase db, int oldversion, int newversion)

在mainactivity中的操作:

首先 mainactivity 實現乙個介面 view.onclicklistener

增:

1.菜鳥版

//例項化 建立資料庫

mydatabasehelp dbopenhelper=new mydatabasehelp(mainactivity.this,"day9",null,1);

//獲取資料庫的操作類

sqlitedatabase db = dbopenhelper.getwritabledatabase();

//資料格式

contentvalues values = new contentvalues();

values.put("name","紅孩兒");

values.put("age","1800");

//引數一表名 引數二:預設值 引數三:要插入的值

text.settext(db.insert("user",null,values)+"");

2.正常版

//例項化 建立資料庫

mydatabasehelp dbopenhelper=new mydatabasehelp(mainactivity.this,"day9",null,1);

//獲取資料庫的操作類

sqlitedatabase db = dbopenhelper.getwritabledatabase();

//插入資料

db .execsql("insert into user(name,***,age) values('風清揚','男',108)");

改:

1.菜鳥版:

mydatabasehelp dbopenhelper6=new mydatabasehelp(mainactivity.this,"day9",null,2);

sqlitedatabase db6 = dbopenhelper6.getwritabledatabase();

//引數一:表名 引數二:要修改的值 引數三:條件 引數四:為條件中的?賦值

int num2=db6.delete("user","name=?",new string);

text.settext("刪除"+num2+"");

2.正常版:

mydatabasehelp dbopenhelper7=new mydatabasehelp(mainactivity.this,"day9",null,2);

sqlitedatabase db7 = dbopenhelper7.getwritabledatabase();

string sql="delete from user where name = ? ";

db7.execsql(sql,new string);

1.菜鳥版:

mydatabasehelp dbopenhelper6=new mydatabasehelp(mainactivity.this,"day9",null,2);

sqlitedatabase db6 = dbopenhelper6.getwritabledatabase();

//引數一:表名 引數二:要修改的值 引數三:條件 引數四:為條件中的?賦值

int num2=db6.delete("user","name=?",new string);

text.settext("刪除"+num2+"");

2.正常版:

mydatabasehelp dbopenhelper7=new mydatabasehelp(mainactivity.this,"day9",null,2);

sqlitedatabase db7 = dbopenhelper7.getwritabledatabase();

string sql="delete from user where name = ? ";

db7.execsql(sql,new string);

mydatabasehelp dbopenhelper8=new mydatabasehelp(mainactivity.this,"day9",null,2);

sqlitedatabase db8=dbopenhelper8.getwritabledatabase();

//建立集合

arraylist> list = new arraylist<>();

//執行查詢語句

cursor cursor = db8.query("user", null, null, null, null, null, null);

//遍歷游標

text.settext(cursor.getcount()+"");

while (cursor.movetonext())

text.settext(list.size()+"");

刪除資料庫:

mydatabasehelp dbopenhelper9=new mydatabasehelp(mainactivity.this,"day9",null,2);

sqlitedatabase db9=dbopenhelper9.getwritabledatabase();

db9.execsql("delete from user");

事物的處理

try{}catch{}是為了預防報錯

事物處理中 資料量大,但是有一條出錯 其餘的都不會繼續

mydatabasehelp dbopenhelper10=new mydatabasehelp(mainactivity.this,"day9",null,2);

sqlitedatabase db10=dbopenhelper10.getwritabledatabase();

db10.begintransaction();//開啟事務

try

db10.settransactionsuccessful();//成功

}catch (exception e)finally

SQL資料庫基本操作

1 建立表 create create table dba test 建立表,表名為dba test col1 number,col2 varchar2 10 第一列預設值是0 第二列不准許有空值 第一列預設值是0 第二列不准許有空值 2 檢索操作 select select 1 from 2 其中...

SQL資料庫的基本操作

一丶基本命令列操作 1 顯示當前資料庫伺服器中的資料庫列表 mysql show databases 2 建立資料庫 mysql create database 資料庫名 3 建立資料表 mysql use 庫名 mysql create table 表名 欄位名 varchar 20 欄位名 ch...

SQL資料庫基本操作學習

資料查詢操作 1 讀取最新的10條資料 select top 10 from database dbo tablename order by columnname desc 2 刪除資料表,刪除資料較慢,可以恢復 delete from basename dbo tablename 3 刪除資料表的...