Oracle表空间和表的常用操作指令

查看端口号指令

netstat –a

设置:

set pagesize 100;   //设置每页显示的行数
set linesize 200; //设置每页显示的字符数 空格也算
col 列名A for a8; //设置A列的宽度为8,a代表字符串
col 列名B for 9999; //设置B列的宽度, 9999为数字格式
  

清屏:

SQL> clear scre;

SQL> host cls;

建立表空间

SQL> create tablespace tc20 datafile  'e:	c20_data_dbf' size 20m  autoextend on next 5m maxsize 500m;

查询表空间名称

SQL> select tablespace_name,file_name from dba_data_files order by file_name;

查询所有表空间的名称,和物理文件名称。从数据字典(dba_data_files中查询。并把查询的结果进行排序。按照文件名称来排(默认升序。)

 查询默认表空间

SQL> select user_id,username,default_tablespace from dba_users order by user_id;

每个用户在登陆数据库后如果执行建表操作,且没有显式的指明该表位于那个表空间中,那么会自动的创建于用户的默认表空间中。这个默认表空间相当于用户的工作空间。这个空间我们可以通过一条语句来查询。 

修改默认表空间

SQL> alter database default tablespace TABLE_NAME;

需要注意的是。如果某个表空间已经不再使用要被删除,但是它是默认表空间,那么在删除之前要解除默认。 

对表空间进行重命名

SQL> alter tablespace  OLD_NAME rename to NEW_NAME;

删除表空间

drop tablespace 名字

这样删除是没有清除内容和删除本地文件。如果想一起删除需要使用

drop tablespace tc20 including contents and datafiles;

创建表:

create table 表名 (列1 数据类型,列2 数据类型,...列n 数据类型)tablespace 表空间。

SQL> create table student(

  2  id number,

  3  name varchar2(20),

  4  gender number)tablespace MYWORK;

向表中加入数据

SQL> insert into student values (20001,'图灵',24);

查询用户所建立的数据表

SQL> select table_name,tablespace_name from user_tables where lower(table_name)

= 'student';

查看已有表的数据结构。

使用select是无法得到具体的建表语句的。想要得到建表语句只有通过下面语句

SQL> describe dual;

比如在插入数据时突然忘记了列的数据类型,就可以通过该语句来查看。 

增加新列

SQL> alter table student add(phoneNumber number);

修改列的数据类型

SQL> alter table student modify(age varchar2(15)); 

删除已有列

alter table student drop column phonenumber;

删除使用drop 需要注意的是,在使用删除列时要配套column使用。因为只有使用了column才可以表明要删除的是一列。 

对列重命名

SQL> alter table student rename column id to ids;

要注意的是同删除一样要加column。表明要改的是一个列的名字。

更改表空间

SQL> alter table student move tablespace USERS;

删除整张表

SQL> drop table student;

表中增加数据:

INSERT INTO students(mid,name,age) VALUES(1,'张三',30);

INSERT INTO students(mid,name,age) VALUES(2,'李四',300);

单表查询:

select命令的语法格式:

select 列1,列2,...,列n from 表 where 条件order by  (desc);

 

Oracle中使用分组有一个注意点: group by的条件必须要在select的列表中出现.或者复合函数中. 即分组两种写法:

1.select 列(A) from 表 group by 列(B)

这里的A和B必须是同一列

2.select 列(A),函数(列B) from 表 group by 列(C)

这里A和C必须是同以列.A和B不需要一样.

原文地址:https://www.cnblogs.com/slowcity/p/7144771.html