This Domain(Admin5.com) is for Sale:

SQLServer数据库实用技术(66)

时间:2007-12-23  来源:不详  作者:迈克DB
  • READCOMMITTED
    指定数据扫描执行时使用与运行在READ COMMITTED 孤立级上的事务相同的锁语义。即SELECT 命令不会返回尚未提交的数据。
  • READPAST
    跳过目前被锁定的行。此选项只用于在事务运行在READ COMMITTED 孤立级上的情况下。
  • READUNCOMMITTED
    此选项等价于NOLOCK 选项。
  • REPEATABLEREAD
    指定数据扫描执行时使用与运行在REPEATABLE READ 孤立级上的事务相同的锁语义。即用SELECT 命令读取的数据在整个命令执行过程中不会被更改。此选项会影响系统的效能,非必要情况最好不用此选项。
  • ROWLOCK
    指定使用共享的行数据锁,即使用行级别锁定。
  • SERIALIZABLE
    此选项等价于HOLDLOCK 选项。
  • TABLOCK
    指定用SELECT 命令读取数据时对所选取的表的全部数据做锁定,直到整个命令执行完毕。假如指定了HOLDLOCK 选项,则共享的表锁定会维持到事务结束。
  • TABLOCKX
    指定用SELECT 命令读取数据时对所选取的表的全部数据做锁定,直到整个命令或事务执行完毕。
  • UPDLOCK
    指定在SELECT 命令执行时使用更新锁(Update Lock),而不使用共享锁,并且此更新锁将维持到命令执行结束为止。
  • 假如省略WHERE子句,则表示删除表中的全部数据,但表的定义仍在数据库中,也就是说,DELETE子句删除的是表中的数据,而不是关于表的定义。 NOLOCK、READUNCOMMITIED或READPAST表提示不能用于作为插入、删除或更新操作对象的表。 织梦好,好织梦

    11.2.2 用DELETE 删除数据
    (1) 删除一条记录
    例11-5 删除编号为‘10031011 ’的员工记录
    use pangu
    delete from employee
    where emp_id = ’10031011’
    (2) 删除多条记录
    例11-6 删除所有的部门信息记录
    use pangu
    delete from department_info /* 或使用 delete department_info */
    这个例子删除了department_info 表中的所有数据使它成为空表
    (3) 带子查询的删除语句
    子查询同样可以嵌套在DELETE 语句中,用以构造执行删除操作的条件。
    例11-7: 删除后勤部所有员工的记录。
    use pangu
    delete from employee
    where dept_id =
    (select dept_id
    from department
    where d_name = ’后勤部’)
    例11-8 删除订货表前100 项记录中所有产品编号为1003002 的产品
    use pangu
    delete orders
    from (select top 100 * from orders) as orders_ top100
    where orders.p_id = orders_ top100.p_id

    (4) 删除当前游标行数据
    例11-9: 删除游标dinfo_cursor 所指定的数据行。
    delete from department_info
    where current of dinfo_cursor

    内容来自dedecms

    11.2.3 TRUNCATE TABLE 命 令
    假如要删除表中的所有数据,那么使用TRUNCATE TABLE 命令比用DELETE 命令快得多。因为DELETE 命令除了删除数据外,还会对所删除的数据在事务处理日志中作记录,以防止删除失败时可以使用事务处理日志来恢复数据;而TRUNCATE TABLE 则只做删除与表有关的所有数据页的操作。TRUNCATE TABLE 命令功能上相当于使用不带WHERE 子句的DELETE 命令。但是TRUNCATE TABLE 命令不能用于被别的表的外要害字依靠的表。
    TRUNCATE TABLE 命令语法如下:
    TRUNCATE TABLE table_name
    注重:由于TRUNCATE TABLE命令不会对事务处理日志进行数据删除记录操作,因此不能激活触发器。
    例11-10: 删除所有的部门信息记录。
    use pangu
    truncate table department_info

    看完这篇,您有何感觉呢?

    文章评论

    共有位Admini5网友发表了评论 查看完整内容

    24小时热门信息