Python3连接数据库,python 数据库连接
在ODBC中创建的APP应用程序具有高度的可移植性,可以同时访问不同的数据库和共享多个数据资源。
另一方面,ODBC简介ODBC是解决连接不同关系数据库管理系统,使数据库系统“开放”,实现“数据库互联”等问题的接口标准。它是微软操作服务架构(WOSA)数据库的一部分。它建立了一套规范,提供了一套访问数据库的APP应用程序接口(API)。ODBC不仅规范了APP应用的开发,还具有规范数据库管理系统APP应用接口的双重作用或约束力。
二。ODBC工作原理介绍ODBC应用系统架构图:
从照片中可以看出,odbc APP应用系统由用户APP、odbc驱动管理器、数据库驱动和数据源组成。
1.用户app应用用户APP应用提供用户界面、APP应用逻辑和交易逻辑。使用ODBC开发数据库APP应用时,APP应用会调用标准的ODBC函数和SQL语句。APP应用层使用ODBC API调用接口与数据库进行交互。利用ODBC开发APP应用系统的ODBC APP应用程序的简称包括:
1.请求连接到数据库。
2.将SQL语句发送到数据源。
3.为SQL语句的执行结果分配存储空间,定义要读取的数据格式。
4.获取数据库操作结果或处理错误。
5.进行数据处理,并将处理结果提交给用户。
6.请求事务提交和回滚操作。
7.断开与数据源的连接。
2.ODBC驱动管理器驱动管理器用于管理各种驱动。ODBC驱动程序管理器由微软公司提供,包含在ODVC32.DLL中,对用户透明,用于管理APP应用程序和驱动程序之间的通信。ODBC驱动程序管理器的主要功能包括加载ODBC驱动程序、选择和连接合适的驱动程序、管理数据源、检查ODBC调用参数的有效性以及记录ODBC函数的调用。如有必要,app应用层可以
ODBC驱动程序管理器可以创建、配置和删除数据源,并查看系统中当前安装的数据库ODBC驱动程序。
3.数据驱动ODBC通过数据库驱动提供APP应用系统和数据库平台的独立性。
app odbc应用程序不能直接存储数据库。驱动管理器向关系数据库管理系统中的ODBC驱动发送各种操作请求,调用驱动支持的函数访问数据库。数据库的操作结果也通过驱动返回给APP应用。如果APP应用程序使用不同的数据库,它必须动态链接到不同的驱动程序。
ODBC驱动程序单一包
如果数据库和APP应用程序位于同一台计算机上,驱动程序将直接I/O数据文件。在这种情况下,驱动程序相当于数据管理器。多束
支持在网络环境下(如客户端服务器、客户端APP应用服务器、数据库服务器)访问数据。在这种情况下,驱动程序发送数据库访问请求并接收结果集,而APP应用程序使用驱动程序提供的结果集管理接口来处理执行的结果数据。4.ODBC数据源管理数据源是最终用户访问的数据,包含数据库位置、数据库类型等信息。它实际上是数据连接的抽象。
ODBC为每个被访问的数据源分配一个唯一的数据源名称(DSN ),并将其映射到访问数据所需的所有底层软件。在连接中,连接的用户名、服务器名、D数据库名等。由数据源名称表示。最终用户不需要知道数据库管理系统和其他数据库管理软件、网络和ODBC驱动程序的详细信息,数据源对最终用户是透明的。
三。基本ODBC API odbc APP应用程序编程接口(ODBC API)必须满足以下要求:
1.API一致性,包括核心级、扩展一级和扩展二级。
2.语法一致性,包括最低SQL语法级别、核心SQL语法级别和扩展SQL语法级别。
1.函数概述ODBC3.0注释提供了76个函数接口,大致可以分为:
1.分配和释放环境句柄、连接句柄和语句句柄。
2.连接功能。
3.信息关联函数。
4.交易功能。
5.执行相关功能。
6.目录功能。APP应用可以从SQLTables、SQLColmn等目录函数的调用中检索数据字典的信息。
2.Handle机器的属性handle是一个32位的整数值,表示指针。3.0 ODBC3.0句柄分为四种:环境、连接、语句和描述符句柄,每个句柄的数据结构因驱动而异。
“应用程序句柄之间的关系”图标:
1.每个odbc APP应用都需要创建一个odbc环境,分配环境句柄,访问数据的全局后台。
2.环境句柄可以建立多个连接句柄,每个连接句柄提供一个到数据源的连接。
3.您可以在一个连接上创建多个语句句柄。包括SQL语句,还包括SQL语句生成的结果集和相关信息。
提出了用ODBC 3.0描述句柄的概念。这是描述SQL语句的参数和结果集列的元数据集合。
3.数据类型ODBC定义了两种数据类型:SQL数据类型和C数据类型。
数据源使用SQL数据类型,APP应用的C代码使用C数据类型。SQL数据通过SQLBindcol从结果集列返回到APP应用程序变量。如果SQL语句包含参数,app应用程序将为每个参数调用SQLBindparameter,并将其绑定到APP应用程序变量。该应用程序可以从SQLGetTypeInfo获取不同的驱动程序。
支持顺序数据类型。
四。ODBC的工作流程ODBC应用系统的一般工作流程:
1.配置数据源,运行数据管理工具进行配置,使用驱动管理器提供的ConfigDsn函数添加、删除、更改数据源。此方法特别适合在应用程序中创建临时数据源。2.初始化环境由驱动程序管理器控制,并配置环境属性。直到应用程序通过调用连接函数连接到一个数据源,驱动程序管理器调用多连接驱动程序中的SQLAllcoHandle来真正分配环境句柄的数据结构。
3.连接应用程序用SQLAllocHandle分配连接句柄,通过SQLConnect、SQLDriverConnect或SQLBroeseConnect连接数据源。SQLConnect是最简单的连接函数,输出参数是配置的数据源名称、用户ID和密码。
4.分配语句句柄在处理任何SQL语句之前,应用程序还需要先分配一个语句句柄。语句句柄包含具体的SQL语句和输出结果集等信息。在下面的执行函数中,语句句柄是不必要的输入参数。
应用程序还可以通过SQLtStmtAttr设置语句属性。
5.执行SQL语句。应用程序处理SQL语句的方式:预处理或直接执行。如果SQL语句包含参数,应用程序将为每个参数调用SQLBindParameter,并将它们绑定到应用程序变量。这样应用程序就可以通过直接改变应用缓冲区的内容来动态改变程序中SQL语句的具体执行。下一个操作将根据语句的类型进行处理。
1.对于带有结果集的语句(select或catalog函数),处理结果集。
2.对于没有设置结构的函数,可以直接使用该语句的句柄继续执行新的语句或者获取行技术(本次执行影响的行数)后继续执行。
6.结果集处理应用可以通过SQLNubResultCols获取结果集中的列数,通过SQL DescribeCol或SQLColAttrbute函数获取结果集中各列的名称、数据类型、精度和范围。
在ODBC中使用游标处理结果集数据。游标可以分为只进游标和可滚动游标。只进游标只能在结果集中向前滚动,这是ODBC的默认游标类型。可滚动游标可以分为四种类型:静态、动态、代码集驱动和混合驱动。
与嵌入式SQL不同,ODBC游标没有显式声明,但系统会自动生成一个游标。当结果集刚刚生成时,光标指向第一行数据。应用程序通过SQLBindCol将查询结果绑定到应用程序缓冲区,并通过SQLFetch或SQLFetchScroll移动游标以获取结果集中的每一行数据。
7.接收后停止处理,应用程序会先释放语句句柄,然后释放数据库连接并断开与数据库服务器的连接,最后释放ODBC环境。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。