首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

plsqldev使用指南

默认情况下,PLSQL Developer登录后,Brower里会选择All objects,如果你登录的用户是dba,要展开tables目录,正常情况都需要Wait几秒钟,而选择My Objects后响应速率则是以毫秒计算的。 Tools菜单 –> Object Brower Filters,会打开Brower Folders的定单窗口,把“My Objects”设为默认即可。 Tools菜单–> Object Brower Folders,中把你经常点的几个目录(比如:Tables Views Seq Functions Procedures)移得靠上一点,并加上颜色区分,这样你的平均寻表时间会大大缩短,试试看。 /*设置方法:Tools菜单--Brower Folders,会打开Brower Folders的定单窗口,把“My Objects”移到最顶端即可。 同理,可以把你经常点的几个目录(比如:tables Views Seq Functions Procedures)移得靠上一点,并加上颜色区分,这样你的平均寻表时间会大大缩短,试试看。*/

01

利用SQLServer2005复制功能实现与Oracle数据库同步

在项目中经常会遇到一个项目操作几个数据库的情况,若是同种类型的数据库也还好说,可以直接链接两个数据库,也可以用数据库的同步功能。若我们的项目使用SQLServer2005进行开发,而且项目中要用到Oracle数据库中的数据,那么又该怎么实现拉?一般来说方案有以下几种。 1.分别建立链接对数据库进行操作,SQLServer可以用ADO.NET,操作Oracle可以用OLEDB或者用System.Data.OracleClient(需要添加引用才能用) 这种方案的优点就是简单,各自写各自的数据库操作代码,缺点就是不能将两个数据库中的表直接进行联合查询,链接Oracle的每台机器必须安装OracleClient才可以使用。 2.使用同义词操作Oracle数据库。 这种方法的具体操作我在以前的文章中已经写清楚了,这样做一来可以进行表的联合查询二来不需要每台机器都安装OracleClient,但是还是有一个缺点:效率低,比如对同义词使用like去查找需要的数据,如果是直接连Oracle数据库也许只要0.1秒就可以找到答案,但是用同义词可能就要等10秒20秒或更久。原来SQLServer并不是直接把查询语句传递给Oracle,让Oracle执行操作,而是将所有数据都取到SQLServer服务器上,边取数据边分析,直到满足查询条件为止。其实这种数据放在两个服务器上还有一个缺点就是一旦Oracle服务器宕机,即使我们这边的所有服务器都是好的,那么我们的程序中用到Oracle数据的地方就无法使用。 3.直接链接Oracle数据库+同义词+作业+异常跳转 方式。 这种方法具体讲就是我们的程序直接用OLEDB(OracleClient)链接Oracle数据库,同时SQLServer服务器也建立了同义词指向Oracle,在SQLServer上建立作业,将同义词中的数据拷贝到SQLServer服务器的表中。一旦Oracle宕机,程序中就会捕捉到异常,于是就使用SQLServer中的数据。这样做比较复杂,需要一定的编程,效率也不是特别高,但是优点也是明细的,平时链接Oralce服务器,异常情况下链接SQLServer中的备份数据,保证了程序的正常运行。 4.直接编写一个程序,以服务或自启动方式一直运行,每隔一段时间将Oracle数据库中的数据写到SQLServer数据库中。 这种方法就是编程复杂,具有很大难度。 5.利用SQLServer2005的复制功能将Oracle数据库中的数据同步到SQLServer服务器中,程序只操作SQLServer,不链接Oracle数据库。 这种方法不需要编写任何代码,由于只对SQLServer进行查询,所以查询效率高可以做多表链接,开发人员也不需要再装OracleClient,也不用害怕Oracle服务器宕机导致我们的相关程序无法使用。优点倒是很多,那么有没有缺点拉?缺点还是有的,主要是取得的数据不是实时的数据,Oracle那边的数据更新了,我们这边还有可能是老数据。 前面的四种方法我就不用多讲了,这次主要是讲第五种方法的具体实现:

01

Ora:12154 PLsql连接报错

新入职公司,需要安装一些软件,安装了oracle客户端和plsql,结果发现plsql的database是空白,没有可选。找了度娘,查看安装路径,是oracle安装路径:d:/oracle/product/11.2.0/client_1/admin文件夹下少了两个文件,listener.ora和tnsnames.ora,于是卸载重装,折腾了几次,连注册表都删了,还是不行。 解决方法: 在admin路径栏敲cmd,netca,根据提示新建一个监听。admin文件夹下就会多一个listener.ora文件(可能还会多几个其他文件,不影响)。 至于tnsnames.ora,可以自己写,或者网上找一个,或者找同事copy一个(我是找同事要的,结果掉抗了)。 好了,文件配齐了。然后如果你的plsql连接页面的database还是没有可选(他是读你的tnsnames.ora文件的),那就在去查看你的环境变量有没有TNS_ADMIN这个变量(计算机-右键-属性-高级系统设置-环境变量),如果没有就新建一个,如果有,查看他的值得路径是不是你刚才配置文件的那个admin路径,如果没有,新建一个,值设为admin 的路径。到这里应该可以解决了。 如果你还是报ora:12154,那么你需要好好看一下你同事给你的tnsnames.ora文件,可能其中有一部分是已经废弃的,好死不死你又不知道,结果一直用错误的数据连接,打死你也连不上。所以,如果其他问题都排除了,你最好用一个你同事正在使用的数据库(新入职的更需要注意,你拿到的配置可能是n年以前的) 下面是参考解决的连接:解决pl连接报:ora:12154

03

重新开始噼里啪啦写小文字啦~

最近一直在干的活其实说起来也蛮水的,就是做一些简单的数据工作,现在还是最基础的写SQL语句,然后刷数据,然后导出csv,再放进Excel里面做数据透视的处理。 原来开发小哥还在的时候原来都是他在写SQL语句,在虚拟机上连接的远程数据库(为何要这么做....略费解),然后他走后,因为虚拟机上还在跑着另一个流程的引擎,所以我默默决定在本地的机子上安装plsql,但是在下并没有玩过oracle啊...然后就开始了简单的安装配置之路。 首先,本地并没有安装过oracle的客户端,所以我们需要先有一个oracle的客户端。 我们到oracle的官网,下载了instantclient,根据PC的位数来选择客户端,我用的是64位的client。 下载后的包解压到路径下,比如D:oracleclient。然后新建一个文件夹,命名为network,再新建一个下级文件夹命名为admin,然后新建一个文件命名为tnsnames.ora,这个文件提供了客户端服务名到指定的oracle服务器提供的数据库服务名的映射。 那么这个文件里面写什么呢?

02
领券