真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

oracle的包怎么調(diào) oracle包的作用

如何調(diào)用ORACLE程序包中的存儲過程

pl/sql里,select

網(wǎng)站制作、做網(wǎng)站的關(guān)注點不是能為您做些什么網(wǎng)站,而是怎么做網(wǎng)站,有沒有做好網(wǎng)站,給創(chuàng)新互聯(lián)一個展示的機會來證明自己,這并不會花費您太多時間,或許會給您帶來新的靈感和驚喜。面向用戶友好,注重用戶體驗,一切以用戶為中心。

語句必須接into

,不接into那就得返回一個游標出去,比如

create

or

replace

package

test_package

is

procedure

query_test(num

number,po_cursor

out

sys_refcursor);

end

test_package;

create

or

replace

package

body

test_package

is

procedure

query_test(num

number,po_cursor

out

sys_refcursor)

is

begin

select

unitname,tradetype,workernumber

from

test

where

income=num;

end

query_test;

end

test_package;

Oracle PLSQL怎么用調(diào)用函數(shù)包

pl/sql 里面定義的包在調(diào)用的時候使用exec 命令調(diào)用,例如:exec package_name.過程名()

過程名():包體里面定義的公用過程。

不知道我的回答你清楚了嗎?

如何建立oracle包,如何調(diào)用包的過程或是函數(shù)

包用于在邏輯上組合過程和函數(shù),它由包規(guī)范和包體兩部分組成

1.創(chuàng)建包

--創(chuàng)建一個包sp_package

create?package?sp_package?is

--聲明該包有一個過程和函數(shù),(沒有實現(xiàn))

procedure?update_sal(name?varchar2,newsal?number);

function?annual_nicome(name?varchar2)?return?number;

end;

--創(chuàng)建包體(用于實現(xiàn)已經(jīng)聲明的函數(shù)和過程)

create?package?body?sp_package?is

procedure?update_sal(name?varchar2,newsal?number)

is

BEGIN

UPDATE?emp

SET????sal?=?newsal

WHERE??ename?=?name;

END;

function?annual_income(name?varchar2)

return?number?is

annual_salary?number;

BEGIN

SELECT?sal?*?12?+?Nvl(comm,0)

INTO???annual_salary

FROM???emp

WHERE??ename?=?name;

RETURN?annual_salary;

END;

end;

--調(diào)用包中的內(nèi)容

exec?sp_package.update_sal('name',number);

oracle怎么用復(fù)制的包

1、首先打開電腦,點擊進入瀏覽器。

2、其次點擊搜索oracle,選擇第一個進入,點擊選擇數(shù)據(jù)化,選擇復(fù)制的包,點擊使用。

3、最后點擊確認即可。

oracle package body怎么執(zhí)行啊?

包只是作為 程序的一個載體而已,你要運行,當然是去調(diào)用它!

包里面可以包含函數(shù)、過程等,你可以開發(fā)程序時候調(diào)用包里面的這些程序!沒有聽說過包怎么運行的道理!

就像電視機(包)可以用來看電視,但是你不去打開它(調(diào)用包),它就沒有作用!

樓下的明顯誤導(dǎo)別人啊,包何來參數(shù)之說?只有包里面的程序才有參數(shù),調(diào)用包里面過程的方法如下:

begin

exec 包名.過程名();

end;

函數(shù)的調(diào)用就不用我寫了吧!

ubuntu下安裝oracle缺少很多包怎么解決

Ubuntu12.04 安裝Oracle10g 全過程(完美)及問題解決辦法

PS:正常情況下,完美無錯。。如果遇到問題,也有解決辦法1.安裝前準備工作

1.1 到oracle官網(wǎng)下載適合自己電腦的oracle軟件包;我的是:Oracle Database 10gRelease 2 (10.2.0.1.0)Enterprise/Standard Edition for Linux x86下的:10201_database_linux32.zip地址: 更新ubuntu

# apt-get update

# apt-get upgrade

1.3 安裝額外的javaJDK

可在【Ubuntu軟件中心】搜OPENjdk,安裝OpenJDK 完成后path路徑自動設(shè)置好了1.4 安裝缺少的包并降低GCC版本

