在上文中我们建好了表空间,并创建了新用户。接下来就可以使用这个用户登录,做想做的事了。

对于一个空白的表空间,首先我们当然是要先建表。

一般SQL语言有以下四大功能:

**1.数据定义

2.数据查询

3.数据操作

4.数据控制**

在oracle中,数据定义是指create,drop,alter。这三个关键字操作的对象有表,视图,索引。建表自然属于数据定义范围。

数据查询显而易见是select语句。

数据操作指insert,update,delete这三个操作。

数据控制指revoke,grank,commit,rollback。

本文先讨论数据定义。

在数据定义里有三个关键字:create,drop,alter。其中create和drop可以对表视图索引进行操作,alter只能对表进行操作。如图所示:

1.create

在oracle中,所有数据对象均由create语句来完成,这里的数据对象指的就是表视图索引。

首先是创建表。

create table MY_TABLE(

MY_ID NUMBER(10) NOT NULL UNIQUE,--不能为空,唯一性约束

MY_NAME VARCHAR2(10),--varchar2表示不定长的,表示长度范围0-10

MY_SALARY NUMBER(8,2)--(8,2)表示范围8,精度2,小数点后一定有两位

);

COMMENT ON TABLE MY_TABLE IS '我的表';--添加表注释

COMMENT ON COLUMN MY_TABLE.MY_ID IS '我的id';--添加列注释

COMMENT ON COLUMN MY_TABLE.MY_NAME IS '我的名字';

COMMENT ON COLUMN MY_TABLE.MY_SALARY IS '我的收入';

然后创建视图,视图就是一些特定SQL语句。

视图也称虚表,只有逻辑定义,每次都会重新执行SQL。所以视图查询出来的最终结果由实际数据库中存储的数据决定,当数据发生变化时,查询出来的也发生变化。视图可以从一个或多个表中获取数据。

视图的好处,最显而易见的就是可以重用SQL语句。其他还有很多作用,深入时再做讨论。

创建视图的语句:

create view MY_VIEW

AS SELECT my_id FROM MY_TABLE WHERE MY_ID = ''

WITH CHECK OPTION; --表示每次查询时都要用where的条件对数据进行筛选

最后是创建索引。索引是用来帮助快速查找的工具。能提高对表的快速查询速度。

create index my_index on MY_TABLE(MY_NAME);

这是最简单的模式,复杂的后续深入讨论。

2.DROP

drop操作很简单,直接加上table或view或index然后加上名字即可。

DROP TABLE MY_TABLE;

DROP VIEW MY_VIEW;

DROP INDEX MY_INDEX;

3,ALTER

ALTER操作只能对表进行。一般是在表中加新列,还有就是删除已有列的约束条件,修改已有列的数据类型。

ALTER TABLE MY_TABLE ADD MY_EMAIL VARCHAR2(20);

ALTER TABLE MY_TABLE MODIFY MY_SALARY VARCHAR2;

ALTER TABLE MY_TABLE DROP UNIQUE;

oracle 数据的定义,oracle——数据定义相关推荐

  1. oracle数据定义语句,oracle(sql)基础篇系列(3)——数据维护语句、数据定义语句、伪列...

    oracle(sql)基础篇系列(三)--数据维护语句.数据定义语句.伪列 DML语句 insert 向表中插入新的记录 --三种插入方式 --(1)不写字段的名字,直接按照字段的顺序把值逐个往里插 ...

  2. linux下出现重定义,Oracle Online Redefinition在线重定义

    在线重定义特性进行数据表Online的结构变动操作.本篇我们从一个较复杂的案例出发,讨论复杂变化情况下如何进行Online Redefinition,以及dbms_redefinition包各个关键方 ...

  3. ORACLE 数据泵导入导出数据

    一.摘要 在平常备库和数据库迁移的时候,当遇到大的数据库的时候在用exp的时候往往是需要好几个小时,耗费大量时间.oracle10g以后可以用expdp来导出数据库花费的时间要远小于exp花费的时间, ...

  4. oracle字符串提取函数,oracle字符串分割和提取函数定义

    oracle字符串分割和提取函数定义 oracle字符串分割和提取 分割 create or replace function Get_StrArrayLength ( av_str varchar2 ...

  5. oracle日期导出mysql_oracle的数据导入到mysql中,遇到一个时间转换问题

    Manager进程:需要源端跟目标端同时运行,主要作用是监控管理其它进程,报告错误,分配及清理数据存储空间,发布阈值报告等 Extract进程:运行在数据库源端,主要用于捕获数据的变化,负责全量.增量 ...

  6. 【一周入门MySQL—1】数据库概述、数据定义、数据操作

    数据库概述.数据定义.数据操作 一.数据库概述 数据库基础概念:按照一定的数据结构来组织.存储和管理数据的仓库. 企业数据存储面临的问题: 存储大量数据: 大量数据的检索和访问: 保证数据信息的一致性 ...

  7. 数据分片排序oracle,Oracle数据库的优化

    摘要 本文提出了一种优化Oracle数据库的方法.Oracle中SQL语句的执行过程可分为解析(Parse).执行(Execute)和提取结果(Fetch)三步,此方法就是通过对SQL语句在Oracl ...

  8. mysql 数据泵导入导出_【Oracle篇】约束和数据泵导入导出

    -- : 建立一个用户,以下的操作在本用户下(例如用户名为 test) create user test identified by test; -- : 进入sys用户,分别在test下建立emp和 ...

  9. oracle 数据 导出 excel 自动分多个文件,从oracle数据库中导出大量数据到excel中为什么自动分成了好几个excel文件《excel表格新手入门》...

    EXCEL中一个单元格中多行文本如何导入或复制到SQL SERVER 数据库表中? 保留换行符保存进数据表啊,读取出来显示的时候根据需要进行转换就行了,比如要在网页上显示,可以把换行符转换成HTML的 ...

最新文章

  1. 【原创】强化学习精选资料汇总:从入门到精通,看完这些干货就够啦!
  2. CSDN内容颜色、位置以及图片大小改变
  3. docker概念:用Dockerfile生成Image
  4. thinkphp中的AJAX返回ajaxReturn()
  5. [blog摘要]Exploring and Decoding ETW Providers using Event Log Channels
  6. 360的驱动(qutmdrv.sys)分页内存泄露
  7. jQuery实现布局高宽自适应
  8. C#事件机制(记住流程)
  9. 如何绘制逻辑图— 4. 要素的属性:黑盒与白盒
  10. 新年快乐,送一台新款华为笔记本!
  11. 关于Content-Type: multipart/form-data的支持
  12. css 中引入第三方字体
  13. 背景图片铺不满全屏时处理
  14. C# ping 局域网扫描
  15. 测试方法——正交表法
  16. 计算机网络:随机访问介质访问控制之CSMA/CA协议
  17. 大厂经典数据库(MongoDB)面试题整理汇总
  18. vscode翻译插件最佳搭配、翻译变量、划词翻译、中译英(提高生产效率)
  19. 在线渗透测试网址信息收集网站-密码工具-漏洞查找平台-安全视频平台
  20. cpu设计和实现(协处理器hi和lo)

热门文章

  1. 集群环境下_Docker环境下秒建Redis集群,连SpringBoot也整上了!
  2. excel range 判断日期型_EXCEL常用函数二
  3. 根据流程部署ID来获取流程定义图片
  4. tp5ajax即点即改,TP5中即点即改,json分页,单删
  5. c语言先调用load函数,透过源码全流程分析+load函数初始化
  6. 定时器精度对性能的影响_Comet CAA-500天线分析仪 | 高精度模拟十字针同时显示SWR和阻抗...
  7. Java经纬度坐标与高斯坐标的转换
  8. java数组的初始化方式
  9. rabbitMQ消息队列 consume详解
  10. Android开发笔记(十六)秋千摇摆动画SwingAnimation