VFP调用Sql Server的取字段值(通用类)!

    * ----------------------------------------------------------------------- \\ sql_field
        
        m_fields='file_id' && \\ sql语句
        m_dbf='sys_file'   && \\ 取值的远程表字段
        m_while=' file_id=?user_info.photo_id'
        PUBLIC m_field
        m_field=1

		do cx\sql_field
		thisform.retu


    * ------------------------------------------------------------------------------------------- \\ 取字段变量
*    m_sql=m_fields&&+m_dbf+' where '+m_while
    
    m_sql='select '+m_fields+' from '+m_dbf+' where '+m_while
	m_retu=0
	IF SQLEXEC(gnMyLogHandle,m_sql,'abcde') = -1
	    m_retu=1
        AERROR( laError )
        MESSAGEBOX( '读取数据库错误提示:' + ALLTRIM(STR(laError[ 1 ]))  + CHR( 13 ) +laError[ 2 ])
	ENDIF
    STRTOFILE(m_sql ,"c:\sql.TXT")
    * ------------------------------------------------------------------------------------------- \\ 检查是否出错

	IF m_retu=1
       MESSAGEBOX(m_sql)
       STRTOFILE(m_sql ,"c:\Error.TXT")
	   MESSAGEBOX('请注意:系统在【字段值】数据【'+m_name+'】时,发生错误,请检查网络是否畅通或与系统管理员联系!'+m_message,48,m_message1)
       RETURN

	ENDIF
    SELECT abcde

    GO top
    
*m_fields='123,abc,xyz'
m_fields=m_fields+','
    z=0
    DO whil .t.
       z=z+1
       zz=ALLTRIM(STR(z))
    
       IF AT(',',m_fields,z)=0
          EXIT
       ELSE
       
          IF z=1

             zzz=SUBSTR(m_fields,1,AT(',',m_fields,z)-1)
             m_field=abcde.&zzz
          
          ELSE
          
             zzz=SUBSTR(m_fields,AT(',',m_fields,z-1)+1,AT(',',m_fields,z)-AT(',',m_fields,z-1)-1)
             m_field&zz=abcde.&zzz
          ENDIF
       
       ENDIF
    ENDDO
*    m_field=max
    USE IN abcde


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值