Oracle(plsql⽅式)创建表、dblink导表、更改表名字段名
1、建表:
create table 表名
(
字段名类型(常⽤的有VARCHAR2、NUMBER、DATE)(长度)  是否能为空(必填:not null ⾮必填这块就不写)
aaa          VARCHAR2 (32)                                  not null,
bbb          NUMBER(2)plsql12配置数据库连接
);
-- Add comments to the table
comment on table 表名 is '这个表是⼲啥的';
-- Add comments to the columns
comment on column 表名.aaa
is 'aaa是⼲啥的';
comment on column 表名.bbb
is 'bbb是⼲啥的';
2、创建dblink
⽅式⼀,在本地数据库a⽂件中配置了要远程访问的数据库。
create public database link
  link_name connect to scott identified by tiger using 'bylw';
  其中link_name是你创建的dblink名字,bylw是远程数据库的实例名(查询实例名sql语句:select * from v$instance ,查出的数据中INSTANCE_NAME即实例名),scott/tiger是登录到远程数据库的⽤户/密码。然后在本地数据库中通过dblink访问远程数据库'bylw'中scott.tb_test表,sql语句如下所⽰
select * from scott.tb_test@to_bylw;
⽅法⼆  在本地数据库a⽂件中没有配置要访问的远程数据库:
create database link  link_name
  connect to scott identified by tiger
  using '(DESCRIPTION =
  (ADDRESS_LIST =
  (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.5)(PORT = 1521))
  )
  (CONNECT_DATA =
  (SERVER = DEDICATED)
  (SERVICE_NAME = bylw)
  )
  )';
  第⼆种是把第⼀种配置在a⽂件中的信息,直接放在创建dblink语句后⾯。第⼀种情况a⽂件中信息如下: 
bylw =
  (DESCRIPTION =
  (ADDRESS_LIST =
  (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.5)(PORT = 1521))
  )
  (CONNECT_DATA =
  (SERVER = DEDICATED)
  (SERVICE_NAME = bylw)
  )
)
⽤dblink进⾏跨数据库迁移数据
前提⽬标数据库的⽬标表和源库的源表 ,表中字段数要⼀致,否则会报错。
具体实现语句:
insert into ⽬标库⽤户名(即登录数据库的⽤户名).⽬标表
select  a.* from源库⽤户名(即登录数据库的⽤户名).源表@ link_name a;
3、更改表名、字段名
-- ⾸先⽅法是使⽤RENAME关键字:
-- 修改字段名:
alter table 表名 rename column 现列名 to 新列名;
-- 修改表名:
alter table 表名 rename to 新表名
-- 增加字段语法:
alter table tablename add (column datatype [default value][null/not null],….);
-- 说明:alter table 表名 add (字段名字段类型默认值是否为空);
-- 例:
alter table sf_users add (HeadPIC blob);
-- 例:
alter table sf_users add (userName varchar2(30) default '空' not null);
-- 修改字段的语法:
alter table tablename modify (column datatype [default value][null/not null],….);
-- 说明:alter table 表名 modify (字段名字段类型默认值是否为空);
-
- 例:
alter table sf_InvoiceApply modify (BILLCODE number(4));
-- 删除字段的语法:
alter table tablename drop (column);
-- 说明:alter table 表名 drop column 字段名;
-- 例:
alter table sf_users drop column HeadPIC;
-- 字段的重命名:
-- 说明:alter table 表名 rename  column  列名 to 新列名(其中:column是关键字)
-- 例:
alter table sf_InvoiceApply rename column PIC to NEWPIC;
-
- 表的重命名:
-- 说明:alter table 表名 rename to  新表名
-- 例:
alter table sf_InvoiceApply rename to  sf_New_InvoiceApply;

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。