我见了三个表,删除表的时候用
drop table Student cascade;
可是删不掉显示在关键字 'restrict' 附近有语法错误。
怎么回事呢、?我用的SQL server 2000

解决方案 »

  1.   

    就几句话,
    create database hcd;
    create table Student(name char(10) primary key,age smallint,);
    drop table Student cascade;
    然后就删不掉,我按着书上写的
      

  2.   

    错了显示错误是关键字 'cascade' 附近有语法错误。不是restrict
      

  3.   

    不能使用 DROP TABLE 删除被 FOREIGN KEY 约束引用的表。必须先删除引用 FOREIGN KEY 约束或引用表。如果要在同一个 DROP TABLE 语句中删除引用表以及包含主键的表,则必须先列出引用表。可以在任何数据库中删除多个表。如果一个要删除的表引用了另一个也要删除的表的主键,则必须先列出包含该外键的引用表,然后再列出包含要引用的主键的表。删除表时,表的规则或默认值将被解除绑定,与该表关联的任何约束或触发器将被自动删除。如果要重新创建表,则必须重新绑定相应的规则和默认值,重新创建某些触发器,并添加所有必需的约束。如果使用 DELETE tablename 删除表中的所有行或使用 TRUNCATE TABLE 语句,则在被移除之前,表将一直存在。删除使用了超过 128 个区的大型表和索引时,需要分两个单独的阶段:逻辑和物理阶段。在逻辑阶段中,对表使用的现有分配单元进行标记以便释放,并对其进行锁定,直到事务提交为止。在物理阶段,标记为要释放的 IAM 页被成批地物理删除。有关详细信息,请参阅 删除并重新生成大型对象。如果删除的表包含带有 FILESTREAM 属性的 VARBINARY (MAX) 列,则不会删除在文件系统中存储的任何数据。
      

  4.   

    cascade是个什么东西,直接DROP TABLE Student