数据库连接——URL!

关于URL

1.一般用法的URL

URL(统一资源定位符) 提供在Internet上定位资源所需的信息。可将他想像位一个地址。URL的第一部分指定了访问信息所用的协议,后面总是跟着冒号。常用的协议有”ftp“(代表文件传输协议),和”http“(代表超文本传输协议)。如果协议是”file“,表示资源是在某个本地文件系统上而非在Internet上(下例用于表示我们所描述的部分,它并非URL的组成部分):

ftp://javasoft.com/docs/JDK-1_apidocs.zip

http://java.sun.com/products/jdk/CurrentRealease

file://home/haroldw/docs/books/tutorial/summary.html

URL的其余部分(冒号后面的)给出了数据资源所处位置的有关信息。如果协议是file,则URL的其余部分是文件的路径。对于ftp和http协议,URL的其余部分标识了主机并可选地给出某个更详尽的地址路径。例如,以下是JavaSoft主页的URL。该URL只表示了主机:Http://java.sun.com

从该主页开始浏览,就可以进到许多其他的网页中,其中之一就是JDBC主页。JDBC主页的URL更为具体,它看起来类似:http://java.sun.com/products/jdbc

2.JDBC URL

JDBC URL提供了一种标识数据库的方法,可以使相应的驱动程序能识别该数据库并与之建立连接。实际上,驱动程序编程员决定用什么JDBC URL 来标识特定的驱动程序。用户不比关心如何来形成JDBC URL ;他们只需要使用与所用的驱动程序一起提供的URL即可。JDBC 的作用是提供某些约定,驱动程序编程员在构造他们的JDBC URL 是应该遵循这些约定。

JDBC URL 的标准语法如下所示。它由三部分组成,各部分间用冒号分割:

jdbc:< 子协议 >:< 子名称 >

三个部分可分解如下:

jdbc 协议。JDBC URL 中的协议总是jdbc

< 子协议 > 驱动程序名或数据库连接机制(这种机制可由一个或多个驱动程序支持)的名称。子协议名的典型事例是

”odbc“,改名称是为用于指定 ODBC 风格的数据资源名称的URL专门保留的。例如,为了通过,JDBC-ODBC 桥来访问某个数据库,可以如下所示URL:

URL: jdbc:odbc:fred

本例中,子协议为 odbc ,子名称 fred 是本地ODBC数据资源。

如果要用网络命名服务(这样JDBC URL 中的数据库名称不必是实际名称),则命名服务可以作为子协议。例如,可用如下所示的URL:

jdbc:dcenaming:accounts-payable

本例中,该 URL 指定了本地 DEC 命名服务应该将数据库名称 ”accounts-payable“ 解析为更具体的可用于连接这是数据库的名称。

<子名称> 一种表示数据库的方法。子名称可以依不同的子协议而变化。它还可以有子名称的子名称(含有驱动程序编程员所选的任何内部语法)。使用子名称的目的是为定位数据库提供足够的信息。前例中,因为 ODBC 将提供其余部分的信息,因此用 "fred" 就足够了。然而,位于远程服务器上的数据库要更多的信息,例如,如果数据库是通过 Internet 来访问的,则在 JDBC URL 中应将网络地址作为子名称的一部分包括进去,且必须遵循如下所示的标准URL命名约定:

//主机名:端口/子协议

假设dbnet是个用于将某个主机连接到 Internet 上的协议,则JDBC URL 类似:

jdbc:dbnet://wombat:356/fred

 3. odbc子协议

子协议 odbc 是一种特殊情况。它是为用于指定 ODBC 风格的数据资源名称的URL 而保留得,并具有以下特性:允许在子名称(数据资源名称)后面指定任意多个属性值。odbc 子协议的完整语法为:

 jdbc:odbc:< 数据资源名称 >[;< 属性名 >=< 属性名 >]*

因此,以下都是合法的 jdbc:odbc 名称:

jdbc:odbc:geor7

jdbc:odbc:wombat

jdbc:odbc:wombat;CacheSize-20;ExtensionCase=LOWER

