数据库操作四大类型

数据库 操作 四大类型
 
1数据 查询(DQL) 语言      基本构成  SELECT   FROM    WHERE  这些语句构成
 
2数据 操纵(DML ) 语言   基本构成 INSERT    UPDATE    DELETE 
 
3数据 定义(DDL) 语言   基本构成   CREATE  TABLE  VIEW  表的创建 ,属性定义 
 
4数据 控制  (DCL)  语言  主要时对数据库  进行检测  管理(授权,回滚( SQL>ROLLBACK;),提交数据( COMMIT [WORK]));
     
         提交方式:1 显式提交: 用COMMIT命令直接完成的提交为显式提交。其格式为:SQL>COMMIT;
                          2 隐式提交 用SQL命令间接完成的提交为隐式提交。这些命令是: ALTER,AUDIT,COMMENT,CONNECT,CREATE,DISCONNECT,DROP,EXIT,GRANT,NOAUDIT, QUIT,REVOKE,RENAME。
                          3 自动提交  若把AUTOCOMMIT设置为ON,则在插入、修改、删除语句执行后,系统将自动进行提交,这就是自动提交。  SQL>SET AUTOCOMMIT ON;
 
 
补充  数据库类型:
 
(1) 关系型数据库主要有: Oracle 、DB2、Microsoft SQL Server、Microsoft Access、MySQL等等。
 
(2) 非关系型数据库主要有: NoSql、Cloudant、MongoDb、redis、HBase等等。
 
非关系型数据库的优势:
1、性能高:NOSQL是基于键值对的,可以想象成表中的主键和值的对应关系,而且不需要经过SQL层的解析,所以性能非常高。
2、可扩展性好:同样也是因为 基于键值对,数据之间没有耦合性,所以非常容易水平扩展。
关系型数据库的优势:
1、可以复杂查询:可以用SQL语句方便的在一个表以及多个表之间做非常复杂的数据查询。
2、事务支持良好:使得对于安全性能很高的数据访问要求得以实现。
Android 如何导入外部数据库
public class DBManager {
private final int BUFFER_SIZE = 400000 ;
// public static final String DB_NAME = "countries.db";
public static final String DB_NAME = "cpcz.db" ;
public static final String PACKAGE_NAME = "com.blue.cameraxdemo" ;
public static final String DB_PATH = "/data"
+ Environment. getDataDirectory ().getAbsolutePath() + "/"
+ PACKAGE_NAME ;
 
private SQLiteDatabase database ;
private Context context ;
 
public DBManager(Context context) {
this . context = context;
}
 
public void openDatabase() {
this . database = this .openDatabase( DB_PATH + "/" + DB_NAME );
}
 
private SQLiteDatabase openDatabase(String dbfile) {
try {
if (!( new File(dbfile).exists())) {
InputStream is = this . context .getResources().openRawResource(
R.raw. cpcz );
FileOutputStream fos = new FileOutputStream(dbfile);
byte [] buffer = new byte [ BUFFER_SIZE ];
int count = 0 ;
while ((count = is.read(buffer)) > 0 ) {
fos.write(buffer, 0 , count);
}
fos.close();
is.close();
}
 
 
SQLiteDatabase db = SQLiteDatabase. openOrCreateDatabase (dbfile,
null );
Cursor cursor=db.query( "kincai_address_province" , null , null , null , null , null , null );
int i= 0 ;
while (cursor.moveToNext()){
Log. v ( "TAG" , "列表名: " + Arrays. toString (cursor.getColumnNames())+cursor.getString(cursor.getColumnIndex( "province_name" )));
i++;
}
 
return db;
} catch (FileNotFoundException e) {
Log. e ( "Database" , "File not found" );
e.printStackTrace();
} catch (IOException e) {
Log. e ( "Database" , "IO exception" );
e.printStackTrace();
}
return null ;
}
//do something else here
public void closeDatabase() {
this . database .close();
}
}
    
 
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值