在shell下执行oracle数据库的sql

####	函数
####	说		明:执行sql语句
####	输入参数:{sql语句}{数据库tns}{数据库用户名}{数据库用户密码}
####  输出参数:sql执行结果
function exe_sql
{
sql=$1
oracle_sid=$2
user_name=$3
user_pwd=$4
error_code=`
sqlplus -S -L /nolog<<EOF
connect $user_pwd/$user_pwd@$oracle_sid
set termout off;
set echo off;
set feedback off;
set heading off;
set pagesize 0;
$sql;
commit;
quit
EOF`
echo "$error_code"
if [ -z "$error_code" ];then
	return 0
else
  return 1
fi
}

sid: 

       数据库实例标识,也就是数据库实例的名称,在控制面板-管理工具-服务,打开这个文件,你可以看到一个OracleServicexxx,其中 "xxx ",就是

你的数据库实例的名称,也就是sid. 


tns:

     数据连接字符串,代表一个数据库的连接,配置好你的数据网络连接,就会有一个这样的串。这个串可以在你的oracle安装根目录\ora92\network\admin\tnsnames.sql里面找到,你要可以在你的oracle安装目录下查找这个文件, 

orac   = 
   (DESCRIPTION   = 
       (ADDRESS_LIST   = 
           (ADDRESS   =   (PROTOCOL   =   TCP)(HOST   =   cyl)(PORT   =   1521)) 
       ) 
       (CONNECT_DATA   = 
           (SERVER   =   DEDICATED) 
           (SERVICE_NAME   =   D7i) 
       ) 
   ) 
上面的 "orac ",就是你要的tns,你可以自己复制重写一个tns,把HOST指向你的数据库服务器IP, 
SERVICE_NAME   =你的数据库sid

GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:23 天前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