SQL Server 2008 R2上的身份验证设置是否会产生任何性能差异?

Mon*_*RPG 11 c# sql-server asp.net authentication performance

好吧,这是第一种方法

public static string srConnectionString = "server=localhost;database=myDB; "+
" uid=sa;pwd=myPW;";
Run Code Online (Sandbox Code Playgroud)

这是第二种方法

public static string srConnectionString = "server=localhost;database=myDB; "+
" integrated security=SSPI;persist security info=False; Trusted_Connection=Yes;";
Run Code Online (Sandbox Code Playgroud)

这两个连接字符串之间是否存在任何性能差异或任何其他差异?

这里我的sql连接类有什么建议吗?

using System;
using System.Data.Sql;
using System.Data.SqlClient;
using System.Data;

public static class DbConnection

{
    public static string srConnectionString = "server=localhost; database=myDB; uid=sa; pwd=myPW;";

    public static DataSet db_Select_Query(string strQuery)
    {
        DataSet dSet = new DataSet();
        if (strQuery.Length < 5)
            return dSet;
        try
        {
            using (SqlConnection connection = new SqlConnection(srConnectionString))
            {
                connection.Open();
                using (SqlDataAdapter DA = new SqlDataAdapter(strQuery, connection))
                {
                    DA.Fill(dSet);
                }
            }
            return dSet;
        }
        catch
        {
            using (SqlConnection connection = new SqlConnection(srConnectionString))
            {
                if (srConnectionString.IndexOf("select Id from tblAspErrors") != -1)
                {
                    connection.Open();
                    strQuery = strQuery.Replace("'", "''");

                    using (SqlCommand command = new SqlCommand("insert into tblSqlErrors values ('" + strQuery + "')", connection))
                    {
                        command.ExecuteNonQuery();
                    }
                }
            }
            return dSet;
        }
    }

    public static void db_Update_Delete_Query(string strQuery)
    {
        if (strQuery.Length < 5)
            return;
        try
        {
            using (SqlConnection connection = new SqlConnection(srConnectionString))
            {
                connection.Open();
                using (SqlCommand command = new SqlCommand(strQuery, connection))
                {
                    command.ExecuteNonQuery();
                }
            }
        }
        catch
        {
            strQuery = strQuery.Replace("'", "''");
            using (SqlConnection connection = new SqlConnection(srConnectionString))
            {
                connection.Open();
                using (SqlCommand command = new SqlCommand("insert into tblSqlErrors values ('" + strQuery + "')", connection))
                {
                    command.ExecuteNonQuery();
                }
            }
    }
}
Run Code Online (Sandbox Code Playgroud)

}

Ric*_*iwi 5

性能差异微不足道,可以忽略不计.身份验证检查是

  1. ...仅在登录时执行.不会为每个查询重新检查连接.但是,对于连接池,连接经过多次身份验证和重置,几乎每次查询都很可能
  2. ...与每个文件访问和涉及域的其他活动相同,都是针对Active Directory进行检查的

仅供参考这两个设置相同(使用一个或另一个):

集成安全性= SSPI
Trusted_Connection =是