apt-get install gcc make binutils lesstif2 libc6 libc6-dev rpm libmotif3 libaio1 alienapt-get install ksh libtool libstdc++5 build-essential compat-libstdc++卸載gcc-4.6,安裝gcc-4.4 版本

apt-get remove gcc-4.6

apt-get install gcc-4.4

1.5 創(chuàng)建oracle用戶

登錄到root用戶下操作:

1.5.1 修改shell

ls -l /bin/sh 如果是dash修改為bash

rm /bin/sh

ln -s /bin/bash /bin/sh

1.5.2 創(chuàng)建用戶和組及oracle安裝路徑

addgroup oinstall

addgroup dba

addgroup nobody

usermod -g nobody nobody

adduser oracle

usermod -g oinstall -G dba oracle

id oracle

id nobody

mkdir -p /opt/oracle

mkdir -p /opt/oradata

chown -R oracle:dba /opt/ora*

chmod -R 775 /opt/ora*

1.5.3 創(chuàng)建欺騙版本聲明

vi /etc/redhat-release

然后向其中加入 Red Hat Linux release 3.1

1.5.4 建立鏈接

ln -s /usr/bin/gcc-4.4 /usr/bin/gcc

ln -s /lib/i386-linux-gnu/libgcc_s.so.1 /lib/libgcc.s.so.1ln -s /usr/bin/awk /bin/awk

ln -s /usr/bin/rpm /bin/rpm

ln -s /usr/bin/basename /bin/basename

mkdir /etc/rc.d

ln -s /etc/rc0.d /etc/rc.d/rc0.d

ln -s /etc/rc1.d /etc/rc.d/rc1.d

ln -s /etc/rc2.d /etc/rc.d/rc2.d

ln -s /etc/rc3.d /etc/rc.d/rc3.d

ln -s /etc/rc4.d /etc/rc.d/rc4.d

ln -s /etc/rc5.d /etc/rc.d/rc5.d

ln -s /etc/rc6.d /etc/rc.d/rc6.d

ln -s /etc/init.d /etc/rc.d/init.d

1.5.5 添加用戶到sudoer列表中

vi /etc/sudoers

在“ root ALL=(ALL:ALL) ALL” 下一行 ,添加:

oracle ALL=(ALL:ALL) ALL

1.5.6 修改內(nèi)核參數(shù)和系統(tǒng)變量

A 修改/etc/sysctl.conf文件(可以不用修改)

gedit /etc/sysctl.conf

添加如下內(nèi)容:

kernel.shmall = 2097152

kernel.shmmax = 2147483648

kernel.shmmni = 4096

kernel.sem = 25 32000 100 128

fs.file-max = 65536

net.ipv4.ip_local_port_range = 1024 65000B 修改/etc/security/limits.conf(可以不用修改)gedit /etc/security/limits.conf

添加如下內(nèi)容:

* soft nproc 2407

* hard nproc 16384

* soft nofile 1024

* hard nofile 65536

說明:不要忘了“*”號,可以換成oracle

C 修改ubuntu的oracle用戶的環(huán)境變量

修改/home/oracle/.profile和/etc/profile兩個文件vi /home/oracle/.profile

vi /etc/profile

添加如下內(nèi)容:

#oracle_path start

export ORACLE_HOME=/opt/oracle

export ORACLE_SID=orcl

export ORACLE_OWNER=oracle

export PATH=$PATH:$ORACLE_HOME/bin

#oracle_path end

1.5.7 使參數(shù)生效

重啟系統(tǒng) 或 終端執(zhí)行命令 sysctl -p

1.5.8 將下載好的oracle安裝文件mv到/home/oracle下,并解壓。注銷root用戶,登錄oracle用戶2.開始安裝oracle

2.1 打開終端,cd到/home/oracle/database的oracle解壓文件下,執(zhí)行下面這條命令./runInstaller -jreLoc /usr/lib/jvm/java-6-openjdk-i386/jrejava-version是java的安裝版本,這一句是為了在圖像化裝oracle是不會出現(xiàn)亂碼或者方框然后就向windows下安裝一樣的圖像化安裝界面。

不行的話,使用英文安裝界面

