今天,把 秋色园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

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

  1. oracle “**with as**”短语,也叫做子查询部分。

    oracle "with as"短语,也叫做子查询部分. 如果一个sql片段被重复使用或者sql本身比较繁琐,可以考虑将sql片段单独拿出来,起一个别名. 例: withe as ...

  2. Oracle数据库SQL语句(四)—子查询(嵌套查询)

    Oracle数据库SQL语句(四) 子查询(嵌套查询) 1.单行子查询 SELECT * FROM stuWHERE ID > (SELECT ID FROM stu WHERE NAME =' ...

  3. mysql 子查询添加索引_mysql – 你能索引子查询吗?

    我有一个表和一个如下所示的查询.有关工作示例,请参阅此 SQL Fiddle. SELECT o.property_B, SUM(o.score1), w.score FROM o INNER JOI ...

  4. Oracle入门--水表项目(单表查询,链接查询,左右外连接,子查询,分页查询)(3)

    水表项目建表 1.1.1 分析 1.1.2 SQL实现 表结构 -- <自来水公司收费系统> -- 1 业主类型表 create table t_ownertype(id number p ...

  5. oracle去重差个数,Oracle基础(五):多表查询

    一.多表查询 (一)简单多表查询 1.多表查询的机制 1)SQL: SELECT * FROM emp; --14条记录 SELECT * FROM dept;--4条记录 SELECT * FROM ...

  6. mysql 子查询分页_MySQL子查询,正则表达式,索引,分页,三大范式

    子查询 可以将子查询放在许多的 SQL 子句中,包括: • WHERE 子句• HAVING 子句 • FROM 子句 使用子查询的原则 • 子查询放在圆括号中. • 将子查询放在比较条件的右边. • ...

  7. 【Oracle 数据库】奶妈式教程 day09 子查询

    子查询 子查询指一个查询语句嵌套在另一个查询语句内部的查询 1.from后面的子查询 举例:查询员工的姓名和他上级的姓名 SELECT E.*, E2.EMPNO, E2.ENAME MNAME, E ...

  8. MySQL基础——数据库和SQL概述\MySQL基本使用\DQL语言学习\条件查询\排序查询\常见函数\分组查询\连接查询\子查询\分页查询\联合查询

    本文详细讲解了MySQL中DQL语言,也就是数据查询语句的使用.全文3w余字,是对学习MySQL知识的整理总结,因为篇幅较长,MySQL基础知识余下部分发表在余下博客中 DML语言学习\插入数据\删除 ...

  9. jq取第一个子元素为select_Java修行第036天---MySQL中的子查询,分页语句,三大范式...

    学习目标: 1.掌握子查询 2.了解正则表达式 3.理解索引的作用和创建索引 4.了解用户管理 5.掌握分页语句 6.了解执行计划和数据库引擎 7.理解数据库设计的三大范式 综合程序图: 1 子查询知 ...

  10. MySQL-数据操作-分组查询-连接查询-子查询-分页查询-联合查询

    文章目录 ==分组查询== 基础 案例 特点 分组查询中的筛选条件分为两类 注意事项 分组查询案例 案例 ==连接查询== 概述 ==sql92标准== 概述 等值连接 非等值连接 自连接 案例 == ...

最新文章

  1. Tomcat 源码阅读记录(1)
  2. bos 获取数据库连接_java解析数据接口获取json对象
  3. F41G-UT 安装Windows server 2003系统后无法安装显卡驱动的解决办法
  4. Oracle发布更新使数据库性能优化达到75%
  5. 广西工学院2000级计算机系,广西工学院管理系信管教研室李明 - 欢迎访问广西科技大学.ppt...
  6. 如何使用android studio,怎么学习使用Android Studio?
  7. 若想学 HTML,应从何入手?
  8. 中国水下充气袋行业市场供需与战略研究报告
  9. 【转】tensorflow中的batch_norm以及tf.control_dependencies和tf.GraphKeys.UPDATE_OPS的探究
  10. Hadoop安装教程_单机/伪分布式配置
  11. linux面试命令问题,面试常见的Linux命令及问题整理
  12. 红帽linux64系统下载,红帽Linux 8.0 iso-RHEL 8.0 64位下载|RHEL 8.0 64位 - 爱学府软件园...
  13. 百度地图API之绘制折线及点击事件
  14. 人工智能/虚拟现实技术的工程伦理分析:以电影《头号玩家》为例
  15. PHP是世界上最好语言吗?
  16. 【HTML】iframe标签
  17. Python让Excel飞起来—批量进行数据分析
  18. 为什么需要传递HINSTANCE给CreateWindow?
  19. 一图让你快速弄懂客户端渲染(CSR)与服务端渲染(SSR)
  20. STM32+OLED屏显应用实例

热门文章

  1. 据说程序员是这样写代码的
  2. 我为什么不再推荐 RxJava
  3. linux怎样安装麒麟双系统,U盘启动中标麒麟V6双系统安装教程
  4. java动作触发声音_关于鼠标动作的声音如何添加
  5. Ubuntu14.04安装
  6. java contains_生成不重复随机数 java
  7. go语言项目目录文件的管理样式
  8. c语言创建若干个成绩栏目,2015年计算机二级《C语言》考试上机测试题(6)
  9. .Net 并发写入文件的多种方式
  10. Android Power Placeholder | 中文教学视频