sql变量脚本
只能把这些sql命令以及变量的值都分行写入一个文本文件中,然后:
sqlplus -S "oo_admin/opsware as sysdba" < 文本文件
㈡ DB2的SQL脚本如何定义变量,并赋值使用执行成功有重赏哦,谢谢
用存储过程啊,给你个简单的例子
CREATE PROCEDURE SPCARDTRACE
(
IN I_CARDNO VARCHAR(10)
)
-- 存储过程功能 :
-- 创建人:
-- 创建日期:
-- 参数说明:
-- 01. : I_CARDNO 卡号
-- 02. :
-- 03. :
LANGUAGE SQL
SPECIFIC SPCARDTRACE
DYNAMIC RESULT SETS 1
MODIFIES SQL DATA
BEGIN
DECLARE V_CARDNO VARCHAR(10); --卡号
DECLARE V_EMPNAME VARCHAR(16); --持卡人
DECLARE V_CARDBALANCE DECIMAL(8,2); --卡余额
DECLARE V_HAPPENDATE INT;--统计时间
DECLARE V_MINTIME TIMESTAMP; --最小时间
DECLARE V_MAXTIME TIMESTAMP; --最大时间
DECLARE V_MINMONTH INT ;
DECLARE V_MAXMONTH INT ;
DECLARE V_ISSUECARDDATE TIMESTAMP; --发卡时间
DECLARE V_SUBSIDYMONEY DECIMAL(8,2);--补贴金额
DECLARE V_CONSUMEMONEY DECIMAL(8,2);--冲值金额
DECLARE V_PUTMONEY DECIMAL(8,2);--冲值金额
DECLARE V_OUTMONEY DECIMAL(8,2);--退款金额
DECLARE V_CHANGEMONEY DECIMAL(8,2);--改卡差额
DECLARE V_STRSQL VARCHAR(1000); --SQL
DECLARE CS CURSOR WITH RETURN TO CALLER FOR RETURNTABLE;
INSERT INTO TBCARDTRACE ( CARDNO,EMPNAME,CARDBALANCE,ISSUECARDDATE ,HAPPENDATE,
SUBSIDYMONEY,PUTMONEY,OUTMONEY ,CONSUMEMONEY,CHANGEMONEY )
VALUES (V_CARDNO,V_EMPNAME,V_CARDBALANCE,V_ISSUECARDDATE,V_HAPPENDATE,
V_SUBSIDYMONEY,V_PUTMONEY,V_OUTMONEY,V_CONSUMEMONEY,V_CHANGEMONEY);
END
㈢ sql脚本怎么使用变量
Sql中如何给变量赋值使用set关键字。
例表格tt结构如图:
下面语句声明一个@ii_test的整型变量,然后给变量赋值,并在SQL查询中调用变量
㈣ sql文件中如何编写循环建表的脚本
如果数据库中已经存在test表则,将其drop掉,
if exists (select * from dbo.Sysobjects where id='test' and OBJECTPROPERTY(OBJECT_ID('test'),'IsTable')=1 )
drop table test
--新建数据库
create table test
(
id int
)
declare @i int,@num int --定义变量用来存储循环初始值和结束值
select @i=1,@num=1000
while (@i<=@num) ---进入循环
begin
insert into test values(@i)
select @i+=1
end
select * from test
drop table test --删除实体表,如果程序真用则就不要删除了!
㈤ 请教:SQL 脚本编写: 创建两个整型变量,将他们的值分别设置为2和4,然后输出这两个变量的和 谢谢!
代码如下:
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a = 10;
int b = 20;
int c = 0;
printf("a = %d b = %d ", a, b);
c = a;
a = b;
b = c;
printf("a = %d b = %d ", a, b);
system("pause");
return 0;
}
(5)sql变量脚本扩展阅读
SQL的整数型数据包括bigint型、int型、bit、smallint型和tinyint型。
bigint型数据的存储大小为8个字节,共64位。其中63位用于表示数值的大小,1位用于表示符号。bigint型数据可以存储的数值范围是-263~263-1,即 -9 223 372 036 854 775 808 ~9 223 372 036 854 775 807。
在应用中除非明确说明,否则那些接受int表达式作为其参数的函数、语句和系统存储过程都不会改变,从而不会支持将 bigint表达式隐式转换为这些参数。因此,当 bigint值在int数据类型支持的范围内时,SQL Server 才将 bigint隐式转换为int。
如果 bigint表达式包含了一个在int数据类型支持范围之外的值,就会在运行时出现转换错误。
㈥ 导入plsql脚本的时候提示变量
你的脚本中存在&这个符号,&在oracle中是转义符,这个需要你在执行的时候输入的。不过看你的图片上,有可能脚本会有错误。
你可以用这个代码测试一下,就明白了。
declare
i integer;
begin
i:= &I;
dbms_output.put_line(to_char(i));
end;
㈦ 如何在DB2命令窗口执行sql脚本
DB2 命令行中执行sql脚本如下:
db2 => connect to dbName user xxx using password
db2 => sql语句
如果要执行一个sql脚本文件:
db2 => quit
c:\> db2 -tvf sql文件名
db2 -td@ -f filename
@是语句结束符。
E:\>db2 ? options
db2 [option ...] [db2-command | sql-statement |
[? [phrase | message | sqlstate | class-code]]]
option:-a、-c、-e{c|s}、-finfile、-lhistfile、-n、-o、-p、-rreport、-s、-t、
-td;、-v、-w、-x 和 -zoutputfile。
选项 描述 缺省设置
------ ---------------------------------------- ---------------
-a 显示 SQLCA OFF
-c 自动落实 ON
-e 显示 SQLCODE/SQLSTATE OFF
-f 读取输入文件 OFF
-l 将命令记录到历史文件中 OFF
-n 除去换行字符 OFF
-o 显示输出 ON
-p 显示 db2 交互式提示符 ON
-r 将输出报告保存到文件 OFF
-s 在命令出错时停止执行 OFF
-t 设置语句终止字符 OFF
-v 回送当前命令 OFF
-w 显示 FETCH/SELECT 警告消息 ON
-x 不打印列标题 OFF
-z 将所有输出保存到输出文件 OFF
注意:
使用 DB2OPTIONS 环境变量定制选项缺省值。
紧跟选项字母后的减号(-)使该选项关闭。
使用 UPDATE COMMAND OPTIONS 更改选项设置(以交互式或
文件输入方式)。
只能提供nt环境下编写脚本的例子给你以供参考:
脚本样例:
db2 connect to yourdb user yourname using yourpassword
db2 insert into newuser(username,password,email) values('Amy','1234','[email protected]')
db2 insert into newuser(username,password,email) values('Judy','1234','[email protected]')
db2 commit
db2 disconnect yourdb
运行脚本: 运行db2cmd X:\XXX.bat
以下摘自本论坛的FAQ可参考:
"
在命令窗口中运行DB2脚本,可用 db2 -svtf 脚本文件名 来实现。
例如,脚本文件名为sample.sql,运行:db2 -svtf sample.sql
参数中:
s 代表遇到错误时中止运行脚本
v 代表输出结果到屏幕
t 指以;号作为每行的分隔符
f 指后面需跟脚本文件名 "---此摘录版权归斑竹非本人所有
具体在AS400如何编写脚本非常遗憾.
db2 -x select SERIALNO from tabname where clause
C:>db2 attach to db2164 user ccp
输入 ccp 的当前密码:
实例连接信息
实例服务器 = DB2/NT 8.2.0
授权标识 = CCP
本地实例别名 = DB2164
C:>db2 connect to dw164 user ccp
输入 ccp 的当前密码:
数据库连接信息
数据库服务器 = DB2/NT 8.2.0
SQL 授权标识 = CCP
本地数据库别名 = DW164
C:>db2 select * from CCP_STS1 fetch first 2 rows only with ur
CUST_ID NOW_PRED_S LOAD_TIME
-------------------- -------------------- --------------------------
3094736. ZFS 2008-05-07-10.02.00.453000
3145886. ZFS 2008-05-07-10.02.00.453000
2 条记录已选择。
C:>db2 list command options
命令行处理器选项设置
后端进程等待时间(秒) (DB2BQTIME) = 1
连接至后端的重试次数 (DB2BQTRY) = 60
请求队列等待时间(秒) (DB2RQTIME) = 5
输入队列等待时间(秒) (DB2IQTIME) = 5
命令选项 (DB2OPTIONS) = +m
选项 描述 当前设置
------ ---------------------------------------- ---------------
-a 显示 SQLCA OFF
-c 自动落实 ON
-d 检索并显示 XML 声明 OFF
-e 显示 SQLCODE/SQLSTATE OFF
-f 读取输入文件 OFF
-i 显示 XML 数据并带有缩进 OFF
-l 将命令记录到历史记录文件中 OFF
-m 显示受影响的行数 OFF
-n 除去换行字符 OFF
-o 显示输出 ON
-p 显示交互式输入提示符 ON
-q 保留空格和换行符 OFF
-r 将输出保存到报告文件 OFF
-s 在命令出错时停止执行 OFF
-t 设置语句终止字符 OFF
-v 回传当前命令 OFF
-w 显示 FETCH/SELECT 警告消息 ON
-x 不打印列标题 OFF
-z 将所有输出保存到输出文件 OFF
C:>db2set DB2OPTIONS=-x
C:>db2 select * from CCP_STS1 fetch first 2 rows only with ur
4654908. ZFS 2008-05-07-10.02.00.453000
3716687. ZFS 2008-05-07-10.02.00.453000
㈧ sql脚本里面有办法设置系统环境变量么
DOS下设置永久环境变量的方法是如下:
方法一:批处理中,修改环境变量,一次性有效(也就是在当前的脚本中有效)
CMD中运行:set path==%path%;d:/mypath
用 set path可以查看,当前的环境变量
方法二 :批处理中,修改环境变量,永久有效
新增用户环境变量TT,值为C:NVIDIA
setx TT C:NVIDIA
将C:Python27;C:Python27Scripts;添加到系统环境变量path的最前面
setx path "C:Python27;C:Python27Scripts;%path%" /m
将C:NVIDIA追加到系统环境变量path中
setx path "Scripts;%path%;C:NVIDIA" /m
环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。环境变量相对于给系统或用户应用程序设置的一些变量。
㈨ shell脚本sql语句怎么携带变量
#!/bin/ksh
date='20140101'
tablename="smssvclog_${date}_1_s"
sqlplus$ACCOUNT/$PASSWORD@$ORACLE_LOG<<EOF
selectcount(*)from${tablename};
exit;
EOF