export LANG=ENGLISTH

./runInstaller

2.2 按照下面的圖像步驟操作

執(zhí)行到配置配置腳本時

切換到root下,在終端中執(zhí)行腳本

/home/oracle/oralnventory/orainstRoot.sh

/opt/ora10/root.sh

2.4 出現(xiàn)oracle database 10g 安裝完成時,記下兩個URL。

2.5 安裝數(shù)據(jù)庫

在終端中執(zhí)行如下命令:

$dbca //如果出現(xiàn)中文亂碼,執(zhí)行下面命令$cd /opt/ora10/bin

$gedit dbca

在dbca中找到“JRE_DIR=/opt/ora10/jdk/jre”,替換為JRE_DIR=/usr/lib/jvm/java-1.6.0-openjdk/jre ,然后保存退出$dbca //正常顯示了

2.6 按照下面步驟執(zhí)行

但是:要將數(shù)據(jù)庫名字及SID都要寫上orcl

一直到安裝完成。

3. 啟動oracle

在“終端”以oracle身份運行

啟動TNS監(jiān)聽器:$ORACLE_HOME/bin/lsnrctl start($ORACLE_HOME,就是oracle的安裝目錄:/opt/ora10 .直接cd,進入oracle的安裝目錄,到bin文件夾下,$lsnrctl start ,也行)。

關(guān)閉TNS:$ORACLE_HOME/bin/lsnrctl stop

啟動sqlplus:$ORACLE_HOME/bin/sqlplus /nolog關(guān)閉sqlplus:SQL exit

4. 為了能夠像windows下一樣能夠使用上下鍵翻動命令,還需要安裝rlwrap包:

sudo apt-get install rlwrap

然后修改oracle用戶的~/.bashrc文件和/etc/profile文件,在其最后添加兩行:

這樣上下左右鍵就可以使用了。

最后來解決oracle中文字符集的問題。不出意外的話,啟動oracle會發(fā)現(xiàn)所有的中文都是“?”,要么就是亂碼,這其實是服務(wù)器端字符集和客戶端字符集不一致造成的。

解決方法為:DBA身份進入sqlplus,做查詢

SQLselect userenv(‘language’) from dual;將查詢結(jié)果復(fù)制,在/etc/bash.bashrc文件中再加一行:export NLS_LANG=”查詢結(jié)果”,重新登錄問題解決。例如:我的查詢結(jié)果為SIMPLIFIED CHINESE_CHINA.AL32UTF8,則新加一行為export NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8"。

但是有時候這個方法不一定奏效,你可以將

export NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8"export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"分別寫到兩個文件中嘗試一下,但是兩個文件寫的一定要一致。

5. 如果有問題可按下列過程處理:

5.1

問題:調(diào)用makefile '../sqlplus/lib/ins_sqlplus.mk' 的目標'install' 時出錯。請參閱'/home/oracle/oraInventory/logs/installActions2011-12-06_11-03-18AM.log' 以了解詳細信息。

解決辦法:$ORACLE_HOME/sqlplus/lib/env_sqlplus.mk添加一行:EXPDLIBS=-lclntsh ,然后點擊“重試”按鈕, ok.

其實安裝 gcc-4.4 以后沒有這個問題。

5.2

問題:調(diào)用makefile '../sysman/lib/ins_sysman.mk' 的目標'agent nmo nmb' 時出錯。請參閱'.. /oraInventory/logs/installActions2011-12-06_11-03-18AM.log' 以了解詳細信息。

分析:后面遇到的錯誤其實本質(zhì)上是一個問題,主要是gcc的版本高了,oracle10g的gcc是3.4左右的版本,但是ubuntu的開發(fā)速度早就用了4.0以上版本,而且你還無法apt安裝低版本解決辦法:卸載gcc-4.6,安裝gcc-4.4 版本

apt-get remove gcc-4.6

apt-get install gcc-4.4

5.3

調(diào)用makefile '../network/lib/ins_net_server.mk' 的目標'install' 時出錯。請參閱'.. /oraInventory/logs/installActions2011-12-06_11-03-18AM.log' 以了解詳細信息。

