• --:)欢迎访问锋网源码(:--
  • 首页
  • RSS订阅
  • 常用软件
  • 网页模板
  • 网站运作
  • 锋网学院
  • 繁體中文

  • 学院首页
  • 新闻资讯
  • 网站运营
  • 网站开发
  • 美工设计
  • 数据库类
  • 服务器类
  • 网络应用
  • 操作系统
  • 软件教学
编程开发   认证考试   网络安全   文章搜索: 高级搜索
会员登录/控制面版 您的位置: 学院首页 >> 数据库类 >> 文章内容
 

精彩推荐

 
 

本类推荐文章

  • ACCESS集锦
 
 

本类阅读排行

  • 用SQL实现分布式数据复制
  • 数据库聊天室的“无刷新”技..
  • SQL语言快速入门之一 &..
  • 用Access 2000进行班级管理
  • Delphi中的Access技巧集
  • 浅谈ACCESS数据库升迁SQLSER..
  • 如何更改Access默认的中文输..
  • SQL Server 连接基础知识
  • 检查sql字符串中是否有单引号..
  • 基于WEB的数据库查询
  • ORACLE学习笔记--性能优化
  • ACCESS集锦
  • 能否编译mdb文件到exe文件?
  • ado如何使用sql函数?
  • 建立Access 数据库的安全门
  • Oracle数据库维护常用SQL语句..
  • Oracle数据库维护常用SQL语句..
  • 在 Access 中使用“存储过程..
  • Access 的最大容量
  • Vista下安装SQL Server 2005..
 
 

数据库管理员必须了解WHERE条件的重要性

  • 日期:2008-06-27     人气:     出处:     作者:
  • 字体大小:
  • 小
  • 中
  • 大

错误案例:数据库无法启动时报ORA-12708错误。

错误提示的解释如下:

 

ORA-12708 error while loading create database NLS parameter string

Cause: This is an internal error.
Action: Contact Oracle Support Services.

在跟踪启动过程时可以得到如下的信息:

 

select value$ from sys.props$ where name = :1
END OF STMT
PARSE #4:c=0,e=703,p=0,cr=0,cu=0,mis=1,r=0,dep=1,og=4,tim=4116419526
BINDS #4:
kkscoacd
Bind#0
oacdty=01 mxl=32(17) mxlc=00 mal=00 scl=00 pre=00
oacflg=18 fl2=0001 frm=01 csi=871 siz=32 off=0
kxsbbbfp=0af128c8 bln=32 avl=17 flg=05
value="NLS_RDBMS_VERSION"
EXEC #4:c=0,e=976,p=0,cr=0,cu=0,mis=1,r=0,dep=1,og=4,tim=4116420710
FETCH #4:c=0,e=112,p=0,cr=3,cu=0,mis=0,r=1,dep=1,og=4,tim=4116420867
ORA-12708: 鍔犺浇鍒涘缓鏁版嵁搴?NLS 鍙傛暟 NLS_RDBMS_VERSION 鏃跺嚭閿?
EXEC #1:c=593750,e=10770613,p=176,cr=1254,cu=149,mis=0,r=0,dep=0,og=1,tim=4120039529
ERROR #1:err=1092 tim=18857926

 

 

 

 

可以发现,上面的示例中有部分乱码,数据显示,启动读取NLS_RDBMS_VERSION时出现错误。

使用免费的AUL工具后,我们可以将PROPS$字典表挖掘出来,大家会发现下面的数据:

 

 

DICT.BASE|ZHS16GBK|dictionary base tables version #
DEFAULT_TEMP_TABLESPACE|ZHS16GBK|Name of default temporary tablespace
DEFAULT_PERMANENT_TABLESPACE|ZHS16GBK|Name of default permanent tablespace
DEFAULT_TBS_TYPE|ZHS16GBK|Default tablespace type
NLS_LANGUAGE|ZHS16GBK|Language
NLS_TERRITORY|ZHS16GBK|Territory
NLS_CURRENCY|ZHS16GBK|Local currency
NLS_ISO_CURRENCY|ZHS16GBK|ISO currency
NLS_NUMERIC_CHARACTERS|ZHS16GBK|Numeric characters
NLS_CHARACTERSET|ZHS16GBK|Character set
NLS_CALENDAR|ZHS16GBK|Calendar system
NLS_DATE_FORMAT|ZHS16GBK|Date format
NLS_DATE_LANGUAGE|ZHS16GBK|Date language
NLS_SORT|ZHS16GBK|Linguistic definition
NLS_TIME_FORMAT|ZHS16GBK|Time format
NLS_TIMESTAMP_FORMAT|ZHS16GBK|Time stamp format
NLS_TIME_TZ_FORMAT|ZHS16GBK|Time with timezone format
NLS_TIMESTAMP_TZ_FORMAT|ZHS16GBK|Timestamp with timezone format
NLS_DUAL_CURRENCY|ZHS16GBK|Dual currency symbol
NLS_COMP|ZHS16GBK|NLS comparison
NLS_LENGTH_SEMANTICS|ZHS16GBK|NLS length semantics
NLS_NCHAR_CONV_EXCP|ZHS16GBK|NLS conversion exception
NLS_NCHAR_CHARACTERSET|ZHS16GBK|NCHAR Character set
NLS_RDBMS_VERSION|ZHS16GBK|RDBMS version for NLS parameters
GLOBAL_DB_NAME|ZHS16GBK|Global database name
EXPORT_VIEWS_VERSION|ZHS16GBK|Export views revision #
DBTIMEZONE|ZHS16GBK|DB time zone

读者可以发现,props$.value$列都被更新为ZHS16GBK,显然这是在一次不适当的更新操作中遗漏了WHERE条件。由此可见,数据库管理员必须了解WHERE条件的重要性,并且在UPDATE时也一定不要遗漏掉。

相关文章
相关软件

  • 网友评论:
  • 查看所有评论
  • 我要发表评论
 

关于本站 | 广告联系 | 版权声明 | 网站地图 | 加入收藏 | 帮助中心 |

Copyright © 2006-2007 fwvv.net  程序支持:木翼  皖ICP备06004916号