计算机等级考试成绩什么时候出来|计算机等级考试辅导:带参数的sql和不带参数的sql区别

时间:2018-05-15  来源:计算机等级考试  阅读:

  带参数的sql语句,在数据库端,执行的是
  exec sp_executesql
  eg:
  exec sp_executesql N"insert into LCS_Sys_Model ([Model_GUID],[Model_Name],[Model_Desp],[Model_IsSys]) values ( @Model_GUID,@Model_Name,@Model_Desp,@Model_IsSys)", N"@Model_GUID uniqueidentifier,@Model_Name nvarchar(50),@Model_Desp nvarchar(500),@Model_IsSys bit", @Model_GUID = "F3CD1369-58C0-4A1F-AF88-05FCF734E079", @Model_Name = N"测试实体模型", @Model_Desp = N"实体模型描述", @Model_IsSys = 0
  没有带值的sql语句。其执行是直接的sql语句。
  insert into lcs_Sys_Model ([Model_GUID],[Model_Name],[Model_Desp],[Model_IsSys]) values ( "F3CD1369-58C0-4A1F-AF88-05FCF734E079","name","desp",1 )
  看上面的执行代码,你会不会认为是下面的高效啊?说实话我也没有仔细测试过。可是据我所知,sqlserver能够缓存参数信息和sql编译后的信息,第一句带参 数的sql因为前面一部是不变的(红色部分)。所以能够缓存起来(就像执行存储过程一样)。而下面的一句sql。因为value后面的值总是不固定,因此 sqlserver总是认为是不同的sql语句。因此每次都要重新编译生成。
  以上结论来源于下面的测试代码。
  http://space.cnblogs.com/question/2692/
  System.Data.SqlClient.SqlParameter[] parameters = {
  new SqlParameter("@Model_GUID", SqlDbType.UniqueIdentifier),
  new SqlParameter("@Model_Name", SqlDbType.NVarChar,50),
  new SqlParameter("@Model_Desp", SqlDbType.NVarChar,500),
  new SqlParameter("@Model_IsSys", SqlDbType.Bit)
  };
  parameters[0].Value = new Guid("F3CD1369-58C0-4A1F-AF88-05FCF734E079");
  parameters.Value = "测试实体模型";
  parameters.Value = "实体模型描述";
  parameters.Value = false;
  string connStr = @"Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=officially;Data Source=LCSNB"SQL2K";
  string cmdStr = "insert into LCS_Sys_Model ([Model_GUID],[Model_Name],[Model_Desp],[Model_IsSys]) values ( @Model_GUID,@Model_Name,@Model_Desp,@Model_IsSys)";
  System.Data.SqlClient.SqlConnection conn = new System.Data.SqlClient.SqlConnection(connStr);
  System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand(cmdStr);
  cmd.Connection = conn;
  foreach (var item in parameters)
  {
  cmd.Parameters.Add(item);
  }

 

 

计算机等级考试成绩什么时候出来|计算机等级考试辅导:带参数的sql和不带参数的sql区别

http://m.kwkids.com/jisuanjilei/8366.html

推荐访问:计算机等级考试时间 计算机等级考试官网
相关阅读 猜你喜欢
本类排行 本类最新