分析:我在網(wǎng)上找到了一篇類似的文檔,參見(點擊打開鏈接),但是我手工編譯還是有問題,而且在oracle10g中并不是他所提到的-lons參數(shù)問題。

還是gcc版本問題,我曾嘗試過安裝低版本的gcc,但是一開始編譯就報錯,所以放棄了,如果有人能成功降低版本環(huán)境,相信一定能解決所有錯誤問題,這也是為什么ubuntu 8能很自然成功安裝的一個解釋。

方法:目前我還沒有方法,按照其.mk文件的說明,這個東西好像是數(shù)據(jù)庫鏈接斷裂時候重新鏈接用的解決辦法:卸載gcc-4.6,安裝gcc-4.4 版本

在/usr/bin 下做了 /usr/bin/gcc-4.4 的軟鏈接cd /usr/bin

ln -s /usr/bin/gcc-4.4 /usr/bin/gcc

5.4

調(diào)用makefile '../rdbms/lib/ins_rdbms.mk' 的目標'all_no_orcl ihsodbc' 時出錯。請參閱'../oraInventory/logs/installActions2011-12-06_11-07-36-AM.log' 以了解詳細信息。

分析:我們看一下log文件

信息: Generating BASE ORASDK library...

信息: Creating /opt/ora10/lib/liborasdkbase.so.10.2信息: gcc: 錯誤:/lib/libgcc_s.so.1:沒有那個文件或目錄gcc: 錯誤:/usr/lib/libstdc++.so.5:沒有那個文件或目錄我們看到終于是那個非常多的錯誤了,其實還是gcc的問題,重新下載了libgcc_s.so.1,并且重新做了stdc++5的鏈接,但是問題還是更多,因為只做軟鏈接和下載一個動態(tài)庫是沒法解決所有問題的。

解決辦法:安裝compat-libstdc++-33_3.2.3-48.3_i386.deb,重試。。

在一個libgcc_s.so.1軟鏈接

cd /lib

ln -s /lib/i386-linux-gnu/libgcc_s.so.1 libgcc.s.so.16. 開機啟動

6.1 root 下面修改:vi /etc/oratab

orc1:/opt/oracle/product/10.2.0/db_1:Y

將N該為Y

6.2 oracle 下面修改:

cd $ORACLE_HOME/bin

vi dbstart

找到 ORACLE_HOME_LISTNER 這行, 修改成:

ORACLE_HOME_LISTNER=/opt/oracle/product/10.2.0/db_1或者直接修改成:

ORACLE_HOME_LISTNER=$ORACLE_HOME

測試運行 dbshut, dbstart 看能否啟動oracle 服務(wù)及l(fā)istener服務(wù)ps -efw | grep ora_

lsnrctl status

ps -efw | grep LISTEN | grep -v grep

6.3 root 下創(chuàng)建文件:

vi /etc/rc.d/init.d/oracle10

#!/bin/bash

# chkconfig: 345 99 10

# description: Startup Script for Oracle Databases# /etc/init.d/oracle10

export ORACLE_SID=ym

# export ORACLE_HOME_LISTNER=/data/files/oracle/10g/bin#oracle 安裝目錄

export ORACLE_HOME=/data/files/oracle/10gexport PATH=$PATH:$ORACLE_HOME/bin

case "$1" in

start)

su oracle -c $ORACLE_HOME/bin/dbstart #啟動服務(wù)su oracle -c $ORACLE_HOME/bin/lsnrctl start #啟動監(jiān)聽touch /var/lock/oracle

echo "OK"

;;

stop)

echo -n "Shutdown Oracle: "

su oracle -c $ORACLE_HOME/bin/dbshut #啟關(guān)閉服務(wù)su oracle -c $ORACLE_HOME/bin/lsnrctl stop #關(guān)閉監(jiān)聽rm -f /var/lock/oracle

echo "OK"

;;

*)

echo "Usage: 'basename $0' start|stop"

exit 1

esac

exit 0

然后

chmod 775 oracle10

chkconfig --add oracle10

chkconfig --list oracle10


本文名稱:oracle的包怎么調(diào) oracle包的作用
分享鏈接:http://weahome.cn/article/hishgc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部