jdbc:odbc:qeora;UID=kgh;PWD=fooey

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
译者序 序言 前言 第一部分 高级PHP 第1章 开发思想 1 1.1 PHP与我 1 1.2 计划的重要性 2 1.3 编码规范 3 1.3.1 选择名字 3 1.3.2 使代码更易读 5 1.3.3 添加注释 8 1.3.4 选择谈话式名字 13 1.3.5 保持清晰一致的接口 15 1.3.6 将代码结构化为逻辑群 16 1.3.7 抽取单独的代码块 16 1.4 使用文件将函数分类 16 1.5 编写文档 17 1.6 一个API设计实例 18 1.7 小结 22 第2章 高级语法 23 2.1 PHP语法 23 2.2 定义常量 24 2.3 数组函数 25 2.4 PHP和OOP 31 2.4.1 类:PHP 3.0和PHP 4.0的对比 35 2.4.2 执行类 36 2.4.3 读取对象 37 2.4.4 构造函数 38 2.4.5 继承 38 2.4.6 特殊的OOP函数 39 2.5 链接清单 41 2.6 关联数组 49 2.6.1 多维数组 50 2.6.2 变量参数 51 2.7 多态和自变代码 62 2.7.1 动态函数生成程序 63 2.7.2 自变计数器 67 2.8 小结 68 第3章 应用程序设计:一个实际的例子 69 3.1 项目概观 69 3.2 比较技术环节 70 3.3 IRC网络基础 73 3.4 使应用程序适用于网络 75 3.5 连接网络的接口 76 3.5.1 接口结构 78 3.5.2 下游信息交流 79 3.5.3 上游信息交流 80 3.5.4 在共享的存储器中设置一个标志 83 3.5.5 用户接口 84 3.5.6 开发者的接口 84 3.5.7 HTML开发者的接口 85 3.5.8 代码开发者的接口 85 3.6 管理和安全 90 3.6.1 网络等级 90 3.6.2 PHP/Web服务器等级 90 3.6.3 数据库等级 90 3.6.4 IRC等级 91 3.7 执行 91 3.8 小结 91 第二部分 Web应用 第4章 Web应用程序思想 93 4.1 HTTP和“会话” 93 4.1.1 保持状态 93 4.1.2 用cookies进行“会话”ID传输 95 4.1.3 URL手工改写 95 4.1.4 动态路径 96 4.1.5 DNS技巧 98 4.1.6 实际应用中的折衷方案 99 4.1.7 PHP的内嵌“会话”库 100 4.2 安全性考虑 106 4.2.1 不要信任Web 107 4.2.2 不要重新发明加密法 111 4.2.3 开发组需要资深人员 118 4.2.4 认证 118 4.3 为什么适用性很重要 120 4.3.1 Web应用程序的“适用性” 121 4.3.2 打折式适用性工程 124 4.3.3 适用性:只要做就可以了 126 4.4 小结 126 第5章 基本网络应用程序策略 127 5.1 PHP正常表格 127 5.2 方案策划 133 5.2.1 团队合作 133 5.2.2 目录结构 134 5.3 CVS:一致版本系统 135 5.3.1 CVS时间节省器: GUIS和CVS web 139 5.3.2 高级CVS 140 5.4 三层式应用程序 145 5.4.1 传统的客户端/服务器 145 5.4.2 PHP和多层应用程序 146 5.4.3 PHP和COM 147 5.4.4 PHP和Java 149 5.5 小结 150 第6章 PHP数据库访问 151 6.1 PHPLib:PHP基础库 151 6.1.1 PHPLib的历史 151 6.1.2 优点和缺点 152 6.1.3 重要文件 152 6.1.4 PHPLib客户化 152 6.2 数据库基本概念 153 6.2.1 可移植性 153 6.2.2 调试模式 154 6.2.3 错误处理 154 6.2.4 DB_Sql实例 154 6.2.5 会话 156 6.2.6 自动撤退 157 6.2.7 网页捕捉 157 6.2.8 串行器 157 6.2.9 会话实例 157 6.2.10 缩写I:page_open( ) 160 6.2.11 缩写II:purl( )、url( )和pself( ) 161 6.3 认证 162 6.3.1 PHP认证的优点 162 6.3.2 Auth实例 162 6.3.3 Auth内核 163 6.3.4 管理许可等级 165 6.3.5 位运算 166 6.4 小结 170 第7章 尖端应用程序 171 7.1 知识库 171 7.1.1 必要条件清单 172 7.1.2 条件清单 173 7.1.3 模板类 175 7.1.4 SQL递推式 179 7.1.5 身份确认 180 7.1.6 完成的产品 180 7.2 PHP和XML 180 7.2.1 什么是XML 180 7.2.2 DocBook 183 7.2.3 WML(Wireless Markup Language) 184 7.2.4 RDF—Resource Description Framework 184 7.2.5 XML文档 184 7.2.6 PHP和Expat 190 7.2.7 DOM—Document Object Model 197 7.2.8 LibXML—一个基于DOM的XML 分析 200 7.3 用WDDX相互交换数据 205 7.3.1 WDDX 205 7.3.2 挑战 205 7.3.3 可能的情况 206 7.3.4 用WDDX抽象化数据 206 7.3.5 WDDX数据类型 207 7.3.6 PHP和WDDX 208 7.3.7 WDDX函数 208 7.4 小结 210 第8章 案例研究 211 8.1 BizChek.com 211 8.1.1 Web 邮件 211 8.1.2 选择PHP 212 8.1.3 渴望升级 213 8.1.4 结论 213 8.2 SixCMS 213 8.2.1 公司背景 213 8.2.2 开放代码的商务 214 8.2.3 为什么用PHP 214 8.2.4 技术考虑事项 214 8.2.5 实际生活中的PHP 215 8.2.6 PHP:一个商业优势 216 8.3 Marketplayer.com 216 8.3.1 公司的背景 216 8.3.2 PHP产品 217 8.3.3 为什么选择PHP 217 8.3.4 在MarketPlayer.com产品开发中使用PHP的优势 217 8.3.5 PHP实际生活中的竞争 218 8.3.6 会话 218 8.3.7 PHP服务器集成 219 8.3.8 代码管理 219 8.3.9 前景 219 8.4 小结 219 8.5 参考 220 第三部分 深入研究PHP 第9章 扩充PHP 4.0:探究PHP内核 221 9.1 概述 221 9.2 什么是Zend?什么是PHP? 221 9.3 扩充可能性 222 9.3.1 外部模块 222 9.3.2 内嵌模块 223 9.3.3 Zend引擎 223 9.4 源代码格式 223 9.4.1 宏 224 9.4.2 内存管理 225 9.4.3 目录和文件函数 225 9.4.4 字符串处理 226 9.4.5 复杂类型 226 9.5 PHP的自动建造系统 226 9.6 创建扩充 228 9.7 编辑模块 229 9.7.1 编辑使用Make 229 9.7.2 手工编辑 229 9.8 使用扩充 230 9.9 故障处理 231 9.10 源代码讨论 231 9.10.1 模块结构 231 9.10.2 标题文件包含 231 9.10.3 声明输出函数 232 9.10.4 Zend函数块的声明 232 9.10.5 Zend模块的声明 234 9.10.6 Get_module()的执行 236 9.10.7 所有输出函数的实施 236 9.10.8 小结 237 9.11 接收变量 237 9.11.1 决定变量的数目 237 9.11.2 获取变量 238 9.11.3 处理数目变化的变量/选项参数 238 9.11.4 访问变量 240 9.11.5 处理参考变量传递的参数 243 9.11.6 为其他参数确保写安全 245 9.12 创建变量 246 9.12.1 概述 246 9.12.2 长(整)型 249 9.12.3 双精度(浮点)型 249 9.12.4 字符串 249 9.12.5 布尔型 250 9.12.6 数组 250 9.13 对象 253 9.14 资源 254 9.15 利用自动全局变量创建的宏 255 9.16 复制变量内容:复制构造函数 256 9.17 返回值 257 9.18 打印信息 258 9.18.1 phpinfo()中包含输出 259 9.18.2 执行信息 260 9.19 启动和关闭函数 261 9.20 调用用户函数 261 9.21 下一步该做些什么 265 9.22 参考:一些配置宏 265

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值