LINQ、ESQL、PL/SQL、ODBC、JDBC和OLEDB简介

使用SQL进行数据库访问我总结了一下以上六种形式。

为什么我的文章一下做嵌入式开发、一下有研究一下算法,这会我又来研究数据库呢?源于受打击了,面试的打击,学习一样东西没有足够的深入,只是用到什么去学什么,所以一直不够专,这种毛病需要改,总结就是学习一样东西,不能说我解决了某个问题就以为自己对这样一套东西掌握了。我们还要继续系统的找本书来学习一下,当然看完整本书后也不能以为自己就专了,事实上你还要进行大量的实践才行,正所谓实践理论在实践,这样才不至于弄的自己如此不专。废话不多说,言归正传。

一、LINQ

LINQ作为一个连接编程语言和数据查询语言的桥梁,其最大的特点就是用完全统一的编程模型支持多种数据格式的查询,如在高级语言查询sql、XML或者XPATH等时要不停切换它们的语言。而LINQ极大的简化了XML对象、对象与关系型数据、关系型数据与XML之间的交互过程。

另一个特点就是LINQ提供强类型支持,包括编译时类型检查以及在Visual Studio中的智能感知。

总而言之,LINQ让应用程序开发人员可以不必纠结于不同数据查询语言,而只需要熟悉高级语言的扩展功能即可。而且以往数据查询不能再高级语言编译的时候检查是否错误,而现在将查询语言集成到高级语言中可以实现这一功能。

如下代码示例:

LINQ、ESQL、PL/SQL、ODBC、JDBC和OLEDB简介_第1张图片

二、ESQL

嵌入式sql(embedded sql)是将sql语句嵌入到程序设计语言中,如C、C++和java,这些称之为主语言。将sql嵌入到高级语言中,sql负责数据的处理,高级语言负责程序的控制。这时候程序会有两种不同的计算机模型语言,两者是如何通信呢?

1、向主语言传递sql执行的状态信息,主语言通过此信息来控制程序流程。主要通过SQL通信区(SQL Communication Area)SQLCA实现,SQLCA中有一个变量SQLCODE用来存放执行SQL所返回的代码,成功则返回预定义代码SUCCESS,否则返回错误代码。

2、主语言提供参数,主要用主变量(Host Variable)实现。主变量按功能不同可以分为,输入主变量和输出主变量。一个主变量附带一个指示变量,它可以检查变量是否为空值,是否被截断。

3、SQL将查询的结果交给主语言处理,主要通过主变量和游标实现。SQL是面向集合的,一条sql可能产生多条记录。而主语言是面向记录的,一组主变量只能处理一条记录。所以游标的得来就是处理SQL得到的数据集合,让其指向某一条记录。


三、PL/SQL

PL/SQL(procedural language/SQL)是编写数据库存储过程的一种过程语言。它结合了SQL的数据操作能力和过程话语言的流程控制能力,是SQL的过程化扩展。

格式如下:

create procedure 过程名(参数1,参数2,……)

as

<PL/SQL>块;


四、ODBC

ODBC可以连接不同的RDBMS,是微软公司开放服务体系中有关数据库的一个组成部分,它建立了一组规范,并提供了一组访问数据库的标准API。作为规范它可以规范应用开发和规范RDBMS应用接口。


五、JDBC

JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。


六、OLEDB

也是微软的东西,不仅拥有ODBC的功能,还有面向非SQL数据类型的通路。

你可能感兴趣的:(LINQ、ESQL、PL/SQL、ODBC、JDBC和OLEDB简介)