在建表之前最好新建一个用户,因为在sys用户下的表格不允许删除列,

所以最好不要在sys用户下建表。

一、在Oracle SQLplus下建用户:

1、以dba身份登陆SQLplus:

[oracle@localhost etc]$ sqlplus /nolog

SQL*Plus: Release 11.2.0.4.0 Production on Tue Jun 28 16:19:47 2016

Copyright (c) 1982, 2013, Oracle. All rights reserved.

SQL> conn /as sysdba

Connected.

SQL> startup

2、新建一个名为‘username'的用户并设置密码为’password‘:

SQL>create user username identified by password;

3、将dba的权限赋予username:

SQL> grant dba to username;

4、连接username用户:

SQL> conn username/password

5、查看当前用户:

SQL> select * from user_sys_privs;

二、新建表

1、建表

新建一个名为’ivy‘的表,里面包含‘id’,‘name’,‘tel’,‘wechat’:

SQL>create table ivy(id number(2),name char(10),tel char(20),wechat char(20));

Table created.

这里的number和char都是Oracle常用字段类型:

number(x,y) 是数字型,

x是刻度,即位数总长度, y是精度,即小数的长度, 可存负数,

最长38位. 不够位时会四舍五入;

char(size)是固定长度的字符串, 不规定长度默认值为1,修改size来修改长度,

如果将结构设置成char,在表示该结构内的数据时要在前后加单引号。

Oracle还有其他常用字段类型,在这里先不细说,我会另开随笔。

2、查看表结构

查看表‘ivy’的结构:

SQL> desc ivy;
Name                                                    Null?        Type
----------------------------------------- -------- ----------------------------
ID                                                                    NUMBER(2)
NAME                                                               CHAR(10)
TEL                                                                  CHAR(20)
WECHAT                                                           CHAR(20)

3、添加列

在表‘ivy’里添加一列‘qq’:

SQL>alter table ivy add(qq number(20));

4、删除列

删除’wechat‘列

SQL>alter table ivy drop column wechat;

5、提交数据

当我们执行完上述操作(DML操作)时,数据库并不会立刻修改表中数据,

这时我们需要commit,然后数据库里的数据才会修改。具体操作:

SQL> commit;

Commit complete.

6、插入数据

往ivy中的‘id','name','tel','qq'列中分别插入数据:1,'ivy','1234',12345:

SQL>insert into ivy(id,name,tel,qq) values(1,'ivy','1234',12345);

1 row created.

当然别忘了这也要commit一下,不过你也可以等到最后再commit。

7、查看表

查看ivy表数据:

SQL>select * from ivy;

ID             NAME       TEL                        QQ
---------- ---------- -------------------- ----------
1               ivy         1234                       12345

 8、更改表数据

将'name=ivy'那一行的qq:12345改成qq:56789:

SQL>update ivy set qq = '56789' where name = 'ivy';

我们再来查看一下:

ID             NAME      TEL                        QQ
---------- ---------- -------------------- ----------
1              ivy           1234                      56789

我们可以看见qq已经被修改成'56789'了。

9、删除行

首先我们先在ivy表中添加一行数据,

往ivy中的‘id','name','tel','qq'列中分别插入数据:2,'lily','111111',2222222:

SQL>insert into ivy(id,name,tel,qq) values(2,'lily','111111',2222222);

1 row created.

此时ivy表就新添了一行数据:

SQL> select * from ivy;

ID  NAME       TEL                                QQ
---------- ---------- -------------------- ----------
            1 ivy           1234                           56789
            2 lily           111111                    2222222

现在删除id=1的那一行:

SQL>delete ivy where id = 1;

我们再查看一下表,发现id=1的那行删除了:

SQL> select * from ivy;

ID NAME       TEL                                QQ
---------- ---------- -------------------- ----------
            2 lily            111111                   2222222


