【问题标题】:SQLCommandType.View - why is not this provided by MS?SQLCommandType.View - 为什么这不是 MS 提供的?
【发布时间】:2013-03-05 14:11:27
【问题描述】:

我们看到 System.Data.CommandType 只有 3 个枚举:“StoredProcedure”、“TableDirect”和“Text”。为什么我们不将“查看”视为一个选项? Microsoft 不提供此选项的特定框架原因是什么?

我在这里专门讨论 SQL Server 视图。

我们将非常感谢您的回答。

【问题讨论】:

    标签: c# .net vb.net ado.net


    【解决方案1】:

    因为View 可以通过TableDirectText 访问。无论如何,最常见的访问是Text,因为您通常会这样做:

    DataTable dt = new DataTable();
    
    using (SqlConnection c = new SqlConnection(cString))
    {
        using (SqlDataAdapter sda = new SqlDataAdapter(sql, c))
        {
            sda.SelectCommand.Parameters.Add("parm1", value1);
    
            c.Open();
            sda.Fill(dt);
        }
    }
    

    最后,视图实际上在 SQL Server 中表示为表。它有一个真正的表定义,只是碰巧是用查询构建的。

    【讨论】:

      【解决方案2】:

      大多数时候 View 不是单独使用的,而是作为查询或 SP 的一部分。因此,没有必要提供专用的 CommandType。函数也是如此——没有 CommandType.Function。

      【讨论】:

        猜你喜欢
        • 2021-11-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-02-22
        • 1970-01-01
        • 2021-10-29
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多