转载自品略图书馆 http://www.pinlue.com/article/2018/09/1517/477196895458.html
SQL语句获取数据库文件全路径
select filename from master.dbo.sysdatabases where name = @databasename
一些有用的系统存储过程及用法
---------------------------
得到SQL SERVER 的服务器名
select convert(sysname, serverproperty(N"servername"))
读取键值
xp_instance_regread N"HKEY_LOCAL_MACHINE", N"SOFTWARE\Microsoft\MSSQLServer\Setup", N"SQLPath"
得到SQL SERVER 平台信息
xp_msver N"ProductVersion", N"Language", N"Platform", N"WindowsVersion", N"ProcessorCount", N"PhysicalMemory"
得到SQL SERVER实例的登陆模式
xp_instance_regread N"HKEY_LOCAL_MACHINE", N"SOFTWARE\Microsoft\MSSQLServer\MSSQLServer", "LoginMode"
LoginMode=2则为混合认证=1缺省 nt认证 =0 sa认证
The login security mode; 0 indicates Normal, 1 indicates Windows NT Integrated, and 2 indicates Mixed.
修改SQL SERVER实例的登陆模式
xp_instance_regwrite N"HKEY_LOCAL_MACHINE", N"SOFTWARE\Microsoft\MSSQLServer\MSSQLServer", "LoginMode", N"REG_DWORD", 1
1---Windows认证模式
2---SQL和Windows认证模式
得到sql server 服务器名,和域名列表
xp_ntsec_enumdomains
exec sp_grantdbaccess N"zhang", N"zhang"
exec sp_droplogin N"zhang"
exec sp_revokedbaccess N"zhang"
exec sp_dbcmptlevel N"dbname"
sp_stored_procedures
得到存储过程列表
xp_availablemedia 2
得到硬盘分区信息
EXECUTE master.dbo.xp_dirtree N"E:\", 1, 1
得到E:\下的文件列表
EXECUTE master.dbo.xp_fileexist N"F:\Program Files\Microsoft SQL Server\MSSQL\BACKUP\fdsa.dat"
文件是否存在
backup log database_name with NO_LOG|TRUNCATE_ONLY
截断事务日志
DBCC SHRINKDATABASE database_name
收缩数据库
exec sp_addumpdevice N"disk", N"bakdevice", N"D:\BACKUP\bakdevice"
添加备份设备
exec sp_dropdevice N"bakdevice"
删除备份设备
xp_instance_regread N"HKEY_CURRENT_USER", N"Software\Microsoft\MSSQLServer", N"LastBackupFileDir"
上次备份的路径
xp_instance_regwrite N"HKEY_CURRENT_USER", N"Software\Microsoft\MSSQLServer", N"LastBackupFileDir",REG_SZ, N"D:\Program Files\Microsoft SQL Server\MSSQL$FANHUI\BACKUP\"
改写备份路径
sp_rename "tablename.id1","id"
更改字段名