在Oracle SQLplus下建用户 建表的更多相关文章

  1. Oracle数据库下sde用户系统表开放权限sql语句

    --sde用户登陆执行以下语句 grant insert, update, delete on sde.table_registry to PUBLIC; grant insert, update, ...

  2. oracle11gR2下scott用户以及表的建立

    目录 oracle11gR2下scott用户以及表的建立 找到系统带的sql文件(utlsample.sql) 根据SQL的内容操作 新建用户并授权 scott登录 表操作 查询表(使用pl/sql) ...

  3. oracle 如何查看当前用户的表空间名称

    如何查询当前用户的表空间名称?因为oracle建立索引,需要知道当前用户的表空间,查找了一下资料 --查询语法-- select default_tablespace from dba_users w ...

  4. 分享知识-快乐自己: Oracle数据库实例、用户、表、表空间之间关系

    数据库: Oracle数据库是数据的物理存储.这就包括(数据文件ORA或者DBF.控制文件.联机日志.参数文件). 其实Oracle数据库的概念和其它数据库不一样,这里的数据库是一个操作系统只有一个库 ...

  5. Oracle创建,删除用户与表空间

    1.创建表空间与用户 a:创建数据表空间 create tablespace user_data logging datafile 'D:\oracle\product\10.2.0\oradata\ ...

  6. oracle常用SQL——创建用户、表空间、授权(12C)

    一.查询 查询用户所属 表空间 select username,default_tablespace from dba_users where username='xxx' 查询表空间情况 SELEC ...

  7. activiti 部署在oracle多用户下不能自动建表问题的解决!

    在activiti配置文件中的SpringProcessEngineConfiguration的配置项中添加<property name= "databaseSchema" ...

  8. Mysql建库建用户建表等常用命令

    格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MYSQL.首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root -p,回车后提示你输 ...

  9. Oracle 数据库下赋予用户的执行存储过程和创建表权限

    grant create any table to username; grant create any procedure to username; grant execute any proced ...

随机推荐

  1. FineUI常见问题

    常见问题解答(必读) http://fineui.com/bbs/forum.php?mod=viewthread&tid=655

  2. 微信5.4安卓版重回ios风格 导航菜单都放底栏位置

    微信5.4安卓版发布更新了,由于本人的手机设置软件自动更新,中午的时候才发现微信换成了5.4版本,启动微信后是一个大大的“转账,就是发消息”,进入微信界面有点小惊喜,导航菜单都改为底部tab方式,顶部 ...

  3. MySQL数据类型 int(M) 表示什么意思?详解mysql int类型的长度值问题

    MySQL 数据类型中的 integer types 有点奇怪.你可能会见到诸如:int(3).int(4).int(8) 之类的 int 数据类型.刚接触 MySQL 的时候,我还以为 int(3) ...

  4. Vundle的安装

    1.Vundle.vim 安装 https://github.com/VundleVim/Vundle.vim 2.插件安装https://github.com/yangyangwithgnu/use ...

  5. Qml 写的弹出层控件

    QML弹出窗口组件,灯箱效果.动画效果,可拖拽 核心思路:一个mask层,一个最顶层,都用rectangle,禁止事件穿透 使用 Popup { id: popup width: 200; heigh ...

  6. 【Python基础学习五】列表,元祖,字典

    1.列表(list) 列表是Python的一种内置数据类型,list是一种有序的集合,可以随时添加和删除其中的元素,就像动态数组一样.获取list中的元素用角标获取,角标可以使用正角标,也可以使用负角 ...

  7. tornado 路由系统----扩展(include)

    在Tornado中实现Django分层路由 看了几个 Tornado 的 demo 发现都是一个py搞定所有,这样做做为例子来讲确实很直观,但如果在大型项目中这样做肯定不现实,所以博主考虑如何制定合理 ...

  8. python模块引用梳理

    文件组织结构: t ├── __init__.py ├── main.py ├── t1 │   ├── A.py │   └── __init__.py └── t2 ├── B.py └── __ ...

  9. VBA之文件筛选

    在工作中,经常会碰到从一堆腐朽的source中按照一个列表去筛选出来现在还要用的source文件. 这个如果用vba来实现的话,会节省大量的时间,而且不会出错. 前提说明: 将想要复制的文件名列表放在 ...

  10. struts2 国际化

    国际化概述: 软件国际化:一个软件根据来访者地区不同,显示不同语言. 国际化: * 必须有一组资源包: * 一组属性文件命名: 基本名称_语言(小写)_国家(大写).properties * 如:me ...