Oracle问题小记五:服务启动-索引-子查询-分页存储过程-阿里云开发者社区

开发者社区> 泡泡浅眠> 正文

Oracle问题小记五:服务启动-索引-子查询-分页存储过程

简介:
+关注继续查看

今天,把 秋色园QBlog 的数据导到Oracle中运行,重拾Oracle,过程的主要问题记录下:

 

1:服务启动问题

这个问题发生多次了,那个毛网管没事又让人改计算名称,Oracle久没开了也没在意,Oracle服务启动总失败,折腾后才发现,于是把计算机名称改回去,重启电脑,再启用服务,正常。

 

2:索引问题

复制代码

数据导到Oracle后,发现一些简单的查询变的相当的慢如:

select id,username,title from blog_content where userid=111 order by id desc

后来经网页点拔,给title加上索引就快了:“select中的放在包含索引(oracle中称覆盖索引)”
后来其它查询慢的,全给加索引,速度才上去,看来搞Oracle不搞索引,是没法玩的。

复制代码

 

3:子查询语句问题

正常代码:

SELECT count(*) as UserCount,
(SELECT count(*)  FROM Blog_Content WHERE TypeID=0) as ArticleCount
FROM Blog_User

此语句在Access、Mssql、Sqlite、Mysql下皆正常,唯独 Oracle不成,加个函数解决如下:

SELECT count(*) as UserCount,
min((SELECT count(*)  FROM Blog_Content WHERE TypeID=0)) as ArticleCount

FROM Blog_User

 

4:存储过程调用问题

问题:

存储过程的参数varchar2,如果代码中参数为空,会报异常:ORA-01084: invalid argument in OCI call view

如果在PL/SQL中执行,而不会错。

解决方法是为空时,传递DBNull.Value。

 

5:完善 CYQ.Data for Oracle 版本分页存储过程。

直接修改了文章:折腾Oracle问题小菜记[分页存储过程/查询所有表、视图、存储过程/查询表、视图、存储过程字段结构与参数](三)

 

6:修改字段顺序

增加列,又不想放在最后面,拉不上去,只好写代码更改顺序号。

 

select object_id from all_objects where  object_name='BLOG_COMMENT'--查表ID
select COL#,name from sys.col$ where obj#=49244--看一下字段顺序序号

update sys.col$ set COL#=8 where obj#=49244 and name='CREATETIME'--把序号更新了

 

7:更新序列初始值

数据库共用一个序列为自增ID,导完数据后序列值没变,需要调整值。

ALTER SEQUENCE 序列名称 Increment By 新的数字;

版权声明:本文原创发表于博客园,作者为路过秋天,原文链接:

http://www.cnblogs.com/cyq1162/archive/2011/05/10/2042295.html

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
NodeJs操作MongoDB之分页功能与常见问题
NodeJs操作MongoDB之分页功能与常见问题一,方法介绍 1,聚合操作之count count()方法可以查询统计符合条件的集合的总数 1 db.User.count() // 此方法等价于 db.User.find().count()在分布式集合中,会出现计算错误的情况,这个时候推荐使用aggregate; 2,find() 方法以非结构化的方式来显示所有文档。
1392 0
sqlserver 通用分页存储过程
来源:http://www.jb51.net/article/19936.htm CREATE PROCEDURE commonPagination @columns varchar(500), --要显示的列名,用逗号隔开 @tableName varchar(100), --要查询...
674 0
通过定制orabbix监控分析潜在的Oracle问题
在之前的博客中分享过 简单定制Orabbix监控项   http://blog.itpub.net/23718752/viewspace-1769773/ 定制的功能在Orabbix中实现非常灵活而且轻巧,还是能够感受到一种开源风的清爽。
796 0
手动绑定SQLDataSource到GridView后分页的问题(转)
由于GridView的数据源是后台CS文件中代码绑定的。所以程序运行时,点击分页数后没有反应。解决办法如下: using System;using System.Data;using System.Configuration;using System.
681 0
在mongodb服务器上存储和执行 js 函数 - 存储过程
虽然官方不推荐使用将业务逻辑存储在数据库中,并且提示在 mongodb 中执行 javascript 存在性能限制。 但实际上,将 javascript 函数存储在 mongodb 中执行,还是非常有必要的,更方便,许多场景下性能会更好(在执行大量查询处理时不需要将数据传回客户端引擎)。 在目前的版本中,我们任然可以将 javascript 函数存储在 mongodb 内置的一个特殊集合 db.system.js 中,然后这些变量就可以在任何 mongodb 的 javascript 上下文中调用,包括:db.eval()、$where子句、mapReduce。 自从 mongodb 3
34 0
+关注
2248
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载