求助!急!PLSQL 玩不明白了!希望水区里的各位大大给点帮助!

  • c
    cuijingcc
    你就不能用oracle自带的工具执行吗
  • 海狸先生
    我也想,关键是我不会用啊
  • e
    eos
    用web看看能连接登录吗?
  • h
    holybell
    重启listener,重建连接,反复几次即可。
  • 海狸先生
    感谢各位大大的解答

    我一会就贴语句去百度,海狸无以为报,只能给大家加点激骚了
  • 海狸先生
    能连上,不过不会用啊
  • 大魔王
    本机tnsname配好了吗 一般配好就能连上 反正我也就会搭个测试环境 没碰见过这种错误
  • 暗蛹
    万能TG,程序员真不少。
  • p
    phoenix9
    tnsname 没设置好啊,都提示tns错误了。
    我工作是solaris环境,一般这个问题需要修改 oralce的一个tnsnames.ora这个文件
    你要用的名称 =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost/目标机器ip/目标机器名)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = 数据库名称)
    )
    )
    windows版我就不懂了。
    另外你说直接sqlplus连接没问题,那就去检查下pc上的odbc和orale连接设置是否正确。

    [本帖最后由 phoenix9 于 2014-1-22 10:45 编辑]
  • z
    zerocount
    个人认为是67l提出的问题 先从这方面查起吧
  • 海狸先生
    各位大侠,谁给看下语句

    以下员工号的地方: 替换成相应员工的员工号,执行一下三条语句,就可以删除历史组织关系和历史任职记录了。
    第二条更新语句功能是将历史任职中的工作开始日期,更新到最新的任职记录中。 如果不要更新可以不执行。

    delete from hi_psnorg where PK_PSNORG in (select PK_PSNORG from hi_psnjob where CLERKCODE = '员工号' and ENDFLAG = 'Y' AND LASTFLAG ='N');
    update hi_psnjob set BEGINDATE = (select BEGINDATE from hi_psnjob where RECORDNUM = 1 and CLERKCODE = '员工号' and ENDFLAG = 'Y' AND LASTFLAG ='N')
    where RECORDNUM = 0 and CLERKCODE = '员工号' and ENDFLAG = 'N' AND LASTFLAG ='Y';
    delete from hi_psnjob where CLERKCODE = '员工号' and ENDFLAG = 'Y' AND LASTFLAG ='N';

    数据库操作前请务必做好备份。

    我运行cmd,然后进sqlplus里面复制粘贴命令。回车,不知道怎么写commit
  • l
    lvcha
    哭了。年轻时的回忆
  • 旮旯旭
    楼主连接都有问题....还谈什么commit啊 - -
  • F
    FOXhunt
    commit;
  • 1
    11508721
    果然是没commit。。。
  • 海狸先生
    我用sqlplus 能用那个用户进去,PL/SQL 用不了啊
  • V
    Veree
    +1 oracle的TNS很容易出问题
  • q
    qyhok
    PLSQL DEVELOPER连不上本地多半是TNS NAME 没有配好的缘故.你的SQLPLUS应该也连不上本地数据库吧?
    你可以搜一下 tnsname.ora 这个文件(是这么拼吧?),应该有两个,一个是连你的生产环境的,一个是你自己本机上的.把本机上那个配置信息填好应该可以连.
    你们的ERP环境难道只有一个生产环境吗?那太不靠谱了吧.
    如果想直接用SQLPLUS在生产环境中执行.除了把上面的语句粘进去回车外.还要加一句COMMIT; 再回车.
    虽然是客制化的表,但是楼主你确定这样DELETE没有问题,历史纪录就建个表把它放在历史记录表里,或建个备份表.直接删掉太粗暴.
    生产环境的修改是要很慎重的,鉴于楼主你提的问题,我很担心你们的ERP环境...就没有别的开发人员或者是找一下你们的乙方吗?
  • 海狸先生
    感谢各位大大的帮助,我进入sqlplus 界面,复制粘贴sql 语句,显示执行成功,然后再加个commit write nowait; 进ERP系统,执行成功了:D
  • 海狸先生
    我们公司的系统刚上线一个月,就我这么一个半吊子运维人员,出事了再说,我按ERP厂家的流程提的需求,他们就给了这样一段SQL 语句让我去改库了。。。