MSSQL编程:sql 中的经常使用存储历程
有了数据以后,我们就要想一个比较统一的方法来闪回。上面我们说了对于DML操作,可以通过反向执行所有逆操作来实现,对于语句里面的DDL,只能直接跳过。原因是一个DDL不一定有直接的逆操作。存储历程XP_CMDSHELL"dir"--实行DOS命令dir注释:实行DOS命令,就是在XP_CMDSHELL"输出DOS命令";
EXECsp_addlogingolder,golder--增加SQL用户
注释:EXECsp_addlogin 用户名,暗码;
execsp_droplogingolder--删除SQL用户golder
注释:execsp_droplogin删除的用户名;
execsp_addsrvrolemembergolder,sysadmin--增加用户到SQL办理员
注释:execsp_addsrvrolemember增加的用户名,sysadmin
sysadmin为办理员权限;
execsp_dropsrvrolemembergolder,sysadmin--删除SQL办理员权限
注释:execsp_dropsrvrolemember删除办理员权限的用户名,sysadmin
EXECsp_passwordNULL,golder,golder--变动SQL上岸暗码
注释:EXECsp_password本来的暗码(假如暗码为空,就写NULL),变动后的暗码,变动暗码的用户名;
ifexists(select*from
dbo.sysobjectswhereid=object_id(N.)and
OBJECTPROPERTY(id,NIsExtendedProc)=1)
execsp_dropextendedprocN.
GO--往除SQL上的XP_CMDSHELL权限
xp_regenumvalues以多个纪录集体例前往一切键值
利用办法:
xp_regenumvalues注册表根键,子键
好比说,想看看HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun的一切键值:
usemaster
execxp_regenumvaluesHKEY_LOCAL_MACHINE,SOFTWAREMicrosoftWindowsCurrentVersionRun
xp_regread前往制订键的值
利用办法:
xp_regread根键,子键,键值名
usemaster
execxp_regreadHKEY_LOCAL_MACHINE,SOFTWAREMicrosoftWindowsCurrentVersion,CommonFilesDir
xp_regwrite写进注册表
利用办法:
xp_regwrite根键,子键,值名,值范例,值
usemaster
execxp_regwriteHKEY_LOCAL_MACHINE,SOFTWAREMicrosoftWindowsCurrentVersion,TestValueName,reg_sz,hello
注重值范例有2种REG_SZ暗示字符型,REG_DWORD暗示整型
xp_regdeletevalue删除某个值
利用办法:
xp_regdeletevalue根键,子键,值名
usemaster
execxp_regdeletevalueHKEY_LOCAL_MACHINE,SOFTWAREMicrosoftWindowsCurrentVersion,TestValueName
xp_regdeletekey删除键,包含该键下一切值
利用办法:
usemaster
xp_regdeletekeyHKEY_LOCAL_MACHINE,SOFTWAREMicrosoftWindowsCurrentVersionTestkey
使为了数据安全,我们搭建了主从。但实时主从备份只能防止硬件问题,比如主库的硬盘损坏。但对于误操作,则无能为力。比如在主库误删一张表,或者一个update语句没有指定where条件,导致全表被更新。 是否碎片会引发效率问题?这都是需要进一步探讨的东西。varbinary(max)代替image也让SQLServer的字段类型更加简洁统一。 学习SQL语言的话如果要学会去做网站就不是很难!但是要做数据库管理的话就有难度了! 习惯敲命令行的朋友可能会爽一些。但是功能有限。适合机器跑不动SQLServerManagementStudio的朋友使用。 这一点很好的加强了profiler的功能。但是提到profiler提醒大家注意一点。windows2003要安装sp1补丁才能启动profiler。否则点击没有反应。 索引视图2k就有。但是2005对其效率作了一些改进但是schema.viewname的作用域真是太限制了它的应用面。还有一大堆的环境参数和种种限制都让人对它有点却步。 可能有的朋友会抱怨集成的orderby,其实如果使用ranking函数,Orderby是少不了的。如果担心Orderby会影响效率,可以为orderby的字段建立聚集索引,查询计划会忽略orderby操作(因为本来就是排序的嘛)。 sqlserver的痛苦之处在于有用文档的匮乏,很多只是表明的东西
页:
[1]