做父母的总希望给自己的子女取一个响亮的、富有含义的名字。有时候家长为了找到一个合适的名字,会拿起平时碰都不碰的汉语大辞典翻个好几天。天下父母心呀。其实在数据库中创建对象时,管理员也要对其进行命名。

  其实在数据库中创建对象时,管理员也要对其进行命名。一些有经验的数据库管理员,对其命名也会小心翼翼。既要能够叫的响亮,又要能够代表具体的应用场景。有时候对表等数据库对象进行命名的时候,可能比维护数据库还要伤脑筋。笔者对此就有非常深的感受。在数据库设计的时候,一套命名规则编制下来,脑袋就会觉得很累。不过等大家多编制几套后,就会掌握其中的规律。熟能生巧,掌握了规律再去取名的话,就会简单许多。有时候甚至可以信手拿来。笔者这次就跟大家分享一下对数据库对象进行命名的一些规律。简单起见,笔者以数据库对象表为例,谈谈命名的一些技巧。

  一、牢记命名空间。

  在Oracle数据库中,跟其他的数据库不同,有一个叫做命名空间的概念。在同一个命名空间中,其名字不可以重复。如表与视图就共享同一个命名空间,为此就要求不仅表的名字不能够相同,而且表的名字与视图的名字也不能够相同。因为他们处于同一个命名空间。类似的,表与函数也是同处于一个表空间,为此他们也不能够同名。不过表与索引、表与约束等等却属于不同的命名空间。也就是说,表的名字可以与约束的名字相同。所以说,数据库管理员在给表等对象命名的时候,一定要了解哪些对象共享同一个名称空间。如果在同一个名称空间内的,即使对象不同(如视图与表),但是他们仍然不能够取相同的名字。

  为了避免同一个命名空间内重名的现象,笔者建立在命名的时候最好能够根据对象的不同加上对象的固有前缀。如大部分的数据库管理员,在给表取名的时候,一般不会表名前面加上表对象的前缀。但是在定义函数或者视图对象的时候,则会加上前缀。如在函数前面可能会加上FN的前缀,而在视图前面可能会加上vi的前缀。如此的话,在同一个命名空间内也不用担心对象重名的问题。不过无论怎么说,这个命名空间的概念数据库管理员必须牢记。即使在实际的工作中,可以通过前缀等手段轻易的避免这个陷阱,但是在Oracle数据库管理员的认证考试中,这个命名空间也是一个必要的知识点。所以无论从实际的工作还是认证考试的需要,对于这个命名空间管理员都必须要有一个清晰的认识。

  二、表名大小写的控制。

  一般情况下Oracle数据库中的表名或者列名是不区分大小写的。在创建表或者列的时候,即使管理员采用了小写的名字,数据库在将其保存到数据字典之前,会先将其转换为大写,再将他们保存到数据字典中。这也就是为什么我们命名使用小写的子母命名,但是下次查看表的名字的时候,却变成了大写。

给数据库表列取一个好的名字相关推荐

  1. wpf中使用控件时,最好给控件取一个好的名字

    wpf中使用控件时,最好给控件取一个好的名字, 比如按钮A可以  取名为 btnA 这样使用会是编程清晰.

  2. 工程实践:如何给变量取一个好的名字

    工程实践:如何给变量取一个好的名字 在上一篇文章中跟大家分享了关于函数命名的一些实践心得,今天我们继续命名这个话题,来讲一讲如何对变量命名. 以下是本文的目录大纲: 一. 变量命名风格 二. 变量命名 ...

  3. DBCHM-最简单、实用的数据库表列批注维护工具

    DBCHM支持SqlServer/MySql/Oracle/PostgreSQL/Sqlite等数据库的表列批注维护管理. DBCHM有以下几个功能 表,列的批注可以编辑保存到数据库. 表,列的批注支 ...

  4. 使用 OPEN SQL 语句读取数据库表数据的一个补充练习

    首先按照本系列前一篇文章如何创建最简单的 ABAP 数据库表,以及编码从数据库表中读取数据介绍的步骤,创建两个数据库表: 上图 ZPERSON 表里,包含了5条记录,分别代表5个人的 ID 和 名称. ...

  5. 使用mybatis操作MySQL中的数据库表1---读取数据

    1)MySQL中创建表 create table student ( id int(11) not null, name varchar(255) default null, email varcha ...

  6. 用VB代码在SQL SERVER 中创建数据库,表,列.以及对数据库的操作

    前面看了一编用VB代码创建ACCESS数据库的文章,写的很好. 根据思路,写下创建SQL 数据库的方法,供大家参考. 1:引用ADO2.5lib 2:在窗体上添加一个按钮COMMAND1 3:按钮代码 ...

  7. mysql 表 字符集_如何查看MySQL数据库/表/列的字符集?

    我就是这么做的- 对于模式:SELECT default_character_set_name FROM information_schema.SCHEMATA WHERE schema_name = ...

  8. MySQL复制数据库表到另一个数据库

    参照网上使用 mysqldump 的教程,都没成功,下面是复制成功的步骤: 1.登录mysql:mysql -u -root -p,输入密码: 2.查看数据库:show databases; 3.创建 ...

  9. 【C#】如何给变量取一个好的名字

    讲一讲如何对变量命名. 以下是本文的目录大纲: 一. 变量命名风格 二. 变量命名最高境界 三. 变量命名最佳实践 一.变量命名风格 变量命名风格通常会根据不同的变量类型来区分,以Java语言为例,根 ...

最新文章

  1. 计算机组成原理——数据表示、运算与校验1
  2. ideaIU-2018.1.5.win-scala 激活方式
  3. MongoDB 4.6.1 c++ driver 编译
  4. 好大夫王航:长尾开发者应尽快接入百度轻应用
  5. 冠军方案解读,ICPR 2020 大规模商品图像识别挑战赛
  6. 值不值得入手_看好三阳的小拉力,但不知道值不值得入手?
  7. 微型计算机8位数据总线,微机原理答案1
  8. _cdecl与_stdcall的区别
  9. 计算化侦查之根据公交卡记录抓小偷
  10. idea搜狗输入法中文变成繁体字
  11. tplink虚拟服务器 tcp,关于TP-Link路由器端口映射详解
  12. MYSQL附近的人设计思路
  13. Element中MessageBox弹窗取消回调事件
  14. Web前端 | HTML | 基础
  15. OSWatcher的安装使用
  16. 印象笔记mac版 同步问题_Typora和印象笔记的完美同步及备份
  17. 面试必备SQL调优方案
  18. 卡了一年的联通IPTV,能查的都查了,最后发现是电源的问题
  19. linux学习——echo -n 和echo -e 参数意义
  20. 力扣周赛 5197. 最小绝对差(java)

热门文章

  1. (To Learn More) ML Lecture 1: Regression - Case Study(下)
  2. 怎样在word2007中插入图片和表格
  3. python图片转手绘_在Mac上用python运行图片转手绘图的代码报错,请各位大佬帮忙。...
  4. Docker 离线安装 .net Core 6.0 环境部署
  5. 建立一个个人网站部署到github上
  6. UE5引擎入门,第一周总结:简单的旋转魔方小项目
  7. 关于单片机串口单步调试运行正常,全速异常
  8. 值得一读的20个经典小故事 (断 箭)
  9. 微信免密支付php代码实现,微信刷卡支付接入模式及免密流程
  10. Black Rock Shooter