版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库接口技术——ODBCPKU数据库接口技术的分类微软最新的数据访问技术,用以实现访问关系或非关系数据库中的数据。
ADOMicrosoft推出的最早的整合异质数据库的数据库接口,现在已成为一种事实上的标准。ODBC是执行SQL语句的JavaAPI,由一组用Java语言编写的类与接口组成。JDBCPKUODBCODBC: OpenDataBaseConnectivity 开放式数据库联接
Microsoft引进这种技术的一个主要目的是,以非语言专用的方式,提供给程序员一种访问数据库内容的简单方法。PKUODBC的产生背景关系型数据库产生后很快就成为数据库系统的主流产品,由于每个DBMS厂商都有自己的一套标准,人们很早就产生了标准化的想法,于是产生了SQL,由于其语法规范逐渐为人所接受,成为RDBMS上的主导语言。最初,各数据库厂商为了解决互连的问题,往往提供嵌入式SQL
API,用户在客户机端要操作系统中的RDBMS时,往往要在程序中嵌入SQL语句进行预编译。由于不同厂商在数据格式、数据操作、具体实现甚至语法方面都具有不同程度的差异,所以彼此不能兼容。PKUODBC的产生1991年11月,微软宣布了ODBC,次年推出可用版本。1992年2月,推出了ODBC
SDK
2.0版。ODBC基于SAG的SQL
CAE草案所规定的语法,共分为Core、Level
1、
Level
2三种定义,分别规范了22、16、13共51条命令,其中29条命令甚至超越了SAG
CLI中原有的定义,功能强大而灵活。它还包括标准的错误代码集、标准的连接和登录DBMS方法、标准的数据类型表示等。PKUODBC的发展由于当时ODBC思想上的先进性,且没有同类的标准或产品与之竞争,它一枝独秀,推出后仅仅两三年就受到了众多厂家与用户的青睐,成为一种广为接受的标准。目前,已经有130多家独立厂商宣布了对ODBC的支持,常见的DBMS都提供了ODBC的驱动接口,这些厂商包括Oracle、Sybase、Informix、Ingres、IBM(DB/2)、DEC(RDB)、HP(ALLBASE/SQL)、Gupta、Borland(Paradox)等。目前,ODBC已经成为客户机/服务器系统中的一个重要支持技术。
PKUODBC的基本思想为用户提供简单、标准、透明的数据库连接的公共编程接口。ODBC基本思想开发厂商根据ODBC的标准去实现底层的驱动程序。PKUODBC与传统方式的比较传统方式ODBCPKUODBC的特点1使用户程序有很高的互操作性,相同的目标代码适用于不同的DBMS2由于ODBC的开放性,它为程序集成提供了便利,为客户机/服务器结构提供了技术支持3由于应用与底层网络环境和DBMS分开,简化了开发维护上的困难PKUODBC的体系结构和实现ODBC是依靠分层结构来实现的具体分为四层:应用程序驱动程序管理器驱动程序数据源PKU体系结构应用程序驱动程序管理器驱动程序数据源ApplicationDrivemanagerDriveDatasoursePKU应用程序层使用ODBC接口的应用程序可执行以下任务:
请求与数据源的连接和会话(SQLConnect)向数据源发送SQL请求(SQLExecDirct或SQLExecute)对SQL请求的结果定义存储区和数据格式请求结果处理错误如果需要,把结果返回给用户对事务进行控制,请求执行或回退操作(SQLTransact)终止对数据源的连接(SQLDisconnect)。PKU驱动程序管理程序功能为ODBC提供提供参数和次数验证为每一个驱动程序提供ODBC函数入口地点处理几个ODBC的初始化调用PKU驱动程序功能建立与数据源的连接向数据源提交请求在应用程序需求时,转换数据格式返回结果给应用程序将运行错误格式化为标准代码返回在需要时说明和处理光标。
PKU数据源的组成数据源网络环境DBMS数据操作系统PKUODBC的接口函数I.
连接数据源(ConnectingtoaDataSource)SQLAllocEnvSQLAllocConnectSQLConnectSQLPriverConnectSQLBrowseConnectII.
取得驱动程序及数据源的相关讯息SQLDataSourceSQLGetInfoSQLGetFunctionsSQLGetTypeInfo.III.
设定及取得驱动程序的选项SQLSetConnectOptionSQLGetConnectOptionSQLSetStmtOptionSQLGetStmtOption.PKUODBC的接口函数IV.
准备SOL指令之需求SQLAllocStmtSQLPrepareSQLSetParamSQLParamOptionsSQLGetCursorNameSQLSetCursorNameSQLSetScrollOptions.V.
传送及执行需求SQLExecuteSQLExecDirectSQLNativeSqlSQLDescribeParanlSQLNumParamsSQLParamDataSQLPutData.PKUODBC的接口函数VI.
取得执行结果及有关结果的讯息SQLRowCountSQLNumResultColsSQLDescribeColSQLColAttributesSQLBindColSQLFetchSQLExtendedFetchSQLGetDataSQLSetDosSQLMoreResultsSQLErrorVII.
取得有关数据源系统表(SystemtablesorCatalog)的讯息SQLColumnPrivilegesSQLColumnsSQLForeignkeysSQLPrimaryKeysSQLProcedureColumnsSQLProceduresSQLSpecialColumnsSQLStatisticsSQLTablePrivilegesSQLTablesPKUODBC的接口函数VIII.
结束SQL指令需求SQLFreeStmtSQLCancelSQLTransactIX.
结束与数据源的连接SQLDisconnectSQLFreeConnectSQLFreeEnvPKUODBC程序流程为ODBC分配环境句柄分配一个连接句柄连接到数据库用SQL命令分配一个语句句柄传送该命令关闭连接解除连接和环境句柄PKUODBC实例应用程序要访问一个数据库,首先必须用ODBC管理器注册一个数据源,管理器根据数据源提供的数据库位置、数据库类型及ODBC驱动程序等信息,建立起ODBC与具体数据库的联系。这样,只要应用程序将数据源名提供给ODBC,ODBC就能建立起与相应数据库的连接。在ODBC中,ODBCAPI不能直接访问数据库,必须通过驱动程序管理器与数据库交换信息。驱动程序管理器负责将应用程序对ODBCAPI的调用传递给正确的驱动程序,而驱动程序在执行完相应的操作后,将结果通过驱动程序管理器返回给应用程序。PKUODBC实例(续1)实现步骤:1.设置ODBC数据源步骤是控制面板->管理工具->数据源(ODBC)。这里将加入一个本用户的数据源local,连接到本地的SQLServer2000服务器上。选择添加数据源,选择SQLServer的驱动。完成相关的设置之后就可以看到本地的DSN中多了一个名为local的数据源。如图所示:PKUODBC实例(续2)设置完之后就可以在程序中使用ODBC的API来连接到数据库了。
PKUODBC实例(续3)2.连接到ODBC数据源下面通过一个简单的基于控制台的VC程序来演示如何连接到ODBC数据源。要连接到ODBC数据源,需要先分配环境句柄,设置环境句柄,分配连接句柄,然后用这些句柄连接到ODBC建立连接。这部分的代码如下:SQLHENVhEnv;SQLHDBChConnect;SQLRETURNr;//分配环境句柄r=SQLAllocHandle(SQL_HANDLE_ENV,SQL_NULL_HANDLE,&hEnv);if(r!=SQL_SUCCESS){cout<<"SQLAllocHandleerror!"<<endl;exit(1);}PKUODBC实例(续4)//设置环境句柄r=SQLSetEnvAttr(hEnv,SQL_ATTR_ODBC_VERSION,(void*)SQL_OV_ODBC3,0);if(r!=SQL_SUCCESS){cout<<"SQLSetEnvAttrerror!"<<endl;exit(1);}//分配连接句柄r=SQLAllocHandle(SQL_HANDLE_DBC,hEnv,&hConnect);if(r!=SQL_SUCCESS){cout<<"SQLAllocHandleerror!"<<endl;exit(1);}//连接ODBC数据库r=SQLConnect(hConnect,(SQLCHAR*)"local",SQL_NTS,(SQLCHAR*)"zhdf",SQL_NTS,(SQLCHAR*)"123456",SQL_NTS);if(r!=SQL_SUCCESS&&r!=SQL_SUCCESS_WITH_INFO){cout<<"SQLConnecterror!"<<endl;exit(1);}PKUODBC实例(续5)3.查询实现在建立ODBC的时候我选择的默认数据库是pubs。在这里用代码查询一下authors:charSQLString[100];SQLCHARRetName[20];SQLLENcbName;//分配语句句柄r=SQLAllocHandle(SQL_HANDLE_STMT,hConnect,&hStmt);if(r!=SQL_SUCCESS){cout<<"SQLAllocHandleerror!"<<endl;exit(1);}//执行SQL查询strcpy(SQLString,"selectau_lnamefromauthors");r=SQLExecDirect(hStmt,(SQLCHAR*)SQLString,strlen(SQLString));if(r!=SQL_SUCCESS){cout<<"SQLExecDirecterror!"<<endl;exit(1);}PKUODBC实例(续6)//绑定数据并输出r=SQLBindCol(hStmt,1,SQL_C_CHAR,(SQLPOINTER)RetName,20,&cbName);while(1){r=SQLFetch(hStmt);if(r==SQL_ERROR||r==SQL_SUCCESS_WITH_INFO){cout<<"SQLFetcherror!"<<endl;exit(1);}if(r==SQL_SUCCESS||r==SQL_SUCCESS_WITH_INFO){cout<<RetName<<endl;}elsebreak;}PKUODBC实例(续7)执行结果数据库接口技术——JDBCPKUJDBC简介JDBC概述JDBC技术特点JDBC编程框架实例介绍PKUJDBC概述JDBC的诞生SUN公司开发的一个以Java语言为接口的数据库应用程序开发的接口。
在JDK1.x版本中,JDBC只是一个可选部件,到了JDK1.1公布时,SQL类包(也就是JDBCAPI)就成Java语言的标准部件。在JDBC2.0中,JDBC中的一系列可选的扩展对连接过程进行了改进。JDBC重要性JDBC扩展了Java的能力。随着越来越多的程序开发人员使用Java语言,对Java访问数据库易操作性的需求越来越强烈。PKUJDBC概述JDBC和ODBC及其他API的比较正如Java被设计成与硬件平台无关那样,JDBC也被设计成向开发者提供某种程度的数据库无关性。ODBC并不适合在Java中直接使用。ODBC是一个C语言实现的API,从Java程序调用本地的C程序会带来一系列类似安全性、完整性、健壮性的缺点。完全精确地实现从C代码ODBC到JavaAPI写的ODBC的翻译也并不令人满意。JDBC这样的JavaAPI对于纯Java方案来说是必须的。PKUJDBC技术特点JDBC是一种用于执行SQL语句的JavaAPI,它由一组用Java编程语言编写的类和接口组成,可以使用它来访问数据库和执行SQL语句。JDBC为工具/数据库开发人员提供了一个标准的API,使他们能够用纯JavaAPI来编写数据库应用程序。JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。PKUJDBC技术特点JDBC的结构PKUJDBC技术特点JDBC规范提供了数据库厂商必须实现的接口集合。目前有四种不同类型的实现。PKUJDBC编程框架JDBC能完成下列三件事:同一个数据库建立连接;向数据库发送SQL语句;处理数据库返回的结果。JDBC的接口一个是面向程序开发人员的JDBCAPI一个是底层的JDBCDriverAPI。PKUJDBC编程框架JDBCAPI
JDBCAPI被描述成为一组抽象的Java接口,可以对某个数据库打开连接,执行SQL语句并且处理结果。最重要的接口是:
java.sql.DriverManager处理驱动的调入并且对产生新的数据库连接提供支持。java.sql.Connection代表对特定数据库的连接。java.sql.Statement代表一个特定的容器,来对一个特定的数据库执行SQL语句。PKUJDBC编程框架java.sql.ResultSet控制对一个特定语句的行数据的存取。其中java.sql.Statement又有两个子类型:java.sql.PreparedStatement用于执行预编译的SQL语句。java.sql.CallableStatement用于执行对一个数据库内嵌过程的调用。
PKUJDBC编程框架JDBCDriverAPIjava.sql.Driver驱动程序,会将自身载入到DriverManager中去,并处理相应的请求并返回相应的数据库连接。每个databasedriver必须提供这样一个类,以使得系统可以由java.sql.DriverManager来管理。所有的driver必须提供对java.sql.Connection,java.sql.Statement,java.sql.PreparedStatement,andjava.sql.ResultSet的实现。如果目标DBMS提供有OUT参数的内嵌过程,那么还必须提供java.sql.CallableStatement接口。PKUJDBC编程框架加载驱动程序建立连接用于向数据库发送SQL语句执行查询处理得到的查询结果关闭所有打开的资源PKU实例介绍//JDBCexample.javaimportjava.sql.*;classJDBC{
publicstaticvoidJDBCexample(Stringdbid,Stringuserid,Stringpasswd) {
try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connectioncon=DriverManager.getConnection(dbid,userid,passwd);PKU
Statementstmt=con.createStatement();
try{ stmt.executeUpdate(“insertintoS values(‘s030’,‘刘’,‘铁岭',1)"); }catch(SQLExceptionsqle) {System.out.println("Couldnotinsert tuple."+sqle);}
ResultSetrs=stmt.executeQuery("SelectSNO, SNAME,CITYfromS");PKU
while(rs.next()){
System.out.println("SNO:"+rs.getString("SNO") +"SNAME:"+rs.getString("SNAME") +"CITY"+rs.getString("CITY")); } con.close(); }catch(SQLExceptionsqle) {System.out.println("SQLException:"+sqle);}
catch(Exceptione) {System.out.println("Exception:"+e);} }};PKUpublicclassJDBCexample{
publicstaticvoidmain(Stringargs[]){ JDBCexample=newJDBC(); example.JDBCexample("jdbc:odbc:db1","",""); }};Web数据库访问PKU为什么数据库要与Web接口Web浏览器已经变成用户访问数据库的实际标准能够使大量用户从任何地方访问数据库避免下载/安装特定软件,同时提供良好的图形化用户界面例如Banks,Airline/Carreservations,Universitycourseregistration/grading,…Web和数据库的连接打开创新服务的大门新的服务和产品快速推向市场,对竞争做出及时反应基于Web的支持服务,增加客户满意度世界范围的通用访问,快速有效的信息维度PKU为什么数据库要与Web接口动态文档给Web赋予生命静态文档的缺陷不能为用户提供个性化文档文档更新有问题,尤其是许多文档共享数据时解决途径:从数据库中动态产生文档可以基于存储在数据库中的用户信息来定制文档例如定制广告、天气、新闻等显示的信息是最新的,不像静态页面例如股票信息动态网页技术客户端技术:JavaApplet,客户端脚本服务器端技术:JavaServlet,服务器端脚本PKUHTMLHTML提供格式、显示超文本链接HTML也提供输入特征选择项:Pop-upmenus,radiobuttons,checklists值输入:文本框输入被送回服务器处理PKUHTML示例<html><body><tablebordercols=3> <tr><td>A-101</td><td>Downtown</td><td>500</td></tr>
…</table><center>The<i>account</i>relation</center><formaction=“BankQuery”method=get> Selectaccount/loanandenternumber<br> <selectname=“type”> <optionvalue=“account”selected>Account <optionvalue=“loan”>Loan </select> <inputtype=textsize=5name=“number”> <inputtype=submitvalue=“submit”></form></body></html>PKUHTML显示PKUHTTPHTTP:HyperTextTransferProtocol浏览器与Web服务器之间的通讯协议HTTP协议是无连接的当用户登录到计算机或JDBC/ODBC服务器时,连接一直保持,直到客户端关闭它(保留用户权限和其他信息)与此不同的,一旦Web服务器对请求做出响应,Web服务器马上关闭与客户端的连接动机:减少服务器负载操作系统对一个机器上打开连接的数目有严格限制PKUHTTP会话和Cookies信息服务需要会话信息例如用户权限只在一次会话时授予解决方案:cookieCookie是包含确认信息的小片文本在第一次连接时由服务器发送给浏览器由浏览器将创建的Cookie发送给服务器服务器保留它收到的Cookie,并在响应请求时使用例如用户授权信息,用户偏好等SITESERVERID=743886/06428590083188777793003273629307734*PKU客户端脚本/Applets浏览器可以将脚本或程序与文档一起取回,并在客户端以“安全模式”运行它们JavascriptApplets客户端脚本/程序使得文档成为活动的动画显示保证用户的输入满足正确性检查允许与用户进行更便捷的交互,避免反复与Server通讯PKUJavaAppletsWeb-ServerHTTP-RequestHTML-FileWeb-ServerFile-SystemLoadFileFileLoadApplet...Java-ClassRequestsJava-ClassesExecuteApplet...JavaVirtualMachine(JVM)Server-ProcessPKU三层Web体系结构PKU请求-服务流程Web浏览器向Web服务器请求一个网页;Web服务器用CGI将请求传递给应用服务器;应用服务器用ODBC连接数据库;应用服务器接受查询结果并创建HTML网页;应用服务器用CGI将网页发送回Web服务器;Web服务器将网页发送回浏览器;HTML输出显示在客户计算机的Web浏览器上。PKUWeb-ServerHTTP-RequestHTML-FileWeb-ServerFile-SystemLoadFileFileHTML?HTMLExecuteProgramProgram?OutputI/O,Network,DB通用网关接口:CGIPKU两层Web体系结构PKU体系结构的简化三层Web体系结构的弊端多级服务器之间的交互增加了系统负载CGI接口对每一个请求都会开始一个新进程二层Web体系结构应用服务器作为Web服务器本身的一部分运行两种实现方式通过Web服务器装载Java程序Javaservlet定义了服务器和应用程序之间的通信接口。更简单的方法:使用服务器端脚本语言PKU服务器端脚本服务器端脚本简化了数据库与Web连接的任务定义嵌入可执行代码/SQL查询的HTML文档从HTML文档输入的值可以直接在嵌入代码/SQL查询中使用当请求该文档时,Web服务器执行嵌入代码/SQL查询,产生真正的HTML文档很多服务器端脚本语言JSP,服务器端Javascript,ColdFusion,PHP,JscriptVBScript,Perl,PythonPKU服务器端脚本Web-ServerFile-SystemWeb-ServerHTTP-RequestHTML-FileLoadFileFileHTMLI/O,Network,DBScript?OutputServerExtensionHTML?PKUPHPFile-SystemWeb-ServerHTTP-RequestHTML-FileLoadFilePHP-FileHTMLPHP-ScriptOutputDatabaseAPIs,otherAPIsSNMP,IMAP,POP3,LDAP,...PHPModuleWeb-ServerPKUPHP<HTML><BODY><?PHP$db=mysql_connect("localhost","dbuser");mysql_select_db("mydb",$db);$result=mysql_query("SELECT*FROMemployees",$db);?><TABLEBORDER=1><TR><TD>NAME</TD><TD>POSITION</TR><?PHPwhile($myrow=mysql_fetch_row($result)){printf("<tr><td>%s%s</td><td>%s</td></tr>\n",
$myrow[1],$myrow[2],$myrow[3]);}?></TABLE></BODY></HTML>
PKUColdFusion确切的描述:Web应用服务器将Web服务器与大量服务如数据库、邮件、搜索引擎等连接起来,扩展Web服务器的功能。CFML-ColdFusionMarkupLanguage服务器端标志语言,用于编写ColdFusion脚本脚本:一组以解释模式运行的指令Jeremy&J.J.Allaire,1995ColdFusion的一切就是为了节省时间PKUColdFusionFile-SystemWeb-ServerHTTP-RequestHTML-FileWeb-ServerLoadFileFileHTML?HTMLCFScript?HTMLColdFusionServerExtensionColdFusionApplicationServerODBC-DriverNativeDBDBEmailDirectoriesCOM/CORBAPKUColdFusion的工作流程浏览器向Web服务器请求一个.cfm页面;Web服务器查找.cfm脚本;ColdFusion执行该脚本并与相应的服务连接;ColdFusion将脚本的输出结果以HTML格式发送回Web服务器;Web服务器将网页发送回浏览器;HTML输出显示在客户计算机的Web浏览器上。PKUColdFusion的安装与配置在Windows2000/XP下的安装过程:第一步:确认已经安装并正在运行着Web服务器软件,如MicrosoftIIS,并将样例文件夹复制到Web服务器的根目录下,如C:\Inetpub\wwwroot\;第二步:安装ColdFusion,重启;第三步:运行ColdFusionAdministrator,配置ODBC数据源;安装成功!在浏览器中运行样例:/RobCor/ch15-0.cfmPKU基本操作(1):查询<CFQUERY>NAME=“queryname”,这个名字唯一确定数据库查询返回的记录集;DATASOURCE=“datasourcename”,使用ODBC中定义的数据源名称;SQL语句,可以使用任何ODBC兼容的语句<CFQUERYNAME=“venlist”DATASOURCE=“RobCor”>SELECT*FROMVENDORORDERBYVEN_CODE</CFQUERY>PKU基本操作(2):显示<CFOUTPUT>QUERY=“queryname”,可选参数,若指定某个返回10行记录的查询,CFOUTPUT标签开始和结束之间所有的指令都会被执行10次;可以在CFOUTPUT标签开始和结束之间包括任何合法的HTML标签或文本。用#号来引用结果记录集中的字段,或调用其它函数和变量。当ColdFusion遇到某个由#号封装的名字时,将计算该名字的值。PKU基本操作(2):显示(例)/RobCor/ch15-1.cfm<CFOUTPUT>Yourqueryreturned#venlist.RecordCount#records</CFOUTPUT><CFOUTPUTQUERY="venlist"><PRE><B>VENDORCODE: #VEN_CODE#VENDORNAME: #VEN_NAME#CONTACTPERSON: #VEN_CONTACT_NAME#PHONE: #VEN_PH#<HR></B></PRE></CFOUTPUT>PKU创建动态查询网页<HTML><BODY><FORMACTION="/cf/pf.cfm"><H1>FindPerson</H1>PersonName<INPUTNAME="PNAME"><p><INPUTTYPE="submit"VALUE="Find"></FORM></BODY></HTML><CFQUERYNAME=“PersonInfo” DATASOURCE=“PersonDB”>
SELECT*FROMPersons WHEREName=#Form.PName#</CFQUERY><HTML><BODY><CFOUTPUTQUERY=“PersonInfo”><H1>
#Name#
</H1><UL><LI><B>Age=</B>#Age#<LI><B>Salary=</B>$#Sal#<LI><Ahref=“#URL#”><B>Homepage</B></A></UL></CFOUTPUT></BODY></HTML>PKU创建动态查询网页第一步:创建一个脚本来生成一个窗体,用户可以使用该窗体来输入在搜索中使用的条件。换句话说,该窗体允许用户输入在查询语句中使用的参数值;第二步:创建一个脚本来执行查询和显示查询结果,这里将使用在第一步生成的脚本传递过来的参数。/RobCor/ch15-4a.cfmPKU数据插入第一页:生成一个窗体,用户可以使用该窗体来输入数据。在这一步中,服务器端将进行数据的验证;第二页:执行数据的插入。<CFINSERT>DATASOURCE=“datasourc_name”TABLENAME=“table_name”/RobCor/ch15-5a.cfmPKU数据更新第一页:允许用户选择要更新的记录;第二页:读取所选择的记录,显示一个数据录入窗体让用户修改数据;第三页:利用第二步的窗体字段更新数据库中的数据。<CFUPDATE>DATASOURCE=“datasourc_name”TABLENAME=“table_name”/RobCor/ch15-6a.cfmPKU数据删除第一页:允许用户选择要更新的记录;第二页:读取所选择的记录,同时执行完整性检查;第三页:利用第二页传来的主码执行数据的删除。/RobCor/ch15-7a.cfmPKU还有更多……以上提到的ColdFusion技术只代表了基于数据库的Web应用开发的冰山一角。ColdFusion提供数以百计的标签和函数来帮助我们有效地开发专业Web应用。如果一个数据库本身的设计存在缺陷,Web接口将更容易导致大范围的数据库灾难。好的数据库设计和实现+好的Web开发技术=无限的商业战术和战略优势注意使用PHP访问MySQL数据库PKU提纲PHP介绍MySQL介绍PHP访问MySQL数据库利用PHP数据库函数连接MySQLPHP通过ODBC连接MySQL两种方法的对比PKUPHP介绍PHP(PersonalHomePage)是一种跨平台的服务器端嵌入式脚本语言。它最初是RasmusLerdorf于1994年开发的。在PHP早期的版本中,提供了访客留言本、访客计数器等简单功能。随后,在第二版中增加了对mSQL的支持。自此奠定了PHP在动态网页开发上的影响力,并迅速在Internet上流传开来。PKUPHP介绍截至2006年8月,在全球范围内,共有超过2000万动态站点使用着PHP,包括Yahoo!等著名网站,目前有超过半数的Ajax-enabled和Web2.0站点选择应用PHP。除此之外,PHP也是企业用来构建服务导向型、创造和混合web服务融于新一代的综合性商业应用的语言,成为开源商业应用发展的方向。PKUPHP介绍PHP流行有以下几个原因:兼容C的语法,容易掌握。运行速度快。非常强的容错,很好的鲁棒性能。丰富的函数和简单的操作。在函数支持方面,PHP几乎覆盖了Web应用的各个方面,其中最有特色的是数据库函数,使用PHP完成一个含有数据库功能的网页非常简单,而PHP支持的数据库也非常丰富,目前包括:Oracle、Sybase、SQLServer、MySQL、Informix等。PHP是开源的,在各种平台上都可以自由加入新的函数。PKUMySQL介绍MySQL是一个快速、健壮和易用,且支持多线程、多用户的SQL数据库服务器。MySQL是一个客户机/服务器结构的应用,它由一个服务器守护程序mysqld和很多不同的客户程序和库组成。MySQL是多平台的,是目前使用最广的开源数据库软件。PKUMySQL介绍MySQL的主要特点完全多线程,适于多CPU使用。提供C,C++,JAVA(JDBC),Perl,Python,PHP和TCL的API接口。多平台,包括:Solaris,SunOS,BSDI,SGIAIX,DECUNIX,Linux,FreeBSD,SCOOpenServer,NetBSD,OpenBSD,HPUX,Win9xandNT.(各台支持的功能不尽相同)。PKUMySQL介绍数据类型多样。非常灵活和安全的权限系统,密码加密。为Win9X提供ODBC接口,可通过Access与之相联.另有第三方开发商提供多样的ODBC驱动程序。可处理大型数据(超过5千万个记录)。通过权威检测,无内存泄露。多种语言支持。PKUMySQL介绍MySQL的快速和灵活性足以满足一个网站的信息管理工作。因此,PHP+MySQL靠其功能强大、价格低廉、跨平台等特性,成为网站架构的绝佳组合。PKUPHP访问MySQL数据库PHP访问MySQL数据库的方式主要有两种:1.利用PHP的数据库函数连接。PHP对不同类型的数据库一般有不同的访问函数,使它能够快速读取绝大多数数据库或数据源中的数据,包括DBA、dBase、Informix、SQLServer、MySQL、Sybase、Oracle、PostgreSQL等等。2.通过ODBC连接PKU利用PHP数据库函数连接MySQLPHP函数中,针对MySQL数据库,常用函数有:mysql_connect():建立与MySQL服务器的连接。mysql_createdb():建立一个新的MySQL数据库。mysql_drop_db():删除一个指定的MySQL数据库。mysql_select_db():选择一个MySQL数据库。mysql_query():送出query字符串以帮助MySQL做相关的处理或执行。mysql_num_rows():本函数返回表行的数目,一般配合SELECT语句进行查询操作。mysql_close():关闭与MySQL服务器的连接。PKU利用PHP数据库函数连接MySQL用PHP程序访问MySQL数据库的方法比较简单,典型的步骤如下:(1)用函数mysql_connect(string[server],string[username],string[password])建立与MySQL服务器的连接。如连接成功,函数返回一个连接标识;否则,返回FALSE,表明连接失败。这里,参数server可以写成“host-name:port”的形式。如果函数调用中未填写参数server,则缺省为server=’localhost:3306’,缺省用户名为数据库服务器进程的拥有者。PKU利用PHP数据库函数连接MySQL(2)用mysql_select_db(stringdatabase-name,resource[link-identifier])函数设置与指定数据库连接标识相关的当前活动数据库。如缺省连接标识,则使用前面已经建立的连接;如前面没有建立连接,则函数试图建立一个连接后再设置与指定数据库连接相关的当前活动数据库。函数调用成功,返回TRUE;否则,返回FALSE。PKU利用PHP数据库函数连接MySQL(3)准备好符合SQL语言标准的语句字符串,即类似于$sql1=“select*fromtablewhere….”程序语句。(4)用mysql_query(stringquery[,resourcelink_identifier])访问数据库。(5)如(4)是查询操作,则用mysql_fetch_array(resourceresult,int[result_type])从生成的记录集中取记录。(6)用mysql_close()关闭数据库。PKU利用PHP数据库函数连接MySQL例程:
<?php $con=mysql_connect(‘localhost’,’root’,’adminpassword’); /*上面localhost是数据库服务器的名称,root是用户名,后面一项是root密码。*/
Mysql_select_db(‘database’
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年互联网医院五年质量提升报告
- 拉美电商快递行业市场前景及投资研究报告:热土纵横蓝海破浪
- 汉字部首演变与古代冶金工艺进步的关联性分析课题报告教学研究课题报告
- 2026年元阳县域紧密型医共体中医医院分院公开招聘编外人员的备考题库有完整答案详解
- 2026年江中食疗科技有限公司备考题库及答案详解一套
- 2026年威海市教育局直属学校引进急需紧缺人才备考题库及答案详解(易错题)
- 2025年夜间商业地产五年报告
- 2026年福州工业园区开发集团有限公司勘察设计分公司招聘备考题库(含答案详解)
- 温州市供销集团有限公司2025年公开招聘工作人员备考题库(含答案详解)
- 2026年乐平市市属国资控股集团有限公司面向社会公开招聘人员备考题库及答案详解参考
- 销售行业合同范本
- 2026年民用无人机操控员执照(CAAC)考试复习重点题库标准卷
- 英语试卷+答案黑龙江省哈三中2025-2026学年上学期高二学年12月月考(12.11-12.12)
- 2025天津大学管理岗位集中招聘15人参考笔试试题及答案解析
- 安全通道防护棚计算书
- 中文介绍迈克尔杰克逊
- 安徽绿沃循环能源科技有限公司12000t-a锂离子电池高值资源化回收利用项目(重新报批)环境影响报告书
- 厦深铁路福建段某标段工程投标施工组织设计
- 《汽车电器故障问题研究4600字(论文)》
- EN462全套中文版本欧标像质计
- GB∕T 20969.5-2021 特殊环境条件 高原机械 第5部分:高原自然环境试验导则 工程机械
评论
0/150
提交评论