sqlsql update语句解释

3757人阅读
--sp_revokedbaccess jacobean 删除当前数据库中的jacobean账户 --sp_change_users_login 'Report' 显示登录映射的当前用户的报告 --sp_droprole sqladmin1 删除当前数库中的sqladmin1角色 --sp_droprolemember 'sqladmin1','jacky' 从sqladmin1角色中,删除jacky这个账户 --sp_grantlogin 'nwtraders/sqladmin1'&&创建登录SQL SERVER 的域用户nwtraders/sqladmin1 --sp_revokelogin 'nwtraders/sqladmin2' 废除域用户nwtraders/sqladmin2登 &&&& 录SQL SERVER 的权限,但不明确地阻止nwtraders/sqladmin2访问SQL SEVER,也 &&&& 就是表是,nwtraders/sqladmin2这个账户,还可以连接SQL SERVER --sp_denylogin 'nwtraders/sqladmin3' 阻止域用户nwtraders/sqladmin3连 && 接SQL SERVER 也就是表是,不能用nwtraders/sqladmin1这个账户登录SQL SERVER, && 也不能连接SQL SERVER --sp_defaultdb 'nwtraders/sqladmin4','jacobean' && 改变nwtraders/sqladmin4登录时的默认数据库为jacobean --sp_defaultlanguage 'nwtraders/sqladmin5','slovak'改变nwtraders/sqladmin5登 &&录时的默认语言为slovak --sp_addlogin 'jacobean','123465','jacobean','simplified chinese' &&&&创建jacobean为新的SQL登录,密码为123456,默认数据库为jacobean,默 &&&&认语言为simplified chinese --sp_droplogin 'jacobean'删除jacobean这个SQL登录 --sp_password '123456','321123','jacobean' 更改jacobean这个SQL登录的密码,123456为旧密码,321123为新的密码 --grant create table to jacobean, jacky, [nwtraders/sqladmin6] 将create table语句权限授 && 予SQL登录用户jacobean,用户自定义的角色jacky,WINDOWS 组或用户nwtraders/sqladmin6 --deny create table to jacobean 拒绝jacobean用户使用create table语句权限 --revoke all from jacobean 废除所有jacobean用户的已授予和已拒绝权限 --sp_helprotect null, null, null, 's' 列出当前数据库所有的语句权限 --grant select on name to jacobean,jacky,[nwtraders/sqladmin7] 将name这个 && 表的上的SELECT对象权限授予SQL登录用户jacobean,用户自定义的角色jacky,WINDOWS 组 && 或用户nwtraders/sqladmin7 --deny insert, update, delete to jacobean 拒绝jacobean这个账户的insert, update, delete权限 --grant select on name to jacobean with grant option 将name这个表上的SELECT对象权限授予用 && 户自定义的数据库角色jacobean,并且,jacobean角色上的所有成员都有权限将name这个表上的SELECT && 对象权限授予其它用户,角色或组 --grant select on name to jacobean as [nwtraders/sqladmin6] 将name表上的对象权限 授予jacobean这个用户,而nwtraders/sqladmin6这个组用户通过使用AS来引用他的成员身份, 从而证明授权行是有效的 --revoke grant option for on name from jacobean as [nwtraders/sqladmin6] 废除 了jacobean的WITH GRANT OPTION权限,但表name的WITH GRANT OPTION权限没有被废除 --exec sp_helprotect 'name' 列出当前数库据中name这个表的所有的对象权限 --exec sp_helprotect null, 'jacobean' 列出jacobean在当前数据库中所有的语句权限和对象权限 --exec sp_helprotect null , null , 'nwtraders/sqladmin7' 列出当前数据库中的 && 组成员nwtraders/sqladmin7授予的所有对象权限 --sp_changeobjectowner name,jacobean 改变name这个表的所有者为jacobean用户 --sp_addapprole 'jacky_01','123456' 建立应用程序角色,jacky_01为应用程序角色名,123456为密码--sp_addlinkedserver 'jacky/jacky' 链接名称为JACYK的SQL服务器上的名称为JACKY的实例 --exec sp_addmessage 50099 , 16, 'customer%d was deleted by%s', 'us_english','true' 创建用户自定义错误消息50099,当发生该错误的时候,记入WINDOWS应用程序日志 --{create procedure removecustomer @customerid varchar(5) = null --as --declare @username varchar(60) --set @username = suser_name() 请注意书本上的这段代码是错误的,我已经改过来了 --begin transaction --delete customers --where customerid = @customerid --raiserror (5, @customerid, @username) 该段SQL语句的作用是,创建在customers表上删除客户的存储过程,而这个存储过程在执行期间, --commit transaction} 会触发50099这个错误号,之后再用raiserror语句,其作用是用适合的值替换刚才删除的客户号和执行该存储过程的用户名. --{error: 50099, severity: 16, state 1 由于邮件服务器无搞到,所以呢段代码无法验证而呢段代码既作用系,当用户执行remove customer存储过程时, --remove customer 732 was deleted by nwtraders/administrator} 将触法50099错误号,并在WINDOWS日志中记录,并将错误信息发给账户管理员. --注释:jacobean-&数据库名称,C:/BACKUP/jacobean_disk.bak-&文件路径和文件名 --alter database jacobean set recovery full 将数据库jacobean的恢复模型设置为full即为,完全 --alter database jacobean set recovery simple 将数据库jacobean的恢复模型设置为simple即为,简单 --alter database jacobean set recovery bulk_logged 将数据库jacobean的恢复模型设置为bulk_logged即为,大容量 --exec sp_addumpdevice 'disk', 'jacobean_disk', 'C:/BACKUP/jacobean_disk.bak' 创建硬盘永久备份设备jacobean_disk,文件名为 jacobean_disk.bak --exec sp_addumpdevice 'tape', 'jacobean_tape', 'C:/BACKUP/jacobean_tape.bak' 创建磁带永久备份设备jacobean_tape,文件名为 jacobean_tape.bak --exec sp_addumpdevice 'pipe','jacobean_pipe', 'C:/BACKUP/jacobean_pipe.bak' 创建磁带永久备份设备jacobean_pipe,文件名为 jacobean_pipe.bak --backup database jacobean to disk = 'C:/BACKUP/jacobean_disk_temp.bak' 将jacobean临时备份到jacobean_disk_temp.bak文件上 --{backup database jacobean to jacobean01, jacobean02, jacobean03 --with&&这段SQL语句是将jacobean数据库备份到jacobean01, jacobean02, jacobean03,这三个备份设置上,但最后一句medianame = jacobean,是出错的, --medianame = jacobean} 而medianame是创建备份集称的作用,但不知为什么创建不了 --backup database jacobean to disk = 'C:/BACKUP/jacobean_disk.bak' with noinit 将jacobean备份文件追加到jacobean_disk.bak文件 上 --backup database jacobean to disk = 'C:/BACKUP/jacobean_disk.bak' with format, init 将jacobean备份文件重写到 jacobean_disk.bak上 --{exec sp_addumpdevice 'disk', 'jacobean_01', 'C:/BACKUP/jacobean_01.bak' --backup database jacobean to jacobean_01} 这段SQL语句的作用是,创建备份设备jacobean_01,再将jacobean完全备份到jacobean_01上 --backup database jacobean to jacobean_01 with init 将jacobean完全数据库备份的备份文件重写到jacobean_01设备上 --backup database jacobean to jacobean_01 with noinit 将jacobean完全数据库备份的备份文件追加到jacobean_01设备上 --backup database jacobean to disk = 'C:/BACKUP/jacobean_temp.bak' 在硬盘上创建备份文件jacobean_temp.bak,并将jacobean数据库完全备份到该文件上 --backup database jacobean to disk = 'C:/BACKUP/jacobean_01.bak' with differential 在硬盘上创建临时备份文件jacobean_01.bak,并将jacobean数据库差异备份到该文件上 --{exec sp_addumpdevice 'disk', 'jacobean_log', 'C:/BACKUP/jacobean_log.bak' --backup log jacobean to jacobean_log} 这段SQL语句的作用是,创建日志备份设备jacobean_log,再将jacobean数据库的事务日志备份到该设备上 --backup log jacobean with truncate_only 删除jacobean数据库日志中,不活动的部份 --backup log jacobean with no_log 删除jacobean数据库日志中,不活动的部份 --file = jacobeantemp_data_02 to jacobeantemp_02 这段SQL语句语句的作用是,将jacobeantemp数据库文件组中,名称为jacobeantemp_data_02的文件,备份到设备jacobeantemp_02设备上, --backup log jacobeantemp to jacobeantemp_log} --{use master --restore database jacobean --from jacobean_disk}从设备jacobean_disk还原数据库jacobean --{use master --restore database jacobean --from jacobean_01, jacobean_02, jacobean_03}从三个设备jacobean_01, jacobean_02, jacobean_03,还原数据库jacobean --{use master --restore database jacobean --from jacobean_disk --with file = 2, recovery} 从设备jacobean_disk的第二个文件还原数据库jacobean,并将数据库返回到一致性 --{use master --restore database jacobean --from jacobean_disk --with recovery} 从设备jacobean_disk还原数据库jacobean,并将数据库返回到一致性 --{use master --restore database jacobean --from jacobean_norecovery --with file = 1, norecovery 首先从设备jacobean_norecovery的第一个文件还原数据库jacobean,但不将数据库返回一致性, --use master --restore database jacobean --from jacobean_norecovery --with file = 2, recovery} 然后再从设备jacobean_norecovery的第二个文件还原数据库jacobean,并将数据库返回到一致性. --{use master --restore database jacobean --from jacobean_data --with norecovery 首先从设备jacobean_data中还原数据库jacobean,但不将数据库返回一致性 --restore log jacobean --from jacobean_log --with file = 1, --stats, --norecovery&&然后再从设备jacobean_log的第一个事务日志文件还原事务日志到数据库jacobean,但也不将数据库返回一致性 --restore log jacobean --from jacobean_log --with file = 2, --recovery} 最后从设备jacobean_log的第二个事务日志文件还原事务日志到数据库jacobean,并将数据库返回到一致性,整个数据库还原过程结束 --{use master --restore database jacobean --from jacobean_data_time --with norecovery 首先从设备jacobean_data_time中还原数据库jacobean,但不将数据库返回一致性, --restore log jacobean --from jacobean_log_time --with file = 1, --norecovery 然后再从设备jacobean_log_time的第一个事务日志文件还原事务日志到数据库jacobean,但也不将数据库返回一致性 --restore database jacobean --from jacobean_log_time --with file = 2, --recovery,&&最后从设备jacobean_log_time的第二个事务日志文件应用发生在'June 2,
pm'之前的更改, --stopat = 'June 2,
am'} 还原事务日志到数据库jacobean,并将数据库返回到一致性,整个数据库还原过程结束 --{use master --restore database jacky 注意:数据库jacky是由三个文件组成的 --file = 'jacky2' --from jacky_datas --with norecovery 首先从设备jacky_datas还原文件组备份文件jacky2到数据库jacky,但不将数据库返回一致性, --restore log jacky --from jacky --with file = 1, recovery} 再从事务日志备份设备jacky中的1个备份文件还原到数据库jacky,并将数据库返回到一致性 --{use jacobean --exec sp_detach_db @dbname = 'pubs' 首先分离数据库pubs,注意:书本上是没有这一句语句的,所以按书本上打会出错! --exec sp_attach_single_file_db @dbname = 'pubs',&&再将数据库pubs付加到jacobean数据库. --@physname = 'C:/Program Files/Microsoft SQL Server/MSSQL$JACOBEAN/Data/pubs.mdf'} --exec sp_who 显示当前数据库的用户和进程 --exec sp_lock 显示活动锁,阻塞锁,死锁信息 --exec sp_spaceused 查询表或数据所使用的磁盘空间大小 --exec sp_helpdb 查询数据库及其对象 --exec sp_monitor 统计SQL Server的信息 --sp_helpindex sysconfigures 索引sysconfigures表 --sp_statistics sysconfigures 特定索引sysconfigures表 --select getdate() as 'Today s Date and Time', @@connections&&as 'Login Attempts' 记录SQL Server最近一次启动时间和试图登录的次数 --select @@error as 'error' 记录上次执行SQL语句的错误号 --select @@spid as 'spid' 记录当前用户进程的服务器进程ID,使用这个ID来识别在SP_WHO输出中的当前用户进程 --select @@procid as 'procid' 记录当前存储过程的ID --set statistics io on 显示执行SQL语句进产生的磁盘活动总量信息 --set statistics io off 不显示执行SQL语句进产生的磁盘活动总量信息 --set statistics time on 显示分析,编译和执行SQL语句所需的时间 --set statistics time off 不显示分析,编译和执行SQL语句所需的时间 --set statistics profile on 在每次执行SQL查询之后显示一个代表该查询执行特征的结果集 --set statistics profile off 在每次执行SQL查询之后不显示一个代表该查询执行特征的结果集 --set showplan_text on 执行SQL查询 --set showplan_text off 不执行SQL查询,只返回关于SQL语句执行的详细信息 --dbcc sqlperf (LOGSPACE) 显示当前安装的所有数据库的(数据库名称,日志可用实际空间大小,事务日志信息当前占用日志文件的百分比,日志文件状态) --dbcc opentran ('jacobean') with tableresults,no_infomsgs 获得jacobean数据库的事务信息,并以报表形式指定结果以便可以装载到表中,而且禁止显示所有信息性消息! --dbcc show_statistics (name,姓名) 显示name表上以&姓名&为索引的统计信息. --dbcc checkdb ('jacobean') 显示jacobean数据库中所有对像的分配及结构完整性 --dbcc checkdb ('jacobean',noindex) 显示jacobean数据库中对像的分配及结构完整性,并指定不检查非系统表的非聚集索引 --dbcc checkdb ('jacobean',noindex) with no_infomsgs 显示jacobean数据库中对像的分配及结构完整性,并指定不检查非系统表的非聚集索引,而且禁止显示所有信息性消息! --dbcc checkfilegroup ('frimary') 显示数据库文件组中所有表的分配及结构完整性,注意:frimary为文件组名,但经测试,该语句运行不成功! --dbcc checktable ('name') 显示表name的数据,索引,文本,非文本和图像页的完整性 --创建一个名为postalcode的数据类型,它包含了10个字节符数据,并且可以为MULL USE ClassNorthwind IF EXISTS (SELECT domain_name FROM information_schema.domains &&&&&&&&&& WHERE domain_schema = 'dbo' AND domain_name = 'postalcode') &&&&EXEC&&sp_droptype&&postalcode GO EXEC&&sp_addtype&&postalcode, 'nvarchar(10)' , NULL GO --验证已经创建的数据类型 USE ClassNorthwind SELECT domain_name && FROM information_schema.domains && ORDER BY domain_name GO --创建用户定义数据类型:City&&Region&&Country --最多15个字节的字符数据,可以为MULL USE ClassNorthwind IF EXISTS (SELECT domain_name FROM information_schema.domains &&&&&&&&&& WHERE domain_schema = 'dbo' AND domain_name = 'city') &&&&EXEC&&sp_droptype&&city IF EXISTS (SELECT domain_name FROM information_schema.domains &&&&&&&&&& WHERE domain_schema = 'dbo' AND domain_name = 'region') &&&&EXEC&&sp_droptype&&region IF EXISTS (SELECT domain_name FROM information_schema.domains &&&&&&&&&& WHERE domain_schema = 'dbo' AND domain_name = 'country') &&&&EXEC&&sp_droptype&&country GO EXEC&&sp_addtype&&city, 'nvarchar(15)', NULL EXEC&&sp_addtype&&region, 'nvarchar(15)', NULL EXEC&&sp_addtype&&country, 'nvarchar(15)', NULL GO --查看数据库中的用户定义数据类型 SELECT domain_name && FROM information_schema.domains && ORDER BY domain_name GO --在ClassNorthwind数据库中创建Employees表 USE ClassNorthwind IF OBJECT_ID('dbo.Employees') IS NOT NULL &&&&DROP TABLE dbo.Employees GO CREATE TABLE dbo.Employees ( &&&&EmployeeID int IDENTITY (1, 1) NOT NULL , &&&&LastName nvarchar (20) NOT NULL , &&&&FirstName nvarchar (10) NOT NULL , &&&&Title nvarchar (30) NULL , &&&&TitleOfCourtesy nvarchar (25) NULL , &&&&BirthDate datetime NULL , &&&&HireDate datetime NULL , &&&&Address nvarchar (60) NULL , &&&&City city , &&&&Region region , &&&&PostalCode postalcode , &&&&Country country , &&&&HomePhone nvarchar (24) NULL , &&&&Extension nvarchar (4) NULL , &&&&Photo image NULL , &&&&Notes ntext NULL , &&&&ReportsTo int NULL , &&&&PhotoPath nvarchar (255) NULL ) ON [PRIMARY] GO --查看是否创建了该表 SELECT table_name &&FROM information_schema.tables &&WHERE table_name = 'Employees' GO --删除Employees表 USE ClassNorthwind GO If OBJECT_ID('dbo.Employees') IS NOT NULL &&&&DROP TABLE dbo.Employees GO --查看是否有下列表名 SELECT table_name &&FROM information_schema.tables &&WHERE table_name IN (&&'Employees'&&&&&&&&&&&& --表名 &&&&&&&&&&&&&&&&&&&&&& , 'Categories'&&&&&&&&&&&&--表名 &&&&&&&&&&&&&&&&&&&&&& , 'Customers'&&&&&&&&&&&& --表名 &&&&&&&&&&&&&&&&&&&&&&) GO --在ClassNorthwind数据库Employees表中添加Age列 USE ClassNorthwind ALTER TABLE Employees &&ADD Age tinyint NULL go --在ClassNorthwind数据库Employees表中添加Age列 USE ClassNorthwind ALTER TABLE Employees &&DROP COLUMN age go --查看Employees表的存储过程 exec sp_help Employees GO --在Employees表中添加Age列数据类型为tinyint,可以为空 ALTER TABLE Employees &&ADD Age tinyint NULL go --删除Employees表中Age列 USE ClassNorthwind ALTER TABLE Employees &&DROP COLUMN age go&
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:19322次
排名:千里之外
原创:25篇
(1)(1)(3)(5)(1)(1)(2)(11)(1)扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
sql语句妙用,各种sql语句的详细用法与讲解
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口帮忙解释一段SQL语句_百度知道
帮忙解释一段SQL语句
alter table IpControl
drop constraint FK_IPCONTRO_REFERENCE_VOTEITEMgoalter table VoteItem
drop constraint FK_VOTEITEM_REFERENCE_VOTETITLgoif exists (select 1
sysobjects
id = object_id('IpControl')
type = 'U')
drop table IpControlgoif exists (select 1
sysobjects
id = object_id('VoteItem')
type = 'U')
drop table VoteItemgoif exists (select 1
sysobjects
id = object_id('VoteTitle')
type = 'U')
drop table VoteTitlego
提问者采纳
alter table IpControl
//修改表IpControl
drop constraint FK_IPCONTRO_REFERENCE_VOTEITEM
//删除约束FK_IPCONTRO_REFERENCE_VOTEITEMgo
执行alter table VoteItem
//同上drop constraint FK_VOTEITEM_REFERENCE_VOTETITL
//同上go if exists (select 1 from sysobjects where id = object_id('IpControl') and type = 'U')
//如果用户有名为IpControl的表drop table IpControl
//则删除表 IpControlgo if exists (select 1 from sysobjects where id = object_id('VoteItem') and type = 'U') drop table VoteItem
//同上 删除VoteItemgo if exists (select 1 from sysobjects where id = object_id('VoteTitle') and type = 'U') drop table VoteTitle
//同上,删除VoteTitlego
其他类似问题
1人觉得有用
sql语句的相关知识
其他2条回答
alter table IpControl drop constraint FK_IPCONTRO_REFERENCE_VOTEITEM go 删除IpControl的 FK_IPCONTRO_REFERENCE_VOTEITEM 约束alter table VoteItem drop constraint FK_VOTEITEM_REFERENCE_VOTETITL go 删除VoteItem的FK_VOTEITEM_REFERENCE_VOTETIT约束if exists (select 1 from sysobjects where id = object_id('IpControl') and type = 'U') drop table IpControl go 从系统表中删除ID是'IpControl'类型是用户创建的表if exists (select 1 from sysobjects where id = object_id('VoteItem') and type = 'U') drop table VoteItem go 从系统表中删除ID是'VoteItem'类型是用户创建的表if exists (select 1 from sysobjects where id = object_id('VoteTitle') and type = 'U') drop table VoteTitle go从系统表中删除ID是'VoteTitle'类型是用户创建的表
alter table IpControl drop constraint FK_IPCONTRO_REFERENCE_VOTEITEM go alter table VoteItem drop constraint FK_VOTEITEM_REFERENCE_VOTETITL go ----------------------------------------以上是删除外键if exists (select 1 from sysobjects where id = object_id('IpControl') and type = 'U') drop table IpControl go if exists (select 1 from sysobjects where id = object_id('VoteItem') and type = 'U') drop table VoteItem go if exists (select 1 from sysobjects where id = object_id('VoteTitle') and type = 'U') drop table VoteTitle go------------------判断表是否为空,如果为空删除
您可能关注的推广
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁Sql语句解释_百度知道
Sql语句解释
SELECT * from uds_bbs_forumitem m where COALESCE(last_replay_time,send_time) = (select max(COALESCE(last_replay_time,send_time)) from uds_bbs_forumitem n where m.board_id =n.board_id)其select max(COALESCE(last_replay_time,send_time)) from uds_bbs_forumitem 表示根据COALESCE函数查询满足条件值where COALESCE(last_replay_time,send_time) = (select max(COALESCE(last_replay_time,send_time)) from uds_bbs_forumitem n where m.board_id =n.board_id)句知做何解
提问者采纳
SELECT * from uds_bbs_forumitem m
表名 uds_bbs_forumitem
表新命名 m */where COALESCE(last_replay_time,send_time) =
(select max(COALESCE(last_replay_time,send_time)) from uds_bbs_forumitem n where m.board_id =n.board_id)/* 查询语句
查询语句查询
(select max(COALESCE(last_replay_time,send_time)) from uds_bbs_forumitem n where m.board_id =n.board_id)
查询意思uds_bbs_forumitem(表命名
n)表 搜索 m表字段board_id等于n表board_id
意思外面查询查询搜索同条记录
用coalesce函数值 等于 coalesce函数m表last_replay_time,send_time字段记录
*/--(m表面
提问者评价
其他类似问题
1人觉得有用
sql语句的相关知识
其他1条回答
理解:select max(COALESCE(last_replay_time,send_time)) from uds_bbs_forumitem n where m.board_id =n.board_id部SELECT * from uds_bbs_forumitem m where COALESCE(last_replay_time,send_time) = (面句结)
您可能关注的推广回答者:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 sql删除语句 的文章

 

随机推荐