以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  后台数据,不同分公司,分开表存放比放在一张表,查询速度是否会提升  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=111205)

--  作者:fubblyc
--  发布时间:2017/12/17 19:53:00
--  后台数据,不同分公司,分开表存放比放在一张表,查询速度是否会提升
甜老师,
后台数据,不同分公司,分开表存放比放在一张表,查询速度是否会提升
分开存放,查询不影响业务,就是会麻烦点
所以想了解下这样操作查询速度会不会变快。
现在几个分公司的数据放在一张表,通过手机一个简单的查询,会导致服务端CPU占用剧增,容易死掉。
所以想看是不是分开存放查询会不会好点。。。
[此贴子已经被作者于2017/12/17 19:53:50编辑过]

--  作者:fubblyc
--  发布时间:2017/12/17 20:16:00
--  
同类型的数据。
可以简单地理解为不同的客户,互不影响。之前是放在一张表,现在正在想是不是按客户分开存储,查询,以提升速度

另外一个问题,在一个库里,有一张表,数据量特别大,会对其他表的查询速度产生影响吗?
[此贴子已经被作者于2017/12/17 20:26:12编辑过]

--  作者:有点甜
--  发布时间:2017/12/17 21:10:00
--  

分开表也提高不了效率的。区分不同的表,只是一个简单的查询,不会影响效率的。

 

如果觉得慢,你可以加索引;或者优化一下你的查询语句。


--  作者:fubblyc
--  发布时间:2017/12/17 22:23:00
--  
甜老师,就是最简单的语句:
Dim cmd As New SQLCommand
Dim dt As DataTable
cm d.C
cm d.CommandText = "SELEC T * From {明细}"
dt = cm d.ExecuteReader()
Dim dr As DataRow = dt.SQ LFind("[手机号码] = \'" & e.PostValues("sj") & "\'")
If dr IsNot Nothing Then
    wb.AddPageTitle("","ph1","查询","")
    wb.AddForm("","form1","")
    With wb.AddInputGroup("form1","ipg3","信息")
        With .AddInput("gs","公司","text")
            .value = dr("公司")
            .Readonly = True
        End With
     end with
end if

--  作者:有点甜
--  发布时间:2017/12/17 23:03:00
--  

这样写,不然你要把所有数据加载进来,怎么可能不慢?

 

cmd.CommandText = "SELECT * From {明细} where 1=2"
dt = cm d.ExecuteReader()

--  作者:fubblyc
--  发布时间:2017/12/17 23:15:00
--  
恩恩。没错。测试了,这样确实快!!
谢谢甜老师!!

--  作者:有点蓝
--  发布时间:2017/12/18 9:36:00
--  
直接一条语句即可,没有必要再使用SQ LFind,还要连接2次数据库

cm d.CommandText = "SELEC T * From {明细} where [手机号码] = \'" & e.PostValues("sj") & "\'"