向表中追加一个字段类型,怎么写?alter table ...

解决方案 »

  1.   

    alter table tb_name add col_name data_type
      

  2.   

    ALTER TABLE 表名 ADD 列名 数据类型
    例:ALTER TABLE tb ADD id int
      

  3.   

    ALTER TABLE
    名称
    ALTER TABLE — 更改表属性 
    ALTER TABLE table
        [ * ] ADD [ COLUMN ] column type
    ALTER TABLE table
        [ * ] RENAME [ COLUMN ] column TO newcolumn
    ALTER TABLE table
        RENAME TO newtable输入
    table 
    试图更改的表的名称. 
    column 
    现存或新的列名称. 
    type 
    新列的类型. 
    newcolumn 
    现存列的新名称. 
    newtable 
    现存表(译注:原文是column,错了)的新名称. 
    输出
    ALTER 
    从被更名的列或表返回的信息. 
    NEW 
    追加列返回的信息. 
    ERROR 
    如果一个列或表不存在返回的信息. 
    描述
    ALTER TABLE 变更一个现存表的定义.新的列和其类型是和用CREATE TABLE创建表时一样的风格声明的,而且其受到和用CREATE TABLE创建表时一样的限制.RENAME 语句可以在不对表中数据造成任何影响的情况下更改表名或列名.因此,此命令执行后表或列仍然是和原先一样的类型和尺寸. 
    如果要改变表的属性,你必须是表的所有者. 注意
    COLUMN 关键字是多余的,可以省略. 
    如果“[*]” 跟在一个表名后面,表示该命令要对该表和所有继承级别低于该表(该表父表)的表进行操作.PostgreSQL U用户手册 里有关于继承的更多信息. 请参考 CREATE TABLE 部分获取更多合法参数的描述. 用法
    向表中增加一个 VARCHAR 列: 
        ALTER TABLE distributors ADD COLUMN address VARCHAR(30);对现存列改名: 
        ALTER TABLE distributors RENAME COLUMN address TO city;对现存表改名: 
        ALTER TABLE distributors RENAME TO suppliers;兼容性
    SQL92
    ALTER TABLE/RENAME 是 Postgres 语言的扩展. 
    SQL92 对 ALTER TABLE 声明了一些附加的Postgres目前还不支持的功能: ALTER TABLE table ALTER [ COLUMN ] column
        SET DEFAULT defaultALTER TABLE table ALTER [ COLUMN ] column
        ADD [ CONSTRAINT constraint ] table-constraint对表中指定列声明缺省值或约束. 请参考 CREATE TABLE 获取缺省值和约束语句的语法.如果已经有一个缺省值,它将被新值取代.如果原有约束存在,它们将和新约束用逻辑与(AND)共同使用. 当前,要向现存的列设置新的缺省值或约束,此表必须重建和重新装载: CREATE TABLE temp AS SELECT * FROM distributors;
    DROP TABLE distributors;
    CREATE TABLE distributors (
        did      DECIMAL(3) DEFAULT 1,
        name     VARCHAR(40) NOT NULL,
        city     VARCHAR(30)
    );
    INSERT INTO distributors SELECT * FROM temp;
    DROP TABLE temp;
    (译注:这里的 temp 表也有前面同样问题.)
    ALTER TABLE table
        DROP DEFAULT default
    ALTER TABLE table
        DROP CONSTRAINT constraint { RESTRICT | CASCADE }上面两句将表中原有的缺省值或约束删除.如果声明了 RESTRICT ,那么只有无依赖性的约束可以被删除.如果声明了 CASCADE ,任何和依赖于此约束的约束都将被删除. 当前,要将表中某列原有的缺省值或约束删除,表必须重建和重新装载: CREATE TABLE temp AS SELECT * FROM distributors;
    DROP TABLE distributors;
    CREATE TABLE distributors AS SELECT * FROM temp;
    DROP TABLE temp;
    ALTER TABLE table
        DROP [ COLUMN ] column { RESTRICT | CASCADE }上面语句将表中某列删除.如果声明了 RESTRICT,那么只有一个没有被别的列依赖的列可以被删除.如果声明了 CASCADE,那么所有依赖于该列的列都将被删除. 当前,要删除一个现存的列,表必须重新创建和重新装载: CREATE TABLE temp AS SELECT did, city FROM distributors;    
    DROP TABLE distributors;
    CREATE TABLE distributors (
        did      DECIMAL(3)  DEFAULT 1,
        name     VARCHAR(40) NOT NULL,
    );
    INSERT INTO distributors SELECT * FROM temp;
    DROP TABLE temp;
      

  4.   

    不熟悉语句可以直接用表向导,SQL Server还是用户友好的,在表上直接点右键,设计,然后添加一列好了。语句吗,C友们都说了,来晚了