VFP调用Sql Server的更新语句(通用类)!

    * ----------------------------------------------------------------------- \\ sql_update

	    m_dbf1='sys_menu'          && \\ 更新表名
	    m_name=''
	    m_where='where id=?n_id'   && \\ 更新的条件
        m_count=1  && \\ 更新个数
	    m_info=0   && \\ 是否有更新成功提示

	    x1='name'  && \\ 远程表字段 
	    y1=mm_text && \\ 字段变量内容
		SELECT menu
	    do cx\sql_update
	    thisform.retu
	    
	    SELECT menu 
	    REPLACE name WITH mm_text  && \\ 替换本地表内容

    * ------------------------------------------------------------------------------------------- \\ 更新数据库通用程序

        m_up=''
        f=0

        DO whil f<m_count

           f=f+1
           ff=ALLTRIM(STR(f))

           m_up=m_up+x&ff+"=?"+"y&ff"+','
           
        ENDDO
        m_up=SUBSTR(m_up,1,LEN(m_up)-1)
	    m_sql="update "+m_dbf1+" set "+m_up+" "+m_where  && \\ sql语句 where role_id


TRY
 *   STRTOFILE(m_sql ,sssa)
CATCH
ENDTRY

		m_retu=0
		IF SQLEXEC(gnMyLogHandle,m_sql) = -1
		    m_retu=1
        AERROR( laError )
        MESSAGEBOX( '读取数据库错误提示:' + ALLTRIM(STR(laError[ 1 ]))  + CHR( 13 ) +laError[ 2 ])
		ENDIF

    * ------------------------------------------------------------------------------------------- \\ 检查是否出错

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

     try
     
	    IF m_info=1

		   MESSAGEBOX('数据更新成功!请返回!'+m_message,48,m_message1,1000)
		   m_info=0
	    
	    ENDIF
     CATCH
     ENDTRY

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

敦厚的曹操

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值