直接获取SQL的查询结果原创
金蝶云社区-请输入昵称___
请输入昵称___
14人赞赏了该文章 2,326次浏览 未经作者许可,禁止转载编辑于2021年07月29日 09:28:45

  此方法只为方便测试,正式环境请慎用。

  星空系统中并没有提供,执行SQL语句直接返回查询结果的功能,对于公有云或者无法直接连接数据库的时候,查询比较麻烦。

   虽然可以通过万能报表的直接SQL语句报表,获取结果,但是也很麻烦。所以想到了用自定义API接口,只需要定义一个方法,将SQL语句作为参数,返回查询结果(此方法慎用,最好进行过滤筛选,只允许执行查询类的语句)。

  例如:

    public string testSql(string parm)
        {          
            string sql = parm;
           if (filtSql(sql))
            {
                return "";
            }
            DynamicObjectCollection dataEntitys = Kingdee.BOS.App.Data.DBUtils.ExecuteDynamicObject(this.KDContext.Session.AppContext, sql);
            string msg = JsonConvert.SerializeObject(dataEntitys);
            return msg;           
        }

image.png

image.png

赞 14