2,748
社区成员




SET DELETED ON
CREATE CURSOR temp (goog c(100),good c(100))
APPEND FROM tt.txt DELIMITED WITH CHARACTER '>'
DELETE FROM temp WHERE good == 'InpDetailSeek</function_id' OR good == '000</out_code ' OR ALLTRIM(good) == ''
UPDATE temp SET goog = goog(goog),good = good(good)
*******下面是行转列的sql语句,我试着写了写没写出来
*******这个我不熟,看其他人写
***********goog.prg***********
FUNCTION goog
LPARAMETERS lcString
RETURN STREXTRACT(lcString,'"','"',3)
ENDFUNC
*********good.prg*************
FUNCTION good
LPARAMETERS lcString
RETURN SUBSTR(lcString,1,AT('</',lcString) - 1)
ENDFUNC
SET DELETED ON
CREATE CURSOR temp (goog c(100),good c(100))
APPEND FROM tt.txt DELIMITED WITH CHARACTER '>'
DELETE FROM gg WHERE good == 'InpDetailSeek</function_id' OR good == '000</out_code ' OR ALLTRIM(good) == ''
UPDATE gg SET goog = goog(goog),good = good(good)
*******下面是行转列的sql语句,我试着写了写没写出来
*******这个我不熟,看其他人写
CLEAR
CREATE CURSOR temp (a1 c(20),a2 c(20),a3 c(20),a4 c(20),a5 c(20),a6 c(20),a7 c(20),a8 c(20),a9 c(20),;
a10 c(20),a11 c(20),a12 c(20),a13 c(20),a14 c(20),a15 c(20)) &&创建临时表(字段名我随意些的)
lcString = FILETOSTR("tt.txt")&&我把你贴出的内容放到了tt.txt文件中
lcDataString = SUBSTR(lcString,AT("<data ",lcString),AT("</data>",lcString) - AT("<data ",lcString))&&截取data内容
cTranString = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz<>/="' &&替换字符串,字段内容有英文时不能这样使用
DO WHILE AT("<row rownum=",lcDataString) != 0
lcRowString = SUBSTR(lcDataString,AT("<row rownum=",lcDataString),AT("</row>",lcDataString) - AT("<row rownum=",lcDataString))
lcValue = 'INSERT INTO temp (a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15) VALUES ("'
FOR i = 1 TO 15 && 取值
lcValue = lcValue + CHRTRAN(SUBSTR(lcRowString,AT('colname="',lcRowString,i),AT("</column>",lcRowString,i) - AT('colname="',lcRowString,i)),cTranString,'') + '","'
NEXT
lcValue = SUBSTR(lcValue,1,LEN(lcValue) - 2) + ')'
&lcValue
lcDataString = SUBSTR(lcDataString,AT("</row>",lcDataString) + 6)
ENDDO
BROWSE