如果用2000,修改表结构可以用alter table语句
drop table很容易搞丢数据,尽量少用

解决方案 »

  1.   

    以上DROP   的顺序应该是 先 SYSPANEL  再 SYSMODULE
    CREATE 的顺序应该是 先 SYSMODULE 再 SYSPANEL 例子里两个 TABLE 还看得过来.但实际中 TABLE 很多时我就难受了!我这个.SQL 文件就很难维护了.
      

  2.   

    alter table SQL 7.0 也有,但那样的感觉不好. 特别是 COLUMN 的顺序.另:我 TABLE 里现在还没有数据,如有先 TABLE 是需要缺省数据的话,我一般会再 CREATE TABLE 后面加 INSERT 语句.注: 最主要是我现还在数据库设计阶段,加上水平不好.所以才要这样.我知道当产品已经交付使用后这样做是不行的. 麻烦各位帮忙!
      

  3.   

    试试这样,先drop 约束,再drop 表就无所谓顺序了
      

  4.   

    我的方法是TABLE和CONSTRAINT分开写,like below:
    CREATE TABLE SYSPANEL
    (MODULE_NO                 CHAR(30)          NOT NULL,
             FUNCTION_NO               CHAR(30)          NOT NULL,
             PICTURE_NAME              CHAR(20)          NOT NULL,
             TOOLBAR_NAME              CHAR(20)          NOT NULL,
             MULTI_LANGUAGE            CHAR(50)          NOT NULL
            )
    GO
    ALTER TABLE SYSPANEL
    ADD CONSTRAINT SYSPANEL_PK PRIMARY KEY (FUNCTION_NO)
    GO
    ALTER TABLE SYSPANEL
    ADD CONSTRAINT SYSPANEL_FK_SYSPANEL_MODULE_NO FOREIGN KEY(MODULE_NO) REFERENCES SYSMODULE(MODULE_NO)
    GO
    这样修改时会比较方便。可以先建立表,最后在加上CONSTRAINT.