加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SQLServer实践总结

发布时间:2020-12-12 14:16:01 所属栏目:MsSql教程 来源:网络整理
导读:1.如何收缩数据库? 下面的语句将vrveis数据库未使用的空间释放给操作系统 Dump transaction vrveis with no_log; DBCC shrinkfile (vrveis_log,Truncateonly) 2.如何定时执行sql语句? Waitfor time ‘hh:mm’ sql 3.如何连接远程服务器 第一步:链接服务器

1.如何收缩数据库?

下面的语句将vrveis数据库未使用的空间释放给操作系统

Dump transaction vrveis with no_log;

DBCC shrinkfile (vrveis_log,Truncateonly)

2.如何定时执行sql语句?

Waitfor time ‘hh:mm’ sql

3.如何连接远程服务器

第一步:链接服务器

Exec sp_addlinkedserver @server=myserver,@srvproduct=’’,@provider=’SQLOLEDB’,@datasrc=’dbtest’

第二步:登录

Exec sp_addlinkedsrvlogin ‘myserver’,’false’,null,’sa’,’sa’

4.sql技巧:

? 查看对象占用的空间:Sp_spaceused 对象名,true【false】,其中,true和false表示是否更正sysindexes表的不正确内容

? Object_id(’对象名’)--此函数得到对象的ID,例:select * from sysindexes where id=object_id(‘tablename’)

? Set nocount on[off](默认为Off):使返回的结果中不包含有关受sql语句影响的行数的信息。当为ON时,不返回计数信息;当为off时,返回计数信息。

5.sqlserver重要的系统表

表名

主要功能

存在的数据库

Sysobjects

主系统表,记录每个数据库对象的信息

每个数据库

Syscolumns

记录数据库的字段信息

Master,用户定义数据库

Sysindexes

记录数据库的索引信息

Master,用户定义数据库

Sysusers

记录数据库用户和角色信息

Master,用户定义数据库

Sysdepends

记录表、视图、存储过程的依赖关系信息

Master,用户定义数据库

Sysdatabases

系统数据库和用户定义数据库的信息

Master

Sysconstraints

记录数据库完整性约束信息

Master,用户定义数据库

6.游标的使用

--定义游标

Declare student_cursor CURSOR FOR

Select * from 学生表

--打开游标

OPEN student_cursor

--使用游标

FETCH NEXT FROM student_cursor

或FETCH student_cursor INTO @stu_id,@stu_name…

--使用系统函数FETCH_STATUS来判断游标数据是否读取完毕

While(@@FETCH_STATUS=0)

Begin

//SQL操作语句

FETCH student_cursor INTO @stu_id,@stu_name…

END

--关闭游标

CLOSE student_cursor

--释放游标

DEALLOCATE student_cursor

7.用SQL执行备份操作(文件名包含年月日)

Declare @bakdate char(8),

@dest varchar(100)

Set @bakdate=(selectdatename(year,getdate())+datename(month,getdate())+datename (day,getdate())

Set @dest=’F:...’+@bakdate+’.dat’

Backup database file_dept to disk=@dest;

Go

8.用SQL生成自增列

Select num=(select sum(1) from daryxxb where dah<=a.dah),* from daryxxb a

9.修改数据库的逻辑文件名

Alter database dagl_web

Modify file(

Name=dagl_oracle_log,

Newname=dagl_Web_log)

Alter database dagl_web

Modify file(

Name=dagl_oracle_data,

Newname=dagl_Web_data)

10.数据库无法进行事务日志备份

SQLServer中,想对某数据库进行事务日志的备份,但却只能选择“数据库完全备份”和“数据库差异备份”其它的两种都不能选;可用如下语句解决:

exec sp_dboption 'dbname','trunc','false' go

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读