DB2命令行處理器中的語句執行問題

          在DB2中創建UDF時,將寫好的sql放在命令行處理器中執行,報錯.
          提示: 命令被當作 SQL語句來處理,因為它不是有效的“命令行處理器”命令.....
          解決辦法: 不用命令行處理器(當然也不用Quest Contral之類的第三方工具,主要是因為服務器的原因) , 編寫一個批處理: db2cmd -c db2 -z log.out -td@?? -f mysql.clp .?其中, mysql.clp中的sql要做部分改動,主要是因為結束符的問題, 如:

          CREATE FUNCTION F_YEAR_ALL_DAYS
          ?(THE_DAY VARCHAR(10)
          ?)
          ? RETURNS TABLE
          ?? (ROWID INTEGER,
          ??? DETAIL_DATE DATE
          ?? )
          ? SPECIFIC SQL071218171441700
          ? LANGUAGE SQL
          ? NOT DETERMINISTIC
          ? READS SQL DATA
          ? STATIC DISPATCH
          ? CALLED ON NULL INPUT
          ? EXTERNAL ACTION
          ? INHERIT SPECIAL REGISTERS
          ? p1:begin atomic
          ??? DECLARE v_first_day VARCHAR(10);
          ??? SET v_first_day = substr(THE_DAY,1,4)||'-01'||'-01';
          ??? RETURN
          ????? select T.rowid,T.detail_date
          ??????? from (
          ????????? select a.rowid,a.detail_date
          ??????????? from (
          ????????????? select ROW_NUMBER() over() as rowid, (DATE(v_first_day) + (
          ????????????????? ROW_NUMBER() over() - 1) day ) as detail_date
          ??????????????? from table_a) a
          ??????????? where year(a.detail_date) = year(v_first_day)) as T;
          ? end p1@
          這里,函數體中的分號結束符并沒有改動,只是在函數體外圍定義的地方加了一個標志符p1,并用@代替分號結束符.

          posted on 2008-04-01 13:45 心硯 閱讀(696) 評論(0)  編輯  收藏 所屬分類: 數據庫


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          <2008年4月>
          303112345
          6789101112
          13141516171819
          20212223242526
          27282930123
          45678910

          導航

          統計

          常用鏈接

          留言簿(2)

          隨筆分類

          文章分類

          文章檔案

          Forum

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 天峨县| 绩溪县| 七台河市| 宝应县| 四川省| 和林格尔县| 厦门市| 安达市| 高清| 大渡口区| 当阳市| 股票| 肇庆市| 大庆市| 山东| 伊川县| 枣强县| 黄梅县| 隆德县| 祁门县| 云安县| 合水县| 呼图壁县| 靖宇县| 连江县| 锦屏县| 榆林市| 朝阳区| 舟曲县| 洱源县| 乌苏市| 宁南县| 昭通市| 竹山县| 鹿邑县| 临猗县| 曲水县| 滁州市| 华坪县| 许昌市| 秀山|