请问能不能在存储过程中执行load table?
是否可以通过存储过程中执行load table语句? 领教了.请问什么版本可以用load table?我所在公司刚刚才从1192升级到1250,以前没接触过.可否有相关资料?谢谢回复 #2 lqg64150 的帖子
Sybase IQ 不是ASE.IQ12.6 是不行 load table: 将数据从文件中加载到IQ
还没见过在存储过程中这样用的,
好象在ASE存储过程中调用BCP,一个道理吧? 可以:
create procedure procedurename()
begin
load table sql;
end 我来学习一下咯
可以的,发个例子参考一下。
create procedure DBA.SP_LOAD_NEW_114_CDR(@YearMonth integer,@CallLocationID smallint= 0,@ServiceCode integer= 0)as
begin
declare @i_MonthID integer,
@c_Month varchar(2),
@c_TableName varchar(50)
select @i_MonthID = TIME_MONTH_ID from dba.TD_TIME_MONTH where YEAR_MONTH = @YearMonth
select @c_Month="right"(convert(varchar,@YearMonth),2)
select @c_TableName=string('dba.TT_BST_CDR_',@c_Month)
if @CallLocationID = -1
execute('delete from ' || @c_TableName || ' where REC_MONTH_ID = ' || @i_MonthID || ' and DATASOURCE_ID = 1')
if @CallLocationID > 0
execute('delete from ' || @c_TableName || ' where REC_MONTH_ID = ' || @i_MonthID || ' and DATASOURCE_ID = 1 and REC_LOCATION_ID = ' || @CallLocationID)
commit transaction
execute('load into table ' || @c_TableName || '\x0D\x0A (\x0D\x0ADATASOURCE_ID ''※''null(''''), \x0D\x0AREC_MONTH_ID ''※''null(''''),\x0D\x0AREC_LOCATION_ID ''※''null(''''),\x0D\x0ASERIALNO ''※''null(''''),\x0D\x0ASERIALID ''※''null(''''),\x0D\x0ASEARCHCODE ''※''null(''''),\x0D\x0AUNITNAME ''※''null(''''),\x0D\x0ATEL''※''null(''''),\x0D\x0AQUERYED_LOCATION_ID''※''null(''''),\x0D\x0AQUERYED_TEL''※''null(''''), \x0D\x0AFINDNUM ''※'' \x0A null(''''),\x0D\x0AFINDTIME''※''null(''''),\x0D\x0ACALLERNO ''※''null(''''),\x0D\x0ATRUNK_CODE ''※''null(''''), \x0D\x0ACALL_LOCATION_ID''※''null(''''),\x0D\x0AUSER_CALL_NO ''※''null(''''), \x0D\x0ALASTDATE''※''null(''''),\x0D\x0ATIME_MONTH_ID ''※''null(''''), \x0D\x0ATIME_DAY_ID ''※''null(''''),\x0D\x0ATIMEPIECE_ID ''※''null(''''), \x0D\x0AUNITIDC''※''null(''''),\x0D\x0AUNITID''※''null(''''),\x0D\x0ASWITCH_TEL''※'' \x0A null(''''),\x0D\x0ABUSINESS_CODE''※''null(''''),\x0D\x0ABUREAU''※''null(''''), \x0D\x0ACARRIER_ID''※''null(''''),\x0D\x0AACCESS_TYPE1_ID''※'' null(''''),\x0D\x0ASERVICE_ID ''※''null(''''),\x0D\x0ASEARCHKEYS ''※'' null(''''),\x0D\x0AINDUSTRY_CODE''※'' null(''''),\x0D\x0AINDUSTRY_NAME''※'' null(''''),\x0D\x0ALOAD_TIME ''\x0D'' null('''') \x0D\x0A )\x0D\x0A From ''d:\\ETL_FTP\\NEW_114_CDR\\NEW_114_CDR.DAT''\x0D\x0A ROW DELIMITED BY ''\x0A''\x0D\x0A ESCAPES\x0A OFF\x0D\x0A QUOTES OFF\x0D\x0A NOTIFY 100000\x0D\x0A WITH CHECKPOINT ON')
commit transaction
end 还和load 的数据文件关系很大,还有就是类型转换的设置,希望哪位高手能整理一下经验所得,供大家学习一下。
页:
[1]