Oracle基础(七)数据表

一、创建表

  语法:

  CREATE TABLE [schema.]table

  (column datatype[,column datatype[,...]);

  说明:

  CREATE TABLE:为创建表的关键字。

  schema:表示对象的所有者即模式的名称,如果用户在自己的模式中创建表,则可以不指定所有者的名称。

  table:表示表的名称

  column:表示列的名称

  datatype表示该列的数据类型及宽度。

  示例:  

--会员表
 create table user(
        id number not null,
        username varchar2(20) not null,     userpass varchar2(20) not null  )

  以上为创建一个user表,创建表明应该严格遵循以下命名规则。

  1、表明首字母应该为字母。

  2、不能使用Oracle保留字来为表命名。

  3、表明的最大长度为30个字符。

  4、同一用户模式下的不同表不能具有相同的名称。

  4、可以使用瞎花钱、数字和字母,但不能使用空格和单引号。

  5、Oracle中的表名、列名、用户名和其他对象名不区分大小写,系统会自动转换成大写。

二、修改表

  ALTER TABLE,为修改表结构命令,当需要对原始表进行添加新列,修改原来的列,删除原始列,添加约束,删除约束等操作时,可以使用ALTER TABLE指令。

  更改现有列的语法:

  ALTER TABLE <tablename> MODIFY(column definition...);

  例:

  修改用户名和密码的长度为50;

ALTER TABLE t_user
MODIFY (username VARCHAR2(50),userpass VARCHAR2(50))

  添加新列的语法:

  ALTER TABLE <tablename> ADD (column definition...);

  例:

  添加电话和地址

ALTER TABLE t_user
ADD (tel VARCHAR2(20),address VARCHAR2(100))

  删除表中现有列的语法:

  ALTER TABLE <tablename> DROP COLUMN colmn;

  例:

  删除电话和地址  

ALTER TABLE t_user
DROP (tel,address)

三、删除表

  语法:

  DROP TABLE <tablename>;

  例:删除用户表

  DROP TABLE t_user;

时间: 2024-11-10 01:38:19

Oracle基础(七)数据表的相关文章

ORACLE 查询一个数据表后通过遍历再插入另一个表中的两种写法

ORACLE 查询一个数据表后通过遍历再插入另一个表中的两种写法 语法 第一种: 通过使用Oracle语句块  --指定文档所有部门都能查看 declare cursor TABLE_DEPT is SELECT ID,UNAME from g_users where utype=2 and STATUS>-1; begin for c in TABLE_DEPT loop INSERT INTO G_KNOWDOCRIGHT(RID,DIRID,DOCID,USERID) VALUES(SYS

SQL基础:数据表的创建

1. 先选择创建表所在的数据库 2. 创建表 3. 查看表是否创建成功 4. 主键:要求主键列的数据唯一,且不允许为空.主键能够唯一的标识表中的每一条记录,可以结合外键来定义不同数据表之间的关系,并且可以加快数据库查询的速度. 主键分为:单字段主键和多字段联合主键. 4.1 单字段主键 4.1.1 定义方式一:在定义列的同时指定主键 4.1.2 定义方式二:在定义完所有的列之后指定主键 4.2 多字段联合主键 5. 使用外键约束 外键用来在两个表之间建立连接,可以是一列或多列.一个表的外键可以是

Oracle 函数 “判断数据表中不存在的数据,才允许通过”

1 create or replace function mca_detail_material_val(p_material_code VARCHAR2, --实参 2 p_material_name VARCHAR2, 3 p_mca_no VARCHAR2 4 ) 5 RETURN varchar2 AS 6 7 --物料编码/名称的验证,数据表(MATERIAL)中 不存在 该物料编码/名称,允许通过,填其他值都不允许通过 8 9 v_count1 NUMBER; -- 形参 10 v_

[每日更新-MySQL基础]3.数据表擦哦走

1.    数据表操作 数据表是用来存数据的最重要的东西,它存在库里,一个库中可以有N多个表.所以创建数据表必须选择库. 1.1    创建数据表 create table <tableName>(     表的信息 )[选项]; 在没有指定数据的情况下创建表是不行的,有两种方式选择库. 1.    在写表名的时候指定:create table 库名.表名 2.    在创建表之前,使用: use 库名; 切换到指定的数据库再进行操作 注意: 创建表的时候,同样支持 if not exists

Oracle已有数据表建立表分区—在线重定义

今天在做数据抽取的时候,发现有一张业务表数据量达到了5000W,所以就想将此表改为分区表.分区表的有点如下: 1.改善查询性能:对分区对象的查询可以仅搜索自己关心的分区,提高检索速度.2.增强可用性:如果表的某个分区出现故障,表在其他分区的数据仍然可用:3.维护方便:如果表的某个分区出现故障,需要修复数据,只修复该分区即可:4.均衡I/O:可以把不同的分区映射到磁盘以平衡I/O,改善整个系统性能. 第一步:首先对要在线重定义的表自行验证,看该表是否可以重定义,如果不可以则会提示错误信息 SQL>

Oracle基础之分析表

analyze table tablename compute statistics; analyze index indexname compute statistics; (analyze 不会重建索引) 遇到当前表的查询或其他性能不好时,就可以对相应的表进行一次分析. 1.如果你的表经常由几千万变成几百万,又变成几千万那么需要制定分析计划定期表分析,同时可以一并分析索引,计算索引中数据的分布情况,这样CBO会选择更加准确的执行计划. 2.如果表结构变化了也要做下,也就是经常对表做dml就需

ORACLE恢复一个数据表的方法

今天提交给客户方一个sql脚本去跟新历史数据,结果客户那边的部署人员犯了一个错误,直接拿系统账号去部署,结果第一段代码没有执行成功,结果第二段代码却执行成功了,并且已经提交了的,....由于事前没有备份第二段更新表的数据,导致恢复标的数据非常困难,网上查找了半天,现在将找到的办法归纳如下: 1. 执行如下SQL将test_temp表中的数据恢复到2016年7月7号,即脚本被执行之前时间点. 注意,这里一定要先删除全部数据,否则可能会导致数据重复 1 SELECT * FROM DQAQTSW 2

SQL基础:数据表的查看及修改

1. 查看表基本结构 可简写 DESC 表名: Null:是否可用存储Null值 Key:该列是否已编制索引.PRI表示该列是表主键的一部分:UNI表示该列是UNIQUE索引的一部分:MUL表示在列中某个给定值允许出现多次 Default:该列是否有默认值,为多少 Extra:获取与给定列有关的附件信息,如:属性值自增 2. 查看表详细结构 ------------------------------------------------- 1.修改表名 alter table (旧表名) ren

借助PL/SQL Developer将Oracle某用户数据表导出

使用PL/SQL Developer登录你需要备份的数据库:  选择工具->导出用户对象:  在对象列表中选择需要备份的对象,再选择一个sql类型的输出文件,点击[导出],这只是导出数据结构:  选择工具->导出表:  在列表中选择需要导出数据的表,再选择[SQL插入],选择一个sql类型的文件,点击[导出],这一步是把数据导出数据库.  这样就得到两个sql,分别是备份数据结构和备份数据的.

数据表,你美我怎不爱

我们为什么要学数据表? 这个回答其实很简单,只要想一想就可以. 解析: 如果没有数据表,那么关键字.主键.索引等也就无从谈起.在数据库画板中可以显示数据库中的所有数据表(即使不是用PowerBuilder创建的表),创建数据表,修改表的定义等数据表是数据库中一个非常重要的对象,是其他对象的基础. 数据表(或称表)是数据库最重要的组成部分之一.数据库只是一个框架,数据表才是其实质内容.如“教学管理系统” 中,教学管理”数据库包 含分别围绕特定主题的6个数据表:“教师”表“课 程”表.“成绩”表.“