zoukankan      html  css  js  c++  java
  • ADO.NET获取TIPTOP存储过程的返回值

    //在TIPTOP中的操作,使用ODBC數據源連接INFORMIX,其他大同小異

      /*Select*/
      private DataTable OdbcSelect_ndsf(string sql)
      {
       OdbcConnection objOdbcConnection=new OdbcConnection(strOdbcConnection_ndsf);
       objOdbcConnection.Open();
       string strOdbcCommand2=sql;
       OdbcCommand objOdbcCommand=new OdbcCommand(strOdbcCommand2,objOdbcConnection);   
       OdbcDataAdapter objOdbcDataAdapter=new OdbcDataAdapter(objOdbcCommand);
       DataSet DS=new DataSet();
       objOdbcDataAdapter.Fill(DS);
       DataTable dtb=DS.Tables[0];
       objOdbcConnection.Close();
       return dtb;
      }
      /*Update*/
      private void OdbcUpdate_ndsf(string sql)
      {
       OdbcConnection objOdbcConnection=new OdbcConnection(strOdbcConnection_ndsf);
       objOdbcConnection.Open();
       string strOdbcCommand2=sql;
       OdbcCommand objOdbcCommand=new OdbcCommand(strOdbcCommand2,objOdbcConnection); 
       objOdbcCommand.ExecuteNonQuery();    
      
      }




    一般性SQL方法

    --------------------------------------------
    假设有存储过程如下:
    ---------------------------------------------


    CREATE proc sp_uptmp @tmpName varchar(50),@srcPos varchar(255)
    as


    Begin TRAN
         insert into t_template values(@tmpName,@srcPos)
    COMMIT 


    return isnull(@@identity,0)
    GO


     

    ------------------------------------------------------------
    在 ado.net 里面获取返回值的方法为(c#):
    ------------------------------------------------------------
       SqlConnection dbconn = new SqlConnection(connStr);
       SqlCommand cmd = new SqlCommand("sp_uptmp",dbconn);
       cmd.CommandType = CommandType.StoredProcedure;


       SqlParameter tmpName = cmd.Parameters.Add("@tmpName",SqlDbType.VarChar);
       SqlParameter srcPos = _cmd.Parameters.Add("@srcPos",SqlDbType.VarChar);
       SqlParameter rtnval = cmd.Parameters.Add("rval",SqlDbType.Int);


       tmpName.Direction = ParameterDirection.Input;
       srcPos.Direction = ParameterDirection.Input;
       rtnval.Direction = ParameterDirection.ReturnValue;


       tmpName.Value = "";
       srcPos.Value = "";
       dbconn.Open();
       cmd.ExecuteNonQuery();
       dbconn.Close();


       tmpid = (int)rtnval.Value;  //此处即为返回值
     

  • 相关阅读:
    Promise是如何实现异步编程的?
    js 检测元素是否被覆盖
    antd upload组件结合七牛云上传图片
    webpack原理分析之编写一个打包器
    docker命令构建Java程序镜像,并运行它
    新建mysql docker指定版本
    spring官方文档网址
    rabbitmq用x-delayed-message的exchange特性支持消息延迟消费
    解决Can't open /usr/lib/grub/update-grub_lib
    java8-强大的Stream API
  • 原文地址:https://www.cnblogs.com/godwar/p/813621.html
Copyright © 2011-2022 走看看