SQL Server CE引擎是否必须被告知命令类型为文本(如果这应该很明显的话)

本文关键字:如果 文本 是否 引擎 CE Server 类型 命令 被告 SQL | 更新日期: 2023-09-27 18:25:38

我有这样的代码:

using (SqlCeConnection sqlConn = new SqlCeConnection(@"Data Source='my documents''PlatypusDB.SDF"))
{
    sqlConn.Open();
    string dmlStr = "insert into platypus_settings (setting_name, setting_value) values(?, ?)";
    SqlCeCommand cmd = new SqlCeCommand(dmlStr, sqlConn);
    cmd.CommandType = CommandType.Text; //<-- necessary?
    cmd.Parameters[0].Value = settingName;
    cmd.Parameters[1].Value = settingVal;
    try
    {
        cmd.ExecuteNonQuery();
    }
    catch (Exception ex)
    {
        Platypus.ExceptionHandler(ex, "writeSettingsVal");
    }
}

但不知道是否需要注释行,是膨胀代码,还是两者都无关紧要?

SQL Server CE引擎是否必须被告知命令类型为文本(如果这应该很明显的话)

但不知道是否需要评论行

没有。不是因为它很明显,而是因为它恰好是默认的。

来自MSDN:

属性值
CommandType值之一。默认值为"文本"。

话虽如此,它当然不是膨胀的代码,我可能会把它包括在内,只是为了让代码读起来不那么令人震惊。