SqlServer使用笔记

SqlServer

一、优化

1、索引(单索引、多列非聚集索引)

2、用 charindex 替换 like

3、select top 前几条的时候,尽量不用 Union all,可以的话用or代替

 

二、SQL使用笔记

1、(sql server 2012后)跳过n条记录取m条记录: order by …… OFFSET n ROWS FETCH NEXT m ROWS ONLY

 

三、查看系统

1、查看监听端口:exec sys.sp_readerrorlog 0, 1, 'listening'

2、查看服务名、计算机名:

SELECT @@SERVERNAME as '服务名',SERVERPROPERTY('SERVERNAME') as '计算机名'

3、查看索引大小:

SELECT i.name AS IndexName, SUM(s.used_page_count) * 8 AS IndexSizeKB
FROM sys.dm_db_partition_stats  AS s 
JOIN sys.indexes                AS i
ON s.[object_id] = i.[object_id] AND s.index_id = i.index_id
WHERE i.name = '索引名称'
GROUP BY i.name ORDER BY i.name

4、添加(非聚集/聚集)主键

alter table TableName add primary key clustered--主键且聚集 nonclustered 主键但非聚集
(
   columnName ASC
)

 

四、其他知识

1、【假设当前主机名:host-1,数据库实例名:testSql,端口为:1234】安装SqlServer后,如果要把端口修改为1433,去SqlServer配置管理器把对应实例的TCP/IP监听端口的TCP PORT都改成1433,然后重启SqlServer服务。重启完成后,数据库连接串也从【host-1\testSql,1234】变成【host-1\testSql,1433】。

2、数据库撑爆磁盘解决方案:

  • a.右击数据库→任务→收缩,然后收缩文件和数据库,包括对应日志(SqlServer数据库扩充后不会自动释放空余的空间)。
  • b.不需要做数据库增量备份(不需要开启CDC)的数据库,右击属性→选项→恢复模式→改成简单,再用a的方式收缩一次日志文件。
  • c.右击数据库,选择属性→文件,添加其他磁盘作为备用存储。
  • d.分离数据库文件,将文件移动到比较大的磁盘分区,再把文件重新关联数据库。

3、一千万条数据,建立索引时间约为4秒,索引占用空间大小约为200M。(索引字段大小为10)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值