﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-176142998-随笔分类-数据库</title><link>http://www.blogjava.net/176142998/category/33623.html</link><description /><language>zh-cn</language><lastBuildDate>Tue, 11 Aug 2009 12:14:58 GMT</lastBuildDate><pubDate>Tue, 11 Aug 2009 12:14:58 GMT</pubDate><ttl>60</ttl><item><title>XP+WIN7双系统中同步使用oracle的方法</title><link>http://www.blogjava.net/176142998/archive/2009/08/09/290399.html</link><dc:creator>飞飞</dc:creator><author>飞飞</author><pubDate>Sat, 08 Aug 2009 16:11:00 GMT</pubDate><guid>http://www.blogjava.net/176142998/archive/2009/08/09/290399.html</guid><wfw:comment>http://www.blogjava.net/176142998/comments/290399.html</wfw:comment><comments>http://www.blogjava.net/176142998/archive/2009/08/09/290399.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/176142998/comments/commentRss/290399.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/176142998/services/trackbacks/290399.html</trackback:ping><description><![CDATA[&nbsp;
<p style="text-indent: 21pt" class="MsoNormal"><span style="font-family: 宋体; font-size: 12pt">借</span><span style="font-size: 12pt">windows7</span><span style="font-family: 宋体; font-size: 12pt">系统的风光。我这几天也开始玩</span><span style="font-size: 12pt">win7</span><span style="font-family: 宋体; font-size: 12pt">，笔记本系统我都重装了</span><span style="font-size: 12pt">5-6</span><span style="font-family: 宋体; font-size: 12pt">次了，考虑到</span><span style="font-size: 12pt">win7</span><span style="font-family: 宋体; font-size: 12pt">还不成熟、我又比较喜欢</span><span style="font-size: 12pt">win7</span><span style="font-family: 宋体; font-size: 12pt">，所以考虑使用装双系统</span><span style="font-size: 12pt">XP+WIN7</span><span style="font-family: 宋体; font-size: 12pt">，花了</span><span style="font-size: 12pt">2</span><span style="font-family: 宋体; font-size: 12pt">个小时将</span><span style="font-size: 12pt">XP</span><span style="font-family: 宋体; font-size: 12pt">、</span><span style="font-size: 12pt">WIN7</span><span style="font-family: 宋体; font-size: 12pt">重新全部安装，打好补丁，升级，将自己常用的软件都安装上</span></p>
<p><span style="font-family: 宋体; font-size: 12pt">工作原因需要安装</span><span style="font-size: 12pt">ORACLE</span><span style="font-family: 宋体; font-size: 12pt">，考虑双系统中都安装</span><span style="font-size: 12pt">ORACLE</span><span style="font-family: 宋体; font-size: 12pt">，系统切换之间数据的使用也需要一起切换，考虑</span><span style="font-size: 12pt">XP</span><span style="font-family: 宋体; font-size: 12pt">和</span><span style="font-size: 12pt">WIN7</span><span style="font-family: 宋体; font-size: 12pt">都安装</span><span style="font-size: 12pt">ORACLE</span><span style="font-family: 宋体; font-size: 12pt">软件，公用一个数据库文件。经过几个小时的奋战，终于完成预期的目标。</span></p>
<p style="text-indent: 21pt" class="MsoNormal"><span style="font-family: 宋体; font-size: 12pt">首先是双系统的安装中需要注意的，</span><span style="font-size: 12pt">2</span><span style="font-family: 宋体; font-size: 12pt">个系统的机器名必须一样。否则再同步的时候会出现错误，这种错误也都是能再装完之后解决，所以，机器名不一样也可以，就是后面麻烦下而已。</span></p>
<p><span style="font-size: 12pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="font-family: 宋体; font-size: 12pt">系统硬盘规划如下：（硬盘</span><span style="font-size: 12pt">320G</span><span style="font-family: 宋体; font-size: 12pt">分区买来就是分的</span><span style="font-size: 12pt">4</span><span style="font-family: 宋体; font-size: 12pt">个区，本人懒惰，也就懒得再去分小了、因安装的是双系统的原因，</span><span style="font-size: 12pt">C</span><span style="font-family: 宋体; font-size: 12pt">盘和</span><span style="font-size: 12pt">D</span><span style="font-family: 宋体; font-size: 12pt">盘再显示上会根据登陆的系统而变化、最后</span><span style="font-size: 12pt">2</span><span style="font-family: 宋体; font-size: 12pt">个分区则不变化，所以将公用数据文件安装再</span><span style="font-size: 12pt">DISK1</span><span style="font-family: 宋体; font-size: 12pt">盘）</span></p>
<p style="text-indent: 21pt" class="MsoNormal"><span style="font-family: 宋体; font-size: 12pt">首先我在</span><span style="font-size: 12pt">XP</span><span style="font-family: 宋体; font-size: 12pt">系统的系统盘上只安装</span><span style="font-size: 12pt">10.2.0</span><span style="font-size: 12pt">.1.0</span><span style="font-family: 宋体; font-size: 12pt">数据库软件。</span></p>
<p style="text-indent: 21pt" class="MsoNormal"><span style="font-family: 宋体; font-size: 12pt">然后再单独创建数据库（单独创建的数据库文件位置存放再</span><span style="font-size: 12pt">DISK1</span><span style="font-family: 宋体; font-size: 12pt">中如：</span><span style="font-size: 12pt">oradb</span><span style="font-family: 宋体; font-size: 12pt">）。</span></p>
<p style="text-indent: 21pt" class="MsoNormal"><span style="font-family: 宋体; font-size: 12pt">建立监听、配置本地</span><span style="font-size: 12pt">NET</span><span style="font-family: 宋体; font-size: 12pt">服务名。</span></p>
<p style="text-indent: 21pt" class="MsoNormal"><span style="font-family: 宋体; font-size: 12pt">一切完好之后再使用升级补丁，将</span><span style="font-size: 12pt">Oracle</span><span style="font-family: 宋体; font-size: 12pt">升级至</span><span style="font-size: 12pt">10.2.0</span><span style="font-size: 12pt">.3.0</span><span style="font-family: 宋体; font-size: 12pt">，升级时间大约</span><span style="font-size: 12pt">30</span><span style="font-family: 宋体; font-size: 12pt">分钟，根据电脑性能时间会有变化。</span></p>
<p style="text-indent: 21pt" class="MsoNormal"><span style="font-family: 宋体; font-size: 12pt">然后再切换至</span><span style="font-size: 12pt">WIN7</span><span style="font-family: 宋体; font-size: 12pt">系统中同样的方法安装</span><span style="font-size: 12pt">Oracle</span><span style="font-family: 宋体; font-size: 12pt">，因为</span><span style="font-size: 12pt">WIN7</span><span style="font-family: 宋体; font-size: 12pt">系统的</span><span style="font-size: 12pt">oracle</span><span style="font-family: 宋体; font-size: 12pt">版本使用的是</span><span style="font-size: 12pt">for vista </span><span style="font-family: 宋体; font-size: 12pt">版本。版本号为</span><span style="font-size: 12pt">10.2.0</span><span style="font-size: 12pt">.3.0</span><span style="font-family: 宋体; font-size: 12pt">，无需升级。</span></p>
<p style="text-indent: 21pt" class="MsoNormal"><span style="font-size: 12pt">WIN7</span><span style="font-family: 宋体; font-size: 12pt">系统的系统盘上只安装</span><span style="font-size: 12pt">10.2.0</span><span style="font-size: 12pt">.3.0</span><span style="font-family: 宋体; font-size: 12pt">数据库软件。。</span></p>
<p style="text-indent: 21pt" class="MsoNormal"><span style="font-family: 宋体; font-size: 12pt">然后再单独创建数据库（单独创建的数据库文件位置同样存放再</span><span style="font-size: 12pt">DISK1</span><span style="font-family: 宋体; font-size: 12pt">中如：</span><span style="font-size: 12pt">oradb</span><span style="font-family: 宋体; font-size: 12pt">，覆盖掉再</span><span style="font-size: 12pt">XP</span><span style="font-family: 宋体; font-size: 12pt">系统中</span><span style="font-size: 12pt">ORACLE</span><span style="font-family: 宋体; font-size: 12pt">创建的数据库文件）。</span></p>
<p style="text-indent: 21pt" class="MsoNormal"><span style="font-family: 宋体; font-size: 12pt">然后回到切换至</span><span style="font-size: 12pt">XP</span><span style="font-family: 宋体; font-size: 12pt">系统，将</span><span style="font-size: 12pt">WIN7</span><span style="font-family: 宋体; font-size: 12pt">系统中</span><span style="font-size: 12pt">ORACLE</span><span style="font-family: 宋体; font-size: 12pt">目录</span><span style="font-size: 12pt">oracle"product"10.2.0"db_1"database</span><span style="font-family: 宋体; font-size: 12pt">下的</span><span style="font-size: 12pt">SPFILEORCL.ORA</span><span style="font-family: 宋体; font-size: 12pt">复制到</span><span style="font-size: 12pt">XP</span><span style="font-family: 宋体; font-size: 12pt">系统中</span><span style="font-size: 12pt">oracle</span><span style="font-family: 宋体; font-size: 12pt">同级</span></p>
<p><span style="font-family: 宋体; font-size: 12pt">目录下</span><span style="font-size: 12pt">SPFILEORCL.ORA</span><span style="font-family: 宋体; font-size: 12pt">覆盖掉。启动数据库会出现</span><span style="font-family: Arial; color: #333333; font-size: 12pt">ORA-00201 ,ORA-00202</span><span style="font-family: 宋体; color: #333333; font-size: 12pt">错误，解决方法如下：</span></p>
<p><span style="font-size: 12pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="font-family: 宋体; font-size: 12pt">进入</span><span style="font-size: 12pt">cmd</span><span style="font-family: 宋体; font-size: 12pt">运行界面。用</span><span style="font-size: 12pt">sysdba</span><span style="font-family: 宋体; font-size: 12pt">账号登陆。然后运行以下命令：</span></p>
<p style="text-indent: 21pt" class="MsoNormal"><span style="font-family: Arial; color: #333333; font-size: 12pt">create pfile from spfile;</span></p>
<p><span style="font-size: 12pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="font-family: Arial; color: #333333; font-size: 12pt">shutdown immediate</span></p>
<p><span style="font-size: 12pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="font-family: Arial; color: #333333; font-size: 12pt">startup mount pfile='d:"oracle"product"10.1.0"Db_2"database"initorcl.ora'</span></p>
<p style="text-indent: 21pt" class="MsoNormal"><span style="font-family: Arial; color: #333333; font-size: 12pt">show parameter compatible</span></p>
<p style="text-indent: 21pt" class="MsoNormal"><span style="font-family: Arial; color: #333333; font-size: 12pt">shutdown immediate</span></p>
<p style="text-indent: 21pt" class="MsoNormal"><span style="font-family: Arial; color: #333333; font-size: 12pt">startup</span></p>
<p><span style="font-family: 宋体; color: #333333; font-size: 12pt">检查运行，完成后创建表空间等信息、完成后返回</span><span style="font-family: Arial; color: #333333; font-size: 12pt">WIN7</span><span style="font-family: 宋体; color: #333333; font-size: 12pt">系统，即可同步操作数据。此方法是双击冷备的思想。</span></p>
<img src ="http://www.blogjava.net/176142998/aggbug/290399.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/176142998/" target="_blank">飞飞</a> 2009-08-09 00:11 <a href="http://www.blogjava.net/176142998/archive/2009/08/09/290399.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>pl/sql 全角转换</title><link>http://www.blogjava.net/176142998/archive/2009/04/16/265969.html</link><dc:creator>飞飞</dc:creator><author>飞飞</author><pubDate>Thu, 16 Apr 2009 06:40:00 GMT</pubDate><guid>http://www.blogjava.net/176142998/archive/2009/04/16/265969.html</guid><wfw:comment>http://www.blogjava.net/176142998/comments/265969.html</wfw:comment><comments>http://www.blogjava.net/176142998/archive/2009/04/16/265969.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/176142998/comments/commentRss/265969.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/176142998/services/trackbacks/265969.html</trackback:ping><description><![CDATA[在pl/sql里怎样进行半，全角转换？&nbsp; <br />
To_Multi_Byte(str) <br />
To_Single_Byte(str)
<img src ="http://www.blogjava.net/176142998/aggbug/265969.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/176142998/" target="_blank">飞飞</a> 2009-04-16 14:40 <a href="http://www.blogjava.net/176142998/archive/2009/04/16/265969.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>数据库命名规则</title><link>http://www.blogjava.net/176142998/archive/2008/08/08/220829.html</link><dc:creator>飞飞</dc:creator><author>飞飞</author><pubDate>Fri, 08 Aug 2008 02:00:00 GMT</pubDate><guid>http://www.blogjava.net/176142998/archive/2008/08/08/220829.html</guid><wfw:comment>http://www.blogjava.net/176142998/comments/220829.html</wfw:comment><comments>http://www.blogjava.net/176142998/archive/2008/08/08/220829.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/176142998/comments/commentRss/220829.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/176142998/services/trackbacks/220829.html</trackback:ping><description><![CDATA[<strong>1. 实体（表）的命名<br />
</strong>　　1) 表以名词或名词短语命名，确定表名是采用复数还是单数形式，此外给表的别名定义简单规则（比方说，如果表名是一个单词，别名就取单词的前4 个字母；如果表名是两个单词，就各取两个单词的前两个字母组成4 个字母长的别名；如果表的名字由3 个单词组成，从头两个单词中各取一个然后从最后一个单词中再取出两个字母，结果还是组成4 字母长的别名，其余依次类推）<br />
<clk>　　对工作用表来说，表名可以加上前缀WORK_ 后面附上采用该表的<nobr oncontextmenu="return false" onmousemove="kwM(7)" id="clickeyekey7" onmouseover="kwE(event,7, this)" style="color: #6600ff; border-bottom: #6600ff 1px dotted; background-color: transparent; text-decoration: underline" onclick="kwC(event,7)" onmouseout="kwL(event,this)">应用程序</nobr>的名字。在命名过程当中，根据语义拼凑缩写即可。注意，由于ORCLE会将字段名称统一成大写或者小写中的一种，所以要求加上下划线。</clk><br />
　　举例：<br />
　　定义的缩写 Sales: Sal 销售；<br />
　　Order: Ord 订单；<br />
　　Detail: Dtl 明细；<br />
　　则销售订单明细表命名为：Sal_Ord_Dtl;<br />
　　2) 如果表或者是字段的名称仅有一个单词，那么建议不使用缩写，而是用完整的单词。<br />
　　举例：<br />
　　定义的缩写 Material Ma 物品；<br />
　　物品表名为：Material, 而不是 Ma.<br />
　　但是字段物品编码则是：Ma_ID;而不是Material_ID<br />
　　3) 所有的存储值列表的表前面加上前缀Z<br />
　　目的是将这些值列表类排序在数据库最后。<br />
　　4) 所有的冗余类的命名(主要是累计表)前面加上前缀X<br />
<clk>　　冗余类是为了<nobr oncontextmenu="return false" onmousemove="kwM(4)" id="clickeyekey4" onmouseover="kwE(event,4, this)" style="color: #6600ff; border-bottom: #6600ff 1px dotted; background-color: transparent; text-decoration: underline" onclick="kwC(event,4)" onmouseout="kwL(event,this)">提高</nobr>数据库效率，非规范化数据库的时候加入的字段或者表</clk><br />
　　5) 关联类通过用下划线连接两个基本类之后，再加前缀R的方式命名,后面按照字母顺序罗列两个表名或者表名的缩写。<br />
　　关联表用于保存多对多关系。<br />
　　如果被关联的表名大于10个字母，必须将原来的表名的进行缩写。如果没有其他原因，建议都使用缩写。<br />
　　举例：表Object与自身存在多对多的关系,则保存多对多关系的表命名为：R_Object；<br />
　　表 Depart和Employee;存在多对多的关系；则关联表命名为R_Dept_Emp<br />
　　<strong>2. 属性（列）的命名<br />
</strong><clk>　　1) 采用有意义的列名，表内的列要针对键采用一整套<nobr oncontextmenu="return false" onmousemove="kwM(1)" id="clickeyekey1" onmouseover="kwE(event,1, this)" style="color: #6600ff; border-bottom: #6600ff 1px dotted; background-color: transparent; text-decoration: underline" onclick="kwC(event,1)" onmouseout="kwL(event,this)">设计</nobr>规则。每一个表都将有一个自动ID作为主健,逻辑上的主健作为第一组候选主健来定义,如果是数据库自动生成的编码，统一命名为：ID;如果是自定义的逻辑上的编码则用缩写加&#8220;ID&#8221;的方法命名。如果键是数字类型，你可以用_NO 作为后缀；如果是字符类型则可以采用_CODE 后缀。对列名应该采用标准的前缀和后缀。</clk><br />
　　举例：销售订单的编号字段命名：Sal_Ord_ID；如果还存在一个数据库生成的自动编号，则命名为：ID。<br />
　　2) 所有的属性加上有关类型的后缀，注意，如果还需要其它的后缀，都放在类型后缀之前。<br />
　　注: 数据类型是文本的字段，类型后缀TX可以不写。有些类型比较明显的字段，可以不写类型后缀。<br />
　　3) 采用前缀命名<br />
　　给每个表的列名都采用统一的前缀，那么在编写SQL表达式的时候会得到大大的简化。这样做也确实有缺点，比如破坏了自动表连接工具的作用，后者把公共列名同某些数据库联系起来。<br />
　　<strong>3. 视图的命名</strong><br />
　　1) 视图以V作为前缀，其他命名规则和表的命名类似；<br />
<clk>　　2) 命名应尽量体现各视图的<nobr oncontextmenu="return false" onmousemove="kwM(3)" id="clickeyekey3" onmouseover="kwE(event,3, this)" style="color: #6600ff; border-bottom: #6600ff 1px dotted; background-color: transparent; text-decoration: underline" onclick="kwC(event,3)" onmouseout="kwL(event,this)">功能</nobr>。</clk><br />
　　<strong>4. 触发器的命名<br />
</strong>　　触发器以TR作为前缀，触发器名为相应的表名加上后缀，Insert触发器加"_I"，Delete触发器加"_D"，Update触发器加"_U"，如：
<p>　　TR_Customer_I，TR_Customer_D，TR_Customer_U。<br />
　　<strong>5. 存储过程名</strong><br />
　　存储过程应以"UP_"开头，和系统的存储过程区分，后续部分主要以动宾形式构成，并用下划线分割各个组成部分。如增加代理商的帐户的存储过程为"UP_Ins_Agent_Account"。<br />
　　<strong>6. 变量名<br />
</strong>　　变量名采用小写，若属于词组形式，用下划线分隔每个单词，如@my_err_no。<br />
　　<strong>7. 命名中其他注意事项<br />
</strong>　　1)&nbsp; 以上命名都不得超过30个字符的系统限制。变量名的长度限制为29（不包括标识字符@）。<br />
　　2)&nbsp; 数据对象、变量的命名都采用英文字符，禁止使用中文命名。绝对不要在对象名的字符之间留空格。<br />
<clk>　　3) 小心保留词，要保证你的字段名没有和保留词、数据库系统或者常用访问方法<nobr oncontextmenu="return false" onmousemove="kwM(2)" id="clickeyekey2" onmouseover="kwE(event,2, this)" style="color: #6600ff; border-bottom: #6600ff 1px dotted; background-color: transparent; text-decoration: underline" onclick="kwC(event,2)" onmouseout="kwL(event,this)">冲突</nobr></clk><br />
　　5) 保持字段名和类型的一致性，在命名字段并为其指定数据类型的时候一定要保证一致性。假如数据类型在一个表里是整数，那在另一个表里可就别变成字符型了。</p>
<img src ="http://www.blogjava.net/176142998/aggbug/220829.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/176142998/" target="_blank">飞飞</a> 2008-08-08 10:00 <a href="http://www.blogjava.net/176142998/archive/2008/08/08/220829.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>