ORACLE问题解决集合(持续更新)
再执行此语句查询出来的SQL语句:例如alter table 表名 allocate extent;
二.oracle用localhost连接数据库能连上,用ip连接不上
解决方法1:打开"开始"菜单->oracle...->配置和移植工具-->Net Configuration Assistant;删除安装或者建库时默认创建的listener;然后重新添加一个新的Listener;
解决办法2:
1、修改配置文件listener.ora将HOST=你自己的主机名
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = sweetboy_pc)(PORT = 1521))
)
)
文件所在路径:
C:oracleproduct10.2.0db_1NETWORKADMIN
2、检查监听设置,重新启动监听服务。
原因:原来的Listener中host是localhost; 不兼容机器名;新添加的Listener中host用的是机器名; 兼容localhost;
三..net连接ORACLE问题合集
问题1:提示OraOps10.dll无法找到。
解决办法:将client_1文件夹的属性中,点击安全,将Authenticated Users的权限设置为全部。
问题2:获取模型后,发现获取到的二进制文件为空。
解决办法:经多方对比,发现保存模型文件的二进制为long raw型,而普通二进制为BLOB型,而经过网上查找,发现long raw是一种老的数据模式,逐渐被BLOB取代,遂直接将long raw改为BLOB,数据下载正常。
问题3:oracle中一个字段可能是null那样的话 假如一个字段类型是整形 null+整数还是null这样的话写sql就出问题了
解决办法:可以用nvl(ATTR_10041001,0)把字段中是null的替换成0 ,这个时候所有的null就变成0了 当然你也可以nvl(ATTR_10041001,1),这样所有的null就替换成1了 。
问题4: ora-12514:TNS:listener does not currently know of service requested in connect descriptor
解决办法:检查监听是否配置正确,检查web.config中连接串信息中 (CONNECT_DATA=(SERVICE_NAME=ORCL))中是否正确,确保vs引用的dll是正确的版本,小版本也要注意。
问题5:调试时能正常链接,发布到ISS却无法链接。
解决办法:将10.2.0文件夹的属性中,点击安全,将Authenticated Users的权限设置为全部
,并点击高级,在高级安全设置中,将最下面的两个复选框全部选中,尤其是最后一项,括号标识为(P)的项,然后重启电脑。
问题6:win7 64位VS2013连接ORACLE时,需要修改注册表
HKEY_CURRENT_USER/Software/Microsoft/VisualStudio/12.0/WebProjects /v Use64BitIISExpress /t REG_DWORD /d 1
问题7:win2008 r2发布不上
1安装oracle 10g 32位客户端,地址:
C:发布文件oracle 10g 32位客户端
2安装oracle 11g 64位 服务端,地址:
C:发布文件oeacle 11g 64位服务端
服务端安装地址最好在客户端安装地址之前(未测试服务端安装地址在客户端安装地址之后的情况),服务端密码不能以数字开头。
3配置iis。
4安装framework4.0,地址:
C:发布文件framework4.0
Windows server 2008 r2版本不同,对应安装软件不同,可在微软官网下载不同版本。
5发布BS程序。
问题8:PLSQL连接正确,但程序连接报用户名和密码错误
解决办法:检查用户名和密码大小写,ORACEL会自动 将小写转换为大写。
四.ORACLE解锁
1. 查找锁定的详细信息 库以及当前用户以及其他信息。LOCK_LEVEL表示那个表被锁定,同时锁定的是行还是表,当解除行锁定后,所有的表锁定可能都解除。
select s.username,
decode(l.type,"TM","TABLE LOCK",
"TX","ROW LOCK",
NULL) LOCK_LEVEL,
o.owner,o.object_name,o.object_type,
s.sid,s.serial#,s.terminal,s.machine,s.program,s.osuser
from v$session s,v$lock l,dba_objects o
where s.sid=l.sid
and o.object_id=l.id1
and s.username is not null
2. 对锁定的数据解锁
alter system kill session "200,6339";"200’表示1.中的SID,’6339"表示1.中的SERIAL#。
3. 锁定表的查询
SELECT a.object_id, a.session_id, b.object_name
FROM v$locked_object a, dba_objects b
WHERE a.object_id = b.object_id
五.ORACLE 客户端与服务端版本不同时系统访问问题
问题描述:
ORACLE服务端数据库版本:ORACLE 11gR2
ORACLE客户端版本:ORACLE 10gR2
WEB服务端:IIS 6.0
应用程序:精致MES信息管理系统2.0
客户端B/S访问错误提示:数据库名或密码错误
原因:
由Oracle.DataAccess.dll文件的的版本号引起。
在B/S程序的目录下bin目录中Oracle.DataAccess.dll文件的版本为10.2.0.100,当数据库的版本与客户端的版本不一致时,出现上述报错。
解决方法:
在web.config中修改,在 configSections节点结束之后增加如下内容:
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Oracle.DataAccess"
publicKeyToken="89B483F429C47342"
culture="neutral" />
<bindingRedirect
oldVersion="10.2.0.100"
newVersion="2.112.1.0"/>
</dependentAssembly>
</assemblyBinding>
以上数据库服务端的版本为ORACLE 11gR2,版本号:2.112.1.0
以上是 ORACLE问题解决集合(持续更新) 的全部内容, 来源链接: utcz.com/z/532354.html