精华内容
下载资源
问答
  • 数据库修改表结构

    2020-03-20 22:14:21
    修改表结构 --修改数据表 ALTER TABLE 表名 SQL代码的书写不考虑顺序,但是批量执行代码需要要考虑好先执行哪些,后执行哪些 在修改数据表结构时,必须要明确:修改的字段中是否存在数据,例如:如果需要更改一...

    修改表结构

    --修改数据表
    ALTER TABLE 表名

    SQL代码的书写不考虑顺序,但是批量执行代码需要要考虑好先执行哪些,后执行哪些

    在修改数据表结构时,必须要明确:修改的字段中是否存在数据,例如:如果需要更改一个字段的约束为非空约束,那么首先要保证该字段中已有的数据没有NULL值。

    因此在做程序之前数据库分析,设计是至关重要

    修改字段数据类型

    ALTER TABLE 表名
    ALTER COLUMN 字段名 目标数据类型

    添加字段

    ALTER TABLE 表名
    ADD 字段名 数据类型 [字段的特征]

    删除字段

    SQL中删除语法使用DROP关键字,使用DROP关键字一定要谨慎,DROP掉的数据无法恢复

    ALTER TABLE 表名
    DROP COLUMN 字段名

    修改字段特征(约束)

    添加主键约束

    ALTER TABLE 表名
    ADD CONSTRAINT 主键名(PK_ID) PRIMARY KEY (字段名[ID])

    添加唯一约束

    ALTER TABLE 表名
    ADD CONSTRAINT 约束名(UQ_Tel) UNIQUE (字段名[TEL])

    添加默认约束

    ALTER TABLE 表名
    ADD CONSTRAINT 约束名(DF_Address) DEFAULT (默认值['地址不详']) FOR 字段名[ADDRESS]

    添加检查约束

    ALTER TABLE 表名
    ADD CONSTRAINT 约束名(CK_SEX) CHECK (检查的表达式[SEX IN ('男','女')])
    --ADD CONSTRAINT CK_SEX CHECK (SEX='男' or SEX='女')

    添加非空约束

    ALTER TABLE 表名
    ALTER COLUMN 字段名(ID) 字段数据类型(INT) NOT NULL

    添加外键约束

    注意:添加外键时,必须先设置引用表中的引用字段为主键

    ALTER TABLE 表名
    ADD CONSTRAINT 外键名(FK_SUBID) FOREIGN KEY (字段名[SubID]) REFERENCES 引用表名[Subject](引用字段名[subid])
    展开全文
  • 数据库修改表结构SQL

    2012-03-21 10:05:50
    [size=medium][size=small]数据库修改表结构SQL 修改表结构包括: 增加字段、删除字段、增加约束、删除约束、修改缺省值、修改字段数据类型、重命名字段、重命名表。 所有这些动作都是用 ALTER TABLE 命令执行的...
    [size=medium][size=small]数据库修改表结构SQL
    修改表结构包括:
    增加字段、删除字段、增加约束、删除约束、修改缺省值、修改字段数据类型、重命名字段、重命名表。
    所有这些动作都是用 ALTER TABLE 命令执行的。
    1、 增加字段
    ALTER TABLE products ADD description text;
    你也可以同时在该字段上定义约束,使用通常的语法:
    ALTER TABLE products ADD description text CHECK (description <> '');实际上,所有在 CREATE TABLE 里描述的可以应用于字段之选项都可以在这里使用。不过,我们要注意的是缺省值必须满足给出的约束,否则 ADD 将会失败。 另外,你可以在你正确填充了新字段的数值之后再增加约束(见下文)。
    2、 删除字段
    要删除一个字段,使用下面这样的命令:
    ALTER TABLE products DROP COLUMN description;不管字段里有啥数据,都会消失。和这个字段相关的约束也会被删除。 不过,如果这个字段被另外一个表的外键所引用,PostgreSQL 则不会隐含地删除该约束。你可以通过使用 CASCADE 来授权删除任何依赖该字段的东西:
    ALTER TABLE products DROP COLUMN description CASCADE;
    3、增加约束
    要增加一个约束,使用表约束语法。比如:
    ALTER TABLE products ADD CHECK (name <> '');
    ALTER TABLE products ADD CONSTRAINT some_name UNIQUE (product_no);
    ALTER TABLE products ADD FOREIGN KEY (product_group_id) REFERENCES product_groups;
    ALTER TABLE Teacher add constraint df_sex default('男') for sex
    要增加一个不能写成表约束的非空约束,使用下面语法:
    ALTER TABLE products ALTER COLUMN product_no SET NOT NULL;
    这个约束将立即进行检查,所以表在添加约束之前必须符合约束条件。
    4、 删除约束
    要删除一个约束,你需要知道它的名字。如果你给了它一个名字, 那么事情就好办了。否则系统会分配一个生成的名字,这样你就需要 把它找出来了。psql 的命令 \d tablename 在这儿可以帮忙; 其它接口可能也提供了检查表的细节的方法。然后就是这条命令:
    ALTER TABLE products DROP CONSTRAINT some_name;(如果你在处理一个生成的约束名,比如 $2,别忘了你需要给它 添加双引号,让它成为一个有效的标识符。)
    和删除字段一样,如果你想删除有着被依赖关系地约束,你需要用 CASCADE。 一个例子是某个外键约束依赖被引用字段上的唯一约束或者主键约束。
    除了非空约束外,所有约束类型都这么用。要删除非空类型,用
    ALTER TABLE products ALTER COLUMN product_no DROP NOT NULL;(要记得非空约束没有名字。)
    5、改变一个字段的缺省值
    要给一个字段设置缺省值,使用一个象下面这样的命令:
    ALTER TABLE products ALTER COLUMN price SET DEFAULT 7.77;请注意这么做不会影响任何表中现有的数据行, 它只是为将来 INSERT 命令改变缺省值。
    要删除缺省值,用
    ALTER TABLE products ALTER COLUMN price DROP DEFAULT;这样实际上相当于把缺省设置为空。 结果是,如果我们删除一个还没有定义的缺省值不算错误,因为缺省隐含就是空值。
    6、 修改一个字段的数据类型
    ALTER TABLE products ALTER COLUMN price TYPE numeric(10,2);只有在字段里现有的每个项都可以用一个隐含的类型转换转换城新的类型时才可能成功。如果需要更复杂的转换,你可以增加一个 USING 子句,它声明如何从旧值里计算新值。
    PostgreSQL 将试图把字段的缺省值(如果存在)转换成新的类型, 还有涉及该字段的任何约束。但是这些转换可能失败,或者可能生成奇怪的结果。 在修改某字段类型之前,你最好删除那些约束,然后再把自己手工修改过的添加上去。
    7、给字段改名字
    ALTER TABLE products RENAME COLUMN product_no TO product_number;
    8、. 给表改名字
    ALTER TABLE products RENAME TO items;
    [size=medium][/size]
    展开全文
  • 我们现在的表结构是这样的: create table test( id varchar2(50) not null,  registTime varchar2(80) not null); 1.在test表里增加一个字段name: alter table test add (name varchar2(30) default '不详...

    我们现在的表结构是这样的:

          create table test(

                   id varchar2(50) not null,

        registTime varchar2(80) not null);

    1.在test表里增加一个字段name:

    alter table test add (name varchar2(30) default '不详');

    test 是要修改的表名,name 是要新增字段的名字,varchar2(30)是新增字段的类型,default '不详' 是这个新增字段的默认值,在插入数据时,如果name字段为空,会自动赋值“不详”。

    2.修改test表中registTime 字段

    alter table test modify (registTime date);

    test 是要修改的表名,registTime 是要修改字段的名字,date是修改后字段的类型。

    3.删除test表中name 字段

    alter table test drop column name;

    test 是要修改的表名,name 是要删除字段的名字。

    4.给test表设置主键

    alter table test add constraint pk_test primary key(id);

    test是表名,id是要设置主键的字段,pk_test 是主键的名称。

    5. 给test表设置id字段设置索引

    create index iden_idnumber on test(id);

    test是表名,id是要设置索引的字段,iden_idnumber 是索引的名称(oracle中主键默认有索引)。

    转载于:https://www.cnblogs.com/hbuser/p/11059059.html

    展开全文
  • 数据库修改表结构Sql

    2010-10-19 10:03:58
    修改表结构包括:  增加字段、删除字段、增加约束、删除约束、修改缺省值、修改字段数据类型、重命名字段、重命名表。所有的这些动作都是用alter table命令执行的。   1.增加字段    alter table om_port_...

    修改表结构包括:

          增加字段、删除字段、增加约束、删除约束、修改缺省值、修改字段数据类型、重命名字段、重命名表。所有的这些动作都是用alter table命令执行的。

     

    1.增加字段

     

      alter table om_port_employee_t add EMP_SNO VARCHAR2(50);

     

    同时在该字段上定义约束,使用通常的语法:

     

      alter table om_port_employee_t add constraint EMPSNO primary key (EMP_SNO);

     

    为该字段添加注释:

     

      comment on column om_port_employee_t.EMP_SNO is '用户流水号,唯一约束';

     

    2.删除字段

     

       要删除一个字段,用下面的命令:

     

       alter table om_port_employee_t drop column EMP_Description; 不管字段里有什么数据,都会消失。和这个字段相关的约束也会被删除。不过,如果这个字段被另外一个表单外键所引用,则不会隐含的删除该约束。可以通过使用cascade来授权删除任何依赖该字段的东西:

     

    alter table om_port_employee_t drop column EMP_Description cascade;

     

    3.增加约束

     

      要增加一个约束使用约束语法:

     

     alter table om_port_employee_t add constraint EMPSNO primary key (EMP_SNO);

     

      要增加一个不能写成约束的非空约束,如下:

     

     alter table om_port_employee_t alter column EMP_SNO set not null;

     

    4.删除约束

     

      alter tabel om_port_employee_t drop constraint EMP_SNO;

     

    和删除字段一样,如果想要删除有着被依赖关系的约束,需要用到cascade。

     

    5.改变一个字段的缺省值

     

      要为一个字段设置缺省值,用一下命令:

     

      alter table om_port_employee_t alter column Emp_age  set default 20;

     

      请注意这么做不会影响任何表中现有的数据行,它只是为将来insert命令改变缺省值。

      要删除缺省值用

      alter table om_port_employee_t alter column Emp_age  drop default;

     

    6.修改一个字段的数据类型

     

       alter table om_port_employee_t alter column Emp_age type varchar2(50);

     

        修改字段类型之前,最好先删除那些约束。

     

    7.给字段改名

     

        alter table om_port_employee_t rename column Emp_SNO to Emp_Id;

     

    8.给表改名字

     

        alter table om_port_employee_t rename to employee;

     

     

     

    展开全文
  • // 数据库版本 如果更改了安装的时候会执行 onupgrade方法 public DBOpenHelper(Context context) { super(context, DATABASENAME, null, DATABASEVERSION); } @Override public void onCreate...
  • SQL数据库修改表结构

    2020-11-15 15:45:29
    修改表结构 表结构是构建一张表的字段数量,类型与排序 1.添加字段 如果添加字段的表是空表,则可以给字段设置非空约束。如果是有数据的表,不能添加非空约束。 alter table 表名 add 字段名 数据类型 约束 2....
  • 在已有的中新增一列:  alter table table_name add(column_name type(size)) 或者 alter table table_name add column_name type(size) 对已有中的某一列进行删除操作:  alter table table_name drop ...
  • --修改表的列名 exec sp_rename '[dbo].[PhoneCallLog].[IsPhoneCallOut]','CallType' ; --删除原始约束 ALTER TABLE [dbo].[PhoneCallLog] DROP CONSTRAINT [DF__PhoneCall__IsPho__05664177]; --修改字段类型 ...
  • mysql数据库修改表结构的sql语句

    千次阅读 2014-12-01 14:59:04
    新增列: alter table RS_ROADSHOW_SETTING add column VIDEO_INTRO...修改列: ALTER TABLE chatter_users MODIFY COLUMN ip VARCHAR(50); 删除列: alter table user DROP COLUMN new2; 
  • 修改数据库表结构时提示【不允许保存更改。您所做的更改要求删除并重新创建以下表。您对无法重新创建的标进行了更改或者启用了“阻止保存要求重新创建表的更改"选项。】 工具/原料 ...
  • 分布式数据库中,如果修改了主数据库中的某些表的结构,...修改数据库上的表结构3.重新创建 主数据库上的snapshot 4.删除snapshot 数据库上的 snapshot 5.重新创建 snapshot 数据库上的 snapshot 6.检查同步状况--查询
  • MySQL 查看数据库表结构 修改表结构 修改字段 修改约束条件 修改表名 删除数据库表 查看数据库表结构 可以使用 describe 语句来查看数据表结构,代码如下: describe users; 在控制台中输入上述语句后的执行...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 9,742
精华内容 3,896
关键字:

数据库修改表结构