转载:http://liriguang.iteye.com/blog/701419
虽然oracle主要的工作是dba所做的事情,不过作为一个普通的开发人员也时时刻刻和数据库打交道,普通开发人员也得有一些基本数据库技能。下面是我在开发中的一些oracle数据库开发的一些经验。欢迎大家提意见。
表命名是以英文名称为原则,表示该表的具体意义,例如商品表可以叫item,商品图片表可以叫item_image。
如果公司业务复杂,数据库过多,schema也比较多,则要根据schema的来命名,例如:在crm下面可以用crm开头命名CRM_USER.
临时表应该以tmp开头TMP_USER,这样的表一段时间后将会清除。
备份数据使用的表应该使用bak开头,这样的表在被确认不需要后将被清除。
注:表的命名不能超过30个字符
表达该字段的含义
不能用oracle中的保留字
注释一定要详细加上,如status 状态,0 有效,1删除
注:字段长度也尽量简化(如crm_test_times_currently,太长)
主键(primary key)索引
PK_表名_列名
唯一键(unique key)索引
UK_表名_列名
普通索引
IDX_表名_列名
注:索引的命名不能超过30个字符(在索引中的列名可以简写,一般情况下不简写索引中的表名)
过程的命名规则
以SP_开头,过程中要注解此过程的作者,编写时间,此过程的功能
函数的命名规则
以FUN_开头,函数中要注解此函数的作者,编写时间,此函数的功能
变量的命名规则
本地变量以l_开头;
传递参数:p_变量名_in (传入)
p_变量名_out(传出)
游标类型cur_开头;
序列的命名
SEQ_表名_列名
如何在程序中使用序列所产生的值
INSERT INTO test(id,nick)
VALUES(seq_test_id.nextval,'test');
如何查询序列的当前值:
select seq_test_id.currval from dual;
SQL语句所有表名,字段名全部小写,SQL保留字大写;
select *查询语句不允许出现,要明确写查询哪些列;
连接符or、in、and、以及=、<=、>=等前后加上一个空格
SQL语句注意缩进
where子句书写时,每个条件占一行,语句另起一行时,以保留字或者连接符开始,连接符右对齐
多表连接时,使用表的别名来引用列
sql示例:
SELECT aa.title,aw.bid,aw.closingdate,u.nick
FROM t_users u,
t_test tt
t_item aa
WHERE u.id = tt.seller
AND tt.id= aa.id
AND u.nick =‘test’;
where条件中尽量减少使用常量比较,改用绑定变量
尽量减少order by和group by排序操作 ,有些排序操作可以由应用程序完成
如必须使用排序操作,请遵循如下规则 :
1.排序列上有索引
2.如结果集不需唯一,使用union all代替
union
尽量避免对索引列进行计算,或者对列进行函数操作然后查询
例如:
SELECT t.id FROM test t
WHERE upper(t.nick) = :1
正确的是:
SELECT t.id FROM test t
WHERE t.nick = upper(:1)
注意绑定变量与索引列数据类型的一致性
表test字段id的类型为number
错误的是:
SELECT t.subject from test
WHERE t.id=‘5’;
此写法将不会走id字段上的索引,执行计划为全表扫描
正确的是:
SELECT t.subject FROM test
WHERE t.id=5;
分页sql写法
select * from (select t.*,rownum as rn from (select id,name,sex from test order by id desc) t where rownum < 21) where rn >19;
适当使用提示优化
select /* + index(a idx_test)*/ count(*) from test a;
分享到:
相关推荐
一、sql书写规范: 二、书写优化性能建议 三、其他经验性规则 一、sql书写规范: 1、sql语句的所有表名、字段名全部小写,系统保留字、内置函数名、sql保留字大写。 2、连接符or、in、and、以及=、、>=等前后...
PL/SQL书写规范 1、 语句中出现的所有表名、字段名全部小写,系统保留字、内置函数名、Sql保留字大写。 2、 连接符or、in、and、以及=、、>=等前后加上一个空格。 3、 对较为复杂的sql语句加上注释,说明算法、...
sql 书写规范 让你的sql更标准 sql 书写规范 让你的sql更标准 sql 书写规范 让你的sql更标准
ORACLE高效SQL书写规范
sql 书写 规范 from 网络 仅供大家参考。
ORACLE SQL书写规范,希望大家下载看看啊
一、sql书写规范: 二、书写优化性能建议 三、其他经验性规则
sql存储过程书写规范例子,可以从本文中参考一些基本的存储过程书写格式.
任何编程语言或者脚本的书写规范都非常重要,正确的规范可以有效提升效率,且一开始养成良好的书写习惯对理解SQL脚本的执行顺序和结构、乃至于后来的开发都大有裨益;相反,一旦养成坏习惯,非但个人开发质量受影响...
Oracle Sql高效语句的写法诀窍,大牛写的,不得不佩服
ORACLE高效SQL-书写规范1
SQL-书写规范详细描述了ORACLE数据库的各项代码优化心得,对数据库脚本编写帮助显著。
SQL書写規範 SQL编程书写的规范及一些书写优化性能建议
NULL 博文链接:https://beee.iteye.com/blog/2106218
SQL语句集是以html的形式介绍SQL语句的编写及规范,对于初学者养成良好的SQL书写规范有帮助。
数据库开发规范(MS SQL SERVER))2019最新版,包括数据库、表、视图、字段等数据库对象的命名规范,以及T_SQL的书写规范
SQL语句优化指南、写SQL语句时,注意SQL语句的格式、基于DBLINK的查询,要考虑尽量减少网络TRIP。
mysql开发规范文档,常用规范,建表规范,sql书写规范
SQL 语句书写与性能调优规范很好 很强大! SQL语句各种写法的性能优劣,但是如果将系统提交实际应用后,随着数据库中数据的增加,系统的响应速度就成为目前系统需要解决的最主要的问题之一
命名规范;程序书写规范;sql优化规则;索引的使用原则;