Foxtable(狐表)用户栏目专家坐堂 → SQL哪种比较有效率?


  共有4388人关注过本帖树形打印复制链接

主题:SQL哪种比较有效率?

帅哥哟,离线,有人找我吗?
mamuaiqing
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:824 积分:6288 威望:0 精华:0 注册:2012/3/1 3:17:00
SQL哪种比较有效率?  发帖心情 Post By:2013/10/16 15:14:00 [显示全部帖子]

以下两种代码中,同样是查找指定条件数据,在面对很多数据的时候哪种比较有效率?

一,直接后台查询

Dim cmd As New SQLCommand
Dim
nm As String  = "贺辉"
cmd
.ConnectionName = "User"
cmd.CommandText =
"Select Count(*) From {Users} Where Name = '" & nm & "'"
If
cmd.ExecuteScalar > 0 Then
    Messagebox.Show(
"已经存在同名用户","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
End If

 

Dim cmd As New SQLCommand
    Dim
dt As
DataTable
   
Dim dr As DataRow = e.DataRow
    cmd.ConnectionName =
"行政区域"
    cmd.CommandText =
"SELECT * From {行政区域} Where [省市] = '" & dr("省市") & "' And [县市] = '" & dr("县市") & "'"
    dt = cmd.ExecuteReader


 回到顶部
帅哥哟,离线,有人找我吗?
mamuaiqing
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:824 积分:6288 威望:0 精华:0 注册:2012/3/1 3:17:00
  发帖心情 Post By:2013/10/16 19:22:00 [显示全部帖子]

汗,老毛病又犯了,没把事例搞清楚,重新改下代码

一,

Dim cmd As New SQLCommand
Dim
nm As String  = "贺辉"
cmd
.ConnectionName = "User"
cmd.CommandText =
"Select Count(*) From {Users} Where Name = '" & nm & "'"
If
cmd.ExecuteScalar > 0 Then
    Messagebox.Show(
"已经存在同名用户","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
End If

二,

    Dim cmd As New SQLCommand

    Dim nm As String  = "贺辉"
    Dim
dt As
DataTable
    cmd.ConnectionName = "Users"
    cmd.CommandText =
"SELECT * From {Users} Where [Name] = '" & nm & "'"
    dt = cmd.ExecuteReader

    If dt.DataRows.Count > 0 Then
      Messagebox.Show("已经存在同名用户","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    End If

 

在很多数据的情况下哪个比较有效率


 回到顶部