oracle数据库建表空间语句汇总

合集下载

Oracle表空间创建及表创建

Oracle表空间创建及表创建

Oracle表空间创建及表创建-- 创建表空间,(数据库⽂件)create tablespace db3datafile 'E:\tablespace\db3.dbf'size 1m-- 创建表空间,(数据库⽂件),指定数据⽂件在哪⼉多⼤扩容create tablespace db2datafile 'E:\tablespace\db2.dbf'size 1m autoextend on next 1m maxsize unlimited-- 查询表select * from user_tablespaces-- 删除表空间drop tablespace db3-- 删除表空间及删除内容和⽂件drop tablespace db3 including contents and datafiles-- 更改表的状态alter tablespace db3 read onlyalter tablespace db3 read write-- 创建⽤户,密码create user user1 identified by user1-- 删除⽤户drop user user1-- 创建⽤户,密码,同时更改默认表空间create user user1 identified by user1default tablespace db3-- 创建后更改密码,更改默认表空间alter user user1 identified by user2alter user user1 default tablespace db3-- 授权登录grant create session to user1-- 授予⽤户dba权限,管理员权限grant dba to user1-- 授予查询某个表权限grant select on scott.dept to user1-- 撤销权限revoke dba from user1revoke select on scott.dept from user1-- user1创建表create table student(id number,name varchar2(20),birthday date)create table student2(id number(1),name varchar2(20),birthday date)create table student3(id number(5),name varchar2(20),birthday date) -- number默认number(5)-- 查表select * from user_tablesselect * from scott.dept -- 查询其他⽤户的表select * from user_tab_colsselect * from user_tab_cols where table_name='STUDENT' -- 要和表中相同为⼤写select * from user_tab_columns -- 和select * from user_tab_cols基本⼀样,少了⼏项-- 删表drop table student2-- 增、改、删表中字段使⽤ ()或者columnalter table student add chengji varchar2(10)alter table student add (math number(1),english number(1)) -- 增加多个字段需⽤括号()alter table student add (chengji2 varchar2(10)) -- 增统⼀都使⽤()alter table student rename (chengji to remark) -- xxalter table student rename column chengji to remark -- 改需使⽤关键字columnalter table student drop column chengji2 -- 删需使⽤关键字columnalter table student drop (english) -- 删使⽤()也⾏-- 注释comment on table student is '学⽣表'comment on column student.id is '编号'。

oracle数据库基本语句

oracle数据库基本语句

oracle数据库基本语句oracle 数据库是一种常用的关系型数据库管理系统,常用的oracle数据库包括oracle10g、oracle11g和oracle12c。

要掌握oracle的基本用法,必须掌握其基本的语句。

oracle的常用基本语句有:一、数据定义语言(DDL)1、创建数据表:CREATE TABLE 表名(字段名数据类型[完整性约束条件],字段名数据类型[完整性约束条件],……);2、修改数据表: ALTER TABLE 表名 ADD(字段名数据类型[完整性约束条件],字段名数据类型[完整性约束条件],……);3、删除数据表: DROP TABLE 表名;4、创建索引:CREATE [UNIQUE] INDEX 索引名ON 表名[字段名[,字段名];5、删除索引: DROP INDEX 索引名;三、数据控制语言(DCL)1、建立用户: CREATE USER 用户名 IDENTIFIED BY 密码;2、删除用户: DROP USER 用户名;3、授权:GRANT 权限 ON 对象 TO 用户[WITH GRANT OPTION];4、回收授权: REVOKR 权限 ON 对象 FROM 用户;5、控制事务: COMMIT/ROLLBACK;四、数据库控制语言(DBCL)1、创建数据库:CREATE DATABASE 数据库名;2、删除数据库: DROP DATABASE 数据库名;3、创建表空间:CREATE TABLESPACE 表空间名 SEGMENT SPACE MANAGEMENT 自动;4、删除表空间: DROP TABLESPACE 表空间名;5、管理会话: ALTER SYSTEM KILL SESSION ['会话号'];。

创建oracle数据库表空间,角色,用户的sql语句

创建oracle数据库表空间,角色,用户的sql语句

创建oracle数据库表空间,角色,用户的sql语句创建oracle 数据库表空间,角色,用户的sql语句1.创建角色CREATE ROLE "QIUDINGROLE" NOT IDENTIFIED;GRANT "CONNECT" TO "QIUDINGROLE";GRANT "DBA" TO "QIUDINGROLE";GRANT "RESOURCE" TO "QIUDINGROLE";2.创建表空间create tablespace safetempdatafile'D:\oracle\product\10.1.0\oradata\localpower\safetemp01.dbf'size32m autoextend on next32m maxsize unlimited logging extent management local segment space management auto;CREATE SMALLFILE TABLESPACE "EXAM" DATAFILE'D:\Soft\oracle\product\10.2.0\oradata\qiuding\EXAM' SIZE 100M AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;BEGINDBMS_SERVER_ALERT.SET_THRESHOLD(9000,NULL,NULL,N ULL,NULL,1,1,NULL,5,' EXAM'); END;CREATE SMALLFILE TEMPORARY TABLESPACE "EXAM_TEMP" TEMPFILE'D:\Soft\oracle\product\10.2.0\oradata\qiuding\EXAM_tem p' SIZE 100M AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M;BEGINDBMS_SERVER_ALERT.SET_THRESHOLD(9000,NULL,NULL,NULL,NULL,1,1,NULL,5,' EXAM_TEMP'); END;3.创建用户create userEXAMidentified by "PASSWORD123"default tablespace "EXAM"temporary tablespace "EXAM_TEMP"profile DEFAULTACCOUNT UNLOCK;grant QIUDINGROLE to EXAM;grant unlimited tablespace to EXAM;4.创建备份目录并且付相应权限create directory dump_dir as 'D:\Soft\oracle\backup';grant read,write on directory dump_dir to EXAM;。

增加表空间个数的语句

增加表空间个数的语句

增加表空间个数的语句在数据库的世界里,表空间就像是一个个小房间,用来存放我们的数据宝贝。

有时候,随着数据的不断增长,就像家里的东西越来越多,一个小房间不够用啦,我们就得增加表空间的个数。

那怎么增加表空间个数呢?不同的数据库系统有不同的办法。

就拿Oracle数据库来说吧。

我们得先有足够的权限,这就好比你要在房子里再隔出几个房间,你得是房子的主人或者得到主人的许可才行。

在Oracle里,我们可以用CREATE TABLESPACE语句来创建新的表空间。

比如说,我们想创建一个名为new_tablespace的表空间,可能会有这样的语句:CREATE TABLESPACE new_tablespace DATAFILE 'new_tablespace.dbf' SIZE 100M;这里的DATAFILE指定了表空间对应的数据文件,就像给新房间指定一块地方来放东西,SIZE呢,就是这个房间的初始大小啦,100M就像是这个房间一开始能放100立方米东西的空间大小。

再说说MySQL数据库。

MySQL也有自己的方式来增加表空间个数。

在MySQL里,我们可能会涉及到文件系统级别的操作。

想象一下,MySQL的数据存储就像在一个大仓库里,每个表空间就是仓库里的小隔间。

如果我们要增加隔间个数,得在文件系统里给它腾出地方来。

我们可以通过修改配置文件,比如f,来指定新的表空间相关的参数。

比如说,我们想给某个数据库增加表空间,可能要设置一些像innodb_data_file_path这样的参数,这个参数就像是告诉MySQL去哪里找新的空间来放数据。

对于SQL Server数据库呢,又有它独特的方式。

就像是每个城市盖房子都有自己的规矩一样。

在SQL Server里,我们可以使用CREATE DATABASE语句来创建新的数据库,每个数据库就可以看作是一个大的表空间。

例如CREATE DATABASE new_database; 这就像在一块空地上盖了一个新的大房子,这个大房子里可以放很多数据表,也就相当于增加了表空间个数。

oracle 建表语句 if table exists

oracle 建表语句 if table exists

oracle 建表语句if table exists
在Oracle数据库中,可以使用CREATE TABLE语句来创建一个新表。

但是,如果你想要在表已经存在的情况下执行该语句,Oracle会抛出一个错误。

为了检查表是否存在并在不存在时创建它,你需要使用PL/SQL块。

以下是一个示
例:
sql
DECLARE
v_count NUMBER;
BEGIN
SELECT COUNT(*)
INTO v_count
FROM all_tables
WHERE table_name = 'YOUR_TABLE_NAME';
IF v_count = 0THEN
EXECUTE IMMEDIATE 'CREATE TABLE YOUR_TABLE_NAME ( ... )'; -- 替换为你的列定义
END IF;
END;
/
请注意以下几点:
1.将YOUR_TABLE_NAME替换为你想要创建的表的名称。

2.在EXECUTE IMMEDIATE语句中,提供你想要的列定义和表结构。

3.这个方法只适用于你有足够的权限在数据库中创建表的情况。

4.这种方法不会处理已存在的具有不同结构的同名表。

如果你需要处理这种情况,你
需要进一步扩展这个逻辑来检查列和约束的差异。

oracle数据库新建数据库语句

oracle数据库新建数据库语句

oracle数据库新建数据库语句以Oracle数据库新建数据库语句为题,我们将介绍如何在Oracle数据库中创建数据库。

Oracle是一种关系型数据库管理系统,可以用于存储和管理大量数据。

下面是创建数据库的步骤:1. 确认数据库实例已启动在创建新的数据库之前,确保Oracle数据库实例已经启动。

可以使用以下命令检查数据库实例的状态:```$ sqlplus / as sysdbaSQL> SELECT instance_name, status FROM v$instance;```2. 创建数据库使用CREATE DATABASE语句来创建新的数据库。

以下是一个示例:```CREATE DATABASE mydbUSER SYS IDENTIFIED BY passwordUSER SYSTEM IDENTIFIED BY passwordLOGFILE GROUP 1 ('/u01/oradata/mydb/redo01.log') SIZE 100M,GROUP 2 ('/u01/oradata/mydb/redo02.log') SIZE 100M,GROUP 3 ('/u01/oradata/mydb/redo03.log') SIZE 100MMAXLOGFILES 5MAXLOGMEMBERS 5MAXDATAFILES 100CHARACTER SET utf8NATIONAL CHARACTER SET utf8EXTENT MANAGEMENT LOCALDATAFILE '/u01/oradata/mydb/system01.dbf' SIZE 500M REUSESYSAUX DATAFILE '/u01/oradata/mydb/sysaux01.dbf' SIZE 500M REUSEDEFAULT TABLESPACE usersDATAFILE '/u01/oradata/mydb/users01.dbf' SIZE 500M REUSE AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITEDTEMPFILE '/u01/oradata/mydb/temp01.dbf' SIZE 100M REUSE;```在上面的示例中,我们创建了一个名为mydb的数据库。

oracle建立表空间的方法

oracle建立表空间的方法

oracle建立表空间的方法Oracle数据库中建立表空间的方法主要有两种:一种是通过SQL命令的方式,另一种是通过Oracle客户端Enterprise Manager Console来创建。

通过SQL命令的方式创建表空间,需要先创建临时表空间和数据表空间,然后创建用户并指定表空间。

具体步骤如下:1. 创建临时表空间。

可以通过以下命令创建:```sqlcreate temporary tablespace user_temptempfile 'D:\oracle\oradata\Oracle9i\user_'size 50m autoextend on next 50mmaxsize 20480mextent management local;```2. 创建数据表空间。

可以通过以下命令创建:```sqlcreate tablespace user_dataloggingdatafile 'D:\oracle\oradata\Oracle9i\user_'size 50m autoextend on next 50mmaxsize 20480mextent management local;```3. 创建用户并指定表空间。

可以通过以下命令创建用户并将表空间指定给该用户:```sqlcreate user username identified by password;grant create session, create tablespace to username;alter user username default tablespace user_data temporary tablespace user_temp;```通过Oracle客户端Enterprise Manager Console来创建表空间,可以通过以下步骤完成:1. 打开Oracle客户端Enterprise Manager Console。

create table建表语句oracle

create table建表语句oracle

在Oracle数据库中,可以使用`CREATE TABLE`语句来创建表。

下面是创建表的基本语法:CREATE TABLE table_name
(
column1 datatype [constraint],
column2 datatype [constraint],
column3 datatype [constraint],
...
);
其中,`table_name`是要创建的表的名称,`column1`, `column2`, `column3`, ... 是表的列名,`datatype` 是列的数据类型,`constraint` 是可选项,用于定义列的约束条件(如主键、唯一性约束、外键等)。

以下是一个示例,创建一个名为"employees" 的表,其中包含"id"、"name" 和"salary" 列:CREATE TABLE employees
(
id INT PRIMARY KEY,
name VARCHAR(50),
salary DECIMAL(10, 2)
);
在上述示例中,"id" 列被定义为主键列,"name" 列使用`VARCHAR` 数据类型并指定最大长度为50,"salary" 列使用`DECIMAL` 数据类型,并指定总长度为10,小数位数为2。

你可以根据实际需求自定义表的列名、数据类型和约束条件。

请注意,这只是创建表的基本语法,还可以使用其他选项和功能来定义表的结构和属性。

如有需要,请参考Oracle文档以获取更详细的信息。

Oracle数据库语句大全

Oracle数据库语句大全

Oracle数据库语句大全一.入门部分1.创建表空间create tablespace schooltbs datafile ‘D:\oracle\datasource\schooltbs.dbf’ size 10M autoextend on;2.删除表空间drop tablespace schooltbs[including contents and datafiles];3.查询表空间基本信息select *||tablespace_name from DBA_TABLESPACES;4.创建用户create user lihuaidentified by lihuadefault tablespace schooltbstemporary tablespace temp;5.更改用户alter user lihuaidentified by 123default tablespace users;6.锁定用户alter user lihua account lock|unlock;7.删除用户drop user lihua cascade;--删除用户模式8.oracle数据库中的角色connect,dba,select_catalog_role,delete_catalog_role,execute_catalo g_role,exp_full_database,imp_full_database,resource9.授予连接服务器的角色grant connect to lihua;10.授予使用表空间的角色grant resource to lihua with grant option;--该用户也有授权的权限11.授予操作表的权限grant select,insert on user_tbl to scott;--当前用户grant delete,update on er_tbl to scott;--系统管理员二.SQL查询和SQL函数1.SQl支持的命令:数据定义语言(DDL):create,alter,drop数据操纵语言(DML):insert,delete,update,select数据控制语言(DCL):grant,revoke事务控制语言(TCL):commit,savepoint,rollback2.Oracle数据类型字符,数值,日期,RAW,LOB字符型char:1-2000字节的定长字符varchar2:1-4000字节的变长字符long:2GB的变长字符注意:一个表中最多可有一列为long型Long列不能定义唯一约束或主键约束long列上不能创建索引过程或存储过程不能接受long类型的参数。

oracle创建表

oracle创建表

oracle创建表⼀、新表不存在1、基本语法create table 表名称(id varchar2(50) primary key ,name char(200) not null,phone number(11) unique,class carchar(10),foreign key (name))tablespace USERS ----表放在USERS表空间pctfree 10 ----保留10%空间给更新该块数据使⽤initrans 1 -----初始化事物槽的个数maxtrans 255 ----最⼤事务槽的个数storage ----存储参数(initial 64K ---区段⼀次扩展64knext 1Mminextents 1 ---最⼩区段数maxextents unlimited --最⼤区段⽆限制);2、删除表之前备份数据(创建备份表)creact table 新表名称 as select 字段1,字段2 from 旧表名称create table 新表名称 as select * from 旧表名称 where 1=2; ---复制结构,不要数据3、添加列 alter table 表名称 add (name varchar2(100),code varchar(20));删除列 alter table 表名称 drop (name,code)4、表重命名 rename table 新表名称 to 旧表名称;varcha2 ----0-4000,可变长度char() ----0-2000,固定长度,⽤空格在数据的右边补到固定长度number(6,2) ---6位整数、2位⼩数number(2) --2位整数clob ---txt⽂本blob ---图⽚、视频、声⾳等转换过来的⼆进制对象date ---sysdate1、添加主键约束(将stuNo作为主键)alter table stuInfoadd constraint PK_stuNo primary key (stuNo)2、添加外键约束 (主表stuInfo和从表stuMarks建⽴关系,关联字段stuNo)alter table stuInfoadd constraint FK_stuNo foreign key(stuNo) references stuinfo(stuNo)3、添加唯⼀约束(⾝份证号唯⼀)alter table stuInfoadd constraint UQ_stuID unique(stuID)4、添加默认约束(如果地址不填默认为“地址不详”)alter table stuInfoadd constraint DF_stuAddress default (‘地址不详’) for stuAddress5、添加检查约束(对年龄加以限定 15-40岁之间)alter table stuInfoadd constraint CK_stuAge check (stuAge between 15 and 40)6、添加表注释:学⽣信息表comment on table STUINFOis '学⽣信息表';7、添加列名称:学号comment on column STUINFO.stuidis '学号';comment on column STUINFO.stunameis '学⽣姓名';⼆、新表存在insert into新表select* from旧表; ---两个表存在字段⼀样,复制数据insert into新表(field1,field2,.....) select field1,field2,field3 from旧表; ---新表只有旧表的部分字段,复制部分字段数据select* into新表from旧表; ---全部数据与结构select* into新表from旧表where1=2;---结构以上只复制数据和结构,不能复制约束/索引等信息如果where条件满⾜时,查询结果有数据,即复制表数据如果 where 条件不成⽴时,查询结果为空,只复制表结构,没有任务数据如果新表与旧表字段不⼀致,要说明取旧表的哪些字段,赋予新表。

oracle 数据库建表语句

oracle 数据库建表语句

oracle 数据库建表语句摘要:1.Oracle 数据库简介2.建表语句的基本语法3.创建表的实例4.总结正文:Oracle 数据库是一款功能强大的关系型数据库管理系统,广泛应用于各种企业和组织的数据存储和管理。

在Oracle 数据库中,建表语句是创建数据库表的关键操作,它可以通过SQL 语句实现。

下面,我们将详细介绍Oracle 数据库建表语句的基本语法和创建表的实例。

1.Oracle 数据库简介Oracle 数据库是由Oracle 公司开发的一款关系型数据库管理系统,它具有高性能、高可用性和可扩展性等特点。

Oracle 数据库支持多种平台,如Windows、Linux 等,适用于各种企业和组织的数据存储和管理需求。

2.建表语句的基本语法在Oracle 数据库中,创建表的SQL 语句的基本语法如下:```CREATE TABLE 表名(列名1 数据类型,列名2 数据类型,...);```其中,`表名`是所创建表的名称,`列名1`、`列名2`等是表中的列名,`数据类型`是列的数据类型,如VARCHAR2、NUMBER 等。

例如,创建一个名为`students`的表,包含`id`、`name`和`age`三个列,可以使用以下SQL 语句:```CREATE TABLE students (id NUMBER,name VARCHAR2(50),age NUMBER);```3.创建表的实例下面,我们通过一个具体的实例来演示如何使用Oracle 数据库建表语句创建一个表。

假设我们要创建一个名为`employees`的表,包含`id`、`name`、`position`、`salary`和`department`五个列。

首先,我们需要确定每个列的数据类型:`id`为`NUMBER`类型,`name`为`VARCHAR2(50)`类型,`position`为`VARCHAR2(100)`类型,`salary`为`NUMBER`类型,`department`为`VARCHAR2(100)`类型。

oracle增加表空间的四种方法

oracle增加表空间的四种方法

oracle增加表空间的四种⽅法1. 查看所有表空间⼤⼩select tablespace_name,sum(bytes)/1024/1024 from dba_data_filesgroup by tablespace_name;2. 未使⽤的表空间⼤⼩select tablespace_name,sum(bytes)/1024/1024 from dba_free_spacegroup by tablespace_name;3. 所以使⽤空间可以这样计算select a.tablespace_name,total,free,total-free used from( select tablespace_name,sum(bytes)/1024/1024 total from dba_data_filesgroup by tablespace_name) a,( select tablespace_name,sum(bytes)/1024/1024 free from dba_free_spacegroup by tablespace_name) bwhere a.tablespace_name=b.tablespace_name;4. 下⾯这条语句查看所有segment的⼤⼩。

Select Segment_Name,Sum(bytes)/1024/1024 From User_Extents Group By Segment_Name5. 还有在命令⾏情况下如何将结果放到⼀个⽂件⾥。

SQL> spool out.txtSQL> select * from v$database;SQL> spool off6.如何查看oracle临时表空间当前使⽤了多少空间的⼤⼩?不是占⽤量,是当前正在使⽤的临时表空间⼤⼩SELECT ERNAME,SE.SID,SU.EXTENTS,SU.BLOCKS * TO_NUMBER(RTRIM(P.VALUE)) AS SPACE,TABLESPACE,SEGTYPE,SQL_TEXTFROM V$SORT_USAGE SU, V$PARAMETER P, V$SESSION SE, V$SQL SWHERE = 'db_block_size'AND SU.SESSION_ADDR = SE.SADDRAND S.HASH_VALUE = SU.SQLHASHAND S.ADDRESS = SU.SQLADDRORDER BY ERNAME, SE.SID;查询所有的表空间select tablespace_name from dba_tablespaces查看表空间中分布的⽤户信息select tablespace_name, owner,sum(bytes) from dba_segmentsgroup by tablespace_name, owner增加表空间⼤⼩的四种⽅法Meathod1:给表空间增加数据⽂件ALTER TABLESPACE app_data ADD DATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\EDWTEST\APP03.DBF' SIZE 50M;Meathod2:新增数据⽂件,并且允许数据⽂件⾃动增长ALTER TABLESPACE app_data ADD DATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\EDWTEST\APP04.DBF' SIZE 50MAUTOEXTEND ON NEXT 5M MAXSIZE 100M;Meathod3:允许已存在的数据⽂件⾃动增长ALTER DATABASE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\EDWTEST\APP03.DBF' AUTOEXTEND ON NEXT 5M MAXSIZE 100M;Meathod4:⼿⼯改变已存在数据⽂件的⼤⼩ALTER DATABASE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\EDWTEST\APP02.DBF' RESIZE 100M;。

oracle语句汇总

oracle语句汇总

Oracle 常用语句汇总select * from user_tab_comments 取得所有表的注释select * from user_col_comments 取得所有列的注释select * from user_tables 取得当前用户下所有的表1、查找表的所有索引(包括索引名,类型,构成列):select t.*,i.index_type from user_ind_columns t,user_indexes i where t.index_name = i.index_name and t.table_name = i.table_name and t.table_name = 要查询的表2、查找表的主键(包括名称,构成列):select cu.* from user_cons_columns cu, user_constraints au where cu.constraint_name = au.constraint_name and au.constraint_type = 'P' and au.table_name = 要查询的表3、查找表的唯一性约束(包括名称,构成列):select column_name from user_cons_columns cu, user_constraints au where cu.constraint_name = au.constraint_name and au.constraint_type = 'U' and au.table_name = 要查询的表4、查找表的外键(包括名称,引用表的表名和对应的键名,下面是分成多步查询):select * from user_constraints c where c.constraint_type = 'R' and c.table_name = 要查询的表查询外键约束的列名:select * from user_cons_columns cl where cl.constraint_name = 外键名称查询引用表的键的列名:select * from user_cons_columns cl where cl.constraint_name = 外键引用表的键名5、查询表的所有列及其属性select t.*,MENTS from user_tab_columns t,user_col_comments c where t.table_name = c.table_name and t.column_name = c.column_name and t.table_name = 要查询的表/*1-获取任意用户下的主键字段*/select cons.* from all_cons_columns cons, all_constraints conwhere con.constraint_type='P'and cons.table_name = '表名'and cons.constraint_name=con.constraint_name;/*2-获取本用户下的主键字段*/select cu.* from user_cons_columns cu, user_constraints au where cu.constraint_name = au.constraint_name and au.constraint_type = 'P' and au.table_name = '表名'正在看的ORACLE教程是:oracle常用sql语句。

Oracle建表空间各种语句

Oracle建表空间各种语句

Oracle建表空间各种语句第一篇:Oracle建表空间各种语句在创建用户之前,先要创建表空间:其格式为:格式: create tablespace 表间名 datafile '数据文件名' size 表空间大小;如:SQL> create tablespace news_tablespace datafile 'F:oracleproduct10.1.0oradatanewsnews_data.dbf' size 500M;其中'news_tablespace'是你自定义的表空间名称,可以任意取名;'F:oracleproduct10.1.0oradatanewsnews_data.dbf'是数据文件的存放位置,'news_data.dbf'文件名也是任意取;'size 500M'是指定该数据文件的大小,也就是表空间的大小。

现在建好了名为'news_tablespace'的表空间,下面就可以创建用户了:其格式为:格式: create user 用户名 identified by 密码 default tablespace 表空间表;如:SQL> create user news identified by news default tablespace news_tablespace;默认表空间'default tablespace'使用上面创建的表空间。

接着授权给新建的用户:SQL> grant connect,resource to news;--表示把connect,resource权限授予news用户SQL> grant dba to news;--表示把 dba权限授予给news用户授权成功。

ok!数据库用户创建完成,现在你就可以使用该用户创建数据表了!1.建表空间create tablespace hoteldata datafile 'D:javaOracleproduct10.1.0oradatazznorclhoteldata.dbf'size200m autoextend on next 10m maxsize unlimited;2.建用户create user hotel identified by hotel default tablespace hoteldataaccount unlock;//identified by 后面的是密码,前面的是用户名3.用户授权grant resource,connect,RECOVERY_CATALOG_OWNER to hotel;grant create table to hotel;alter user hotel quota unlimited ON OSDB;alter user hotel default tablespace hoteldata;4.删除表空间DROP TABLESPACE hoteldata INCLUDING CONTENTS AND DATAFILES;5.删除用户DROP USER hotel CASCADE 6.删除表的注意事项在删除一个表中的全部数据时,须使用TRUNCATE TABLE 表名;因为用DROP TABLE,DELETE * FROM 表名时,TABLESPACE表空间该表的占用空间并未释放,反复几次DROP,DELETE操作后,该TABLESPACE上百兆的空间就被耗光了。

oracle增加表空间的四种方法

oracle增加表空间的四种方法

oracle增加表空间的四种方法Meathod1:给表空间增加数据文件ALTER TABLESPACE app_data ADD DATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\EDWTEST\APP03.DBF' SIZE 50M;Meathod2:新增数据文件,并且允许数据文件自动增长ALTER TABLESPACE app_data ADD DATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\EDWTEST\APP04.DBF' SIZE 50MAUTOEXTEND ON NEXT 5M MAXSIZE 100M;Meathod3:允许已存在的数据文件自动增长ALTER DATABASE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\EDWTEST\APP03.DBF' AUTOEXTEND ON NEXT 5M MAXSIZE 100M;Meathod4:手工改变已存在数据文件的大小ALTER DATABASE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\EDWTEST\APP02.DBF' RESIZE 100M;实例1:在数据库管理中,磁盘空间不足是DBA都会遇到的问题,问题比较常见。

--1查看表空间已经使用的百分比select a.tablespace_name,a.bytes/1024/1024 "Sum MB",(a.bytes-b.bytes)/1024/1024 "used MB",b.bytes/1024/1024 "free MB",round(((a.bytes-b.bytes)/a.bytes)*100,2) "percent_used"from(select tablespace_name,sum(bytes) bytes from dba_data_files group by tablespace_name) a, (select tablespace_name,sum(bytes) bytes,max(bytes) largest from dba_free_space group by tablespace_name) bwhere a.tablespace_name=b.tablespace_nameorder by ((a.bytes-b.bytes)/a.bytes) desc“Sum MB”表示表空间所有的数据文件总共在操作系统占用磁盘空间的大小比如:test表空间有2个数据文件,datafile1为300MB,datafile2为400MB,那么test表空间的“Sum MB”就是700MB“userd MB”表示表空间已经使用了多少“free MB”表示表空间剩余多少“percent_user”表示已经使用的百分比--2比如从1中查看到MLOG_NORM_SPACE表空间已使用百分比达到90%以上,可以查看该表空间总共有几个数据文件,每个数据文件是否自动扩展,可以自动扩展的最大值。

Oracle建表空间各种语句

Oracle建表空间各种语句

在创建用户之前,先要创建表空间:其格式为:格式: create tablespace 表间名 datafile '数据文件名' size 表空间大小;如:SQL> create tablespace news_tablespace datafile'F:\oracle\product\10.1.0\oradata\news\news_data.dbf' size 500M;其中'news_tablespace'是你自定义的表空间名称,可以任意取名;'F:\oracle\product\10.1.0\oradata\news\news_data.dbf'是数据文件的存放位置,'news_data.dbf'文件名也是任意取;'size 500M'是指定该数据文件的大小,也就是表空间的大小。

现在建好了名为'news_tablespace'的表空间,下面就可以创建用户了:其格式为:格式: create user 用户名 identified by 密码 default tablespace 表空间表;如:SQL> create user news identified by news default tablespace news_tablespace;默认表空间'default tablespace'使用上面创建的表空间。

接着授权给新建的用户:SQL> grant connect,resource to news; --表示把 connect,resource权限授予news用户SQL> grant dba to news; --表示把 dba权限授予给news用户授权成功。

ok! 数据库用户创建完成,现在你就可以使用该用户创建数据表了!1.建表空间create tablespace hoteldata datafile'D:\java\Oracle\product\10.1.0\oradata\zznorcl\hoteldata.dbf'size200m autoextend on next 10m maxsize unlimited;2.建用户create user hotel identified by hotel default tablespace hoteldata account unlock;//identified by 后面的是密码,前面的是用户名3.用户授权grant resource,connect,RECOVERY_CATALOG_OWNER to hotel ;grant create table to hotel;alter user hotel quota unlimited ON OSDB;alter user hotel default tablespace hoteldata;4.删除表空间DROP TABLESPACE hoteldata INCLUDING CONTENTS AND DATAFILES;5.删除用户DROP USER hotel CASCADE6.删除表的注意事项在删除一个表中的全部数据时,须使用TRUNCATE TABLE 表名;因为用DROP TABLE,DELETE * FROM 表名时,TABLESPACE表空间该表的占用空间并未释放,反复几次DROP,DELETE操作后,该TABLESPACE上百兆的空间就被耗光了。

Oracle新建用户、角色,授权,建表空间的sql语句

Oracle新建用户、角色,授权,建表空间的sql语句

Oracle新建⽤户、⾓⾊,授权,建表空间的sql语句oracle数据库的权限系统分为系统权限与对象权限。

系统权限( database system privilege )可以让⽤户执⾏特定的命令集。

例如,create table权限允许⽤户创建表,grant any privilege 权限允许⽤户授予任何系统权限。

对象权限( database object privilege )可以让⽤户能够对各个对象进⾏某些操作。

例如delete权限允许⽤户删除表或视图的⾏,select权限允许⽤户通过select从表、视图、序列(sequences)或快照(snapshots)中查询信息。

每个oracle⽤户都有⼀个名字和⼝令,并拥有⼀些由其创建的表、视图和其他资源。

oracle⾓⾊(role)就是⼀组权限(privilege)(或者是每个⽤户根据其状态和条件所需的访问类型)。

⽤户可以给⾓⾊授予或赋予指定的权限,然后将⾓⾊赋给相应的⽤户。

⼀个⽤户也可以直接给其他⽤户授权。

Oracle创建⽤户的语法:Oracle创建⽤户(密码验证⽤户),可以采⽤CREATE USER命令。

CREATE USER username IDENTIFIED BY passwordOR IDENTIFIED EXETERNALLYOR IDENTIFIED GLOBALLY AS ‘CN=user'[DEFAULT TABLESPACE tablespace][TEMPORARY TABLESPACE temptablespace][QUOTA [integer K[M] ] [UNLIMITED] ] ON tablespace[,QUOTA [integer K[M] ] [UNLIMITED] ] ON tablespace[PROFILES profile_name][PASSWORD EXPIRE][ACCOUNT LOCK or ACCOUNT UNLOCK]其中,CREATE USER username:⽤户名,⼀般为字母数字型和“#”及“_”符号。

Oracle create tablespace语法详解

Oracle create tablespace语法详解

Oracle create tablespace语法详解CREATE [UNDO] TABLESPACE tablespace_name[DATAFILE datefile_spec1 [,datefile_spec2] ......[{MININUM EXTENT integer [k|m]|BLOCKSIZE integer [k]|logging clause | FORCE LOGGING|DEFAULT {data_segment_compression} storage_clause|[online|offline]|[PERMANENT|TEMPORARY]|extent_manager_clause|segment_manager_clause}]1、undo说明系统将创建一个回滚表空间。

在9i中数据库管理员可以不必管理回滚段,只有建立了undo表空间,系统就会自动管理回滚段的分配,回收的工作。

当然,也可以创建一般的表空间,在上面创建回滚段.不过对于用户来说,系统管理比自己管理要好很多.如果需要自己管理,请参见回滚段管理的命令详解.当没有为系统指定回滚表空间时,系统将使用system系统回滚段来进行事务管理。

//2、tablespace_name指出表空间的名称。

//3、datafile datefile_spec1指出表空间包含什么空间文件。

datefile_spec1是形如:['filename'] [SIZE integer [ K | M ]] [REUSE] [autoextend_clause][autoextend_clause]是形如:AUTOEXTEND { OFF | ON [ NEXT integer [ K | M ] ] [maxsize_clause] }其中filename是数据文件的路径名,可以是相对路径,也可以是绝对路径。

size是文件的大小,REUSE表示文件是否被重用.AUTOEXTEND表明是否自动扩展.OFF | ON 表示自动扩展是否被关闭.NEXT 表示数据文件满了以后,扩展的大小.maxsize_clause表示数据文件的最大大小.形如MAXSIZE { UNLIMITED | integer [ K | M ] }. UNLIMITED 表示无限的表空间.integer是数据文件的最大大小.DATAFILE 'D:"oracle"oradata"IMAGEDATA01.dbf' SIZE 2000M,'D:"oracle"oradata"IMAGEDATA02.dbf' SIZE 2000M//4、MININUM EXTENT integer [k|m]指出在表空间中范围的最小值。

oracle-sql语句-创建表空间、数据库

oracle-sql语句-创建表空间、数据库

1、查看表空间的名称及大小select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_size from dba_tablespaces t, dba_data_files d where t.tablespace_name =d.tablespace_name group by t.tablespace_name;2、查看表空间物理文件的名称及大小select tablespace_name, file_id, file_name,round(bytes/(1024*1024),0) total_space from dba_data_files order by tablespace_name;3、查看回滚段名称及大小select segment_name, tablespace_name,r.status,(initial_extent/1024) InitialExtent,(next_extent/1024) NextExtent, max_extents, v.curext CurExtent From dba_rollback_segs r, v$rollstat v Where r.segment_id = n(+) order by segment_name ;4、查看控制文件select name from v$controlfile;获取创建表空间的sqlselectdbms_lob.substr(dbms_metadata.get_ddl('TABLESPACE',a.tablespace_name)) from dba_tablespaces a;SQL> select sid,serial# from v$session where username='TEST';alter system kill session '150,9019';查看被锁的表select object_name,machine,s.sid,s.serial#,s.event fromgv$locked_object l,dba_objects o,gv$session s wherel.object_id=o.object_id and l.session_id=s.sid;alter system kill session ‘sid,serial#’;5、查看日志文件select member from v$logfile;6、查看表空间的使用情况select sum(bytes)/(1024*1024) as free_space,tablespace_name fromdba_free_space group by tablespace_name;SELECT A.TABLESPACE_NAME,A.BYTES TOTAL,B.BYTES USED, C.BYTES FREE, (B.BYTES*100)/A.BYTES "% USED",(C.BYTES*100)/A.BYTES "% FREE" FROM SYS.SM$TS_AVAIL A,SYS.SM$TS_USED B,SYS.SM$TS_FREE C WHEREA.TABLESPACE_NAME=B.TABLESPACE_NAME ANDA.TABLESPACE_NAME=C.TABLESPACE_NAME;Select b.tablespace_name as表空间名,b.bytes as字节数,(b.bytes-sum(nvl(a.bytes,0))) as已使用,sum(nvl(a.bytes,0)) as剩余空间,sum(nvl(a.bytes,0))/(b.bytes)*100 as 剩余百分比 fromdba_free_space a,dba_data_files b where a.file_id=b.file_id group by b.tablespace_name,b.file_id,b.bytes order by b.file_id;7、查看数据库库对象select owner, object_type, status, count(*) count# from all_objects group by owner, object_type, status;8、查看数据库的版本Select version FROM Product_component_version WhereSUBSTR(PRODUCT,1,6)='Oracle';9.查看某个表空间内所占空间大于某个值的段(表或索引):Select segment_name,bytes FROM dba_segments Where bytes>10000000 AND tablespace_name='tablespace_name';10.查看所有表空间的碎片程度(值在30以下表示碎片很多)select tablespace_name,sum(bytes),sum(free),sum(free)*100/sum(bytes) from (select b.file_idfile_ID, b.tablespace_nametablespace_name, b.bytesBytes, (b.bytes-sum(nvl(a.bytes,0)))used, sum(nvl(a.bytes,0))free, sum(nvl(a.bytes,0))/(b.bytes)*100 Per cent from dba_free_space a,dba_data_filesb where a.file_id=b.file_id group byb.tablespace_name,b.file_id,b.bytes order by b.file_id) group by tablespace_name order by sum(free)*100/sum(bytes);11.查看自上次数据库启动以来所有数据文件的读写次数select substr(,1,5) Drive, file_name, (fs.phyblkrd+fs.phyblkwrt) fromv$filestat fs,v$datafile df where df.file#=fs.file#;创建临时表空间://创建临时表空间create temporary tablespace mytest tempfile'E:/Program/oracle/product/10.1.0/oradata/orcl/mytest.dbf' size 32m autoextend on next 32m maxsize 1024m extent management local;//创建数据表空间create tablespace mytest_data logging datafile'E:/Program/oracle/product/10.1.0/oradata/orcl/mytest_data.dbf' size 32m autoextend on next 32m maxsize 1024m extent management local;//创建用户并指定表空间create user testaccount identified by testpwd default tablespace mytest_data temporary tablespace mytest;//给用户授予权限grant connect,resource to testaccount; (db2:指定所有权限)12,创建一个用户:CREATE USER username IDENTIFIED BY password OR IDENTIFIED EXETERNALLYOR IDENTIFIED GLOBALLY AS ‘CN=user’[DEFAULT TABLESPACEtablespace][TEMPORARY TABLESPACE temptablespace][QUOTA [integer K[M] ] [UNLIMITED] ] ON tablespace[,QUOTA [integer K[M] ] [UNLIMITED] ] ON tablespace[PROFILES profile_name][PASSWORD EXPIRE][ACCOUNT LOCK or ACCOUNT UNLOCK];//查看数据库中的所有用户:select * from all_users;//orselect * from dba_users13查看oracle最大连接数:Select session_max,session_current,sessions_highwater,users_max from v$license;Select username,count(username) from v$session group by username; 加密存储过程WRAP INAME=D:\ORACLE\SOURCE\DATE.SQL ONAME=D:\ORACLE\SOURCE\DATA.PLD。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
with rowid as select vat_code,tax_type_display,description,tax_rate,start_date from apps.alx_vat_v@fincon ;
物资类型:create materialized view mv_material_types refresh force on demand start with sysdate next sysdate + 1
imp celaw/celaw@celaw full=y ignore=y file=e:/201208201223.DMP
DROP TABLESPACE celaw INCLUDING CONTENTS AND DATAFILES CASCADE CONSTRAINTS;
删除用户drop user celaw cascade;
with rowid as select * from apps.alx_material_由于误操作造成数据库用户被锁解决方法:
登录到服务器,在命令行环境下运行
sqlplus / as sysdba
然后
alter user sys identified by oracle;
表空间
建立表空间(一般建N个存数据的表空间和一个索引空间):
create tablespace表空间名
datafile '路径(要先建好路径)\***.dbf ' size *M
tempfile '路径\***.dbf ' size *M
autoextend on --自动增长
--还有一些定义大小的命令,看需要
EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;
--索引表空间
CREATE TABLESPACE sdt_Index
DATAFILE 'F:\tablespace\demo' size 512M
EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;
sys用户的密码就被改成了oracle;
SQL> alter user用户名account unlock;
用户就解锁了
端口号被占用解决办法
用命令netstat -a -n -o
最后一个选项表示连接所在进程id.找到8080端口的PID
然后打开任务管理器,切换到进程选项卡,在菜单栏选择查看->选择列,选择PID.
在列表中找到PID对应的进程就可以了
W
在资源管理器–工具–文件夹选项–文件类型中选中扩展名为DOC,点击“高级”-选择“打开”-点击“编辑”-在“用于执行编辑的应用程序中”在/n的后而加上“%1”(注:一定要添上空格及“”号)例如:“D:\Program\Microsoft Office\OFFICE11\WINWORD.EXE”/n“%1”/dde。注意一定是这个顺序,其它顺序都是不对的。取消“使用DDE”前的钩,点击确定后,你的WORD打开速度就会提高很多,没有延迟了。同理,EXECL就是选择扩展名为XLS,用相同的方法在/e的后而加“%1”,并取消“使用DDE”前的钩。在资源管理器–工具–文件夹选项–文件类型中选中扩展名为DOC,点击“高级”-选择“打开”-点击“编辑”-在“用于执行编辑的应用程序中”在/n的后而加上“%1”(注:一定要添上空格及“”号)例如:“D:\Program\Microsoft Office\OFFICE11\WINWORD.EXE”/n“%1”/dde。注意一定是这个顺序,其它顺序都是不对的。取消“使用DDE”前的钩,点击确定后,你的WORD打开速度就会提高很多,没有延迟了。同理,EXECL就是选择扩展名为XLS,用相同的方法在/e的后而加“%1”,并取消“使用DDE”前的钩。
default storage(
initial 100K,
next 100k,
);
用户权限
授予用户使用表空间的权限:
alter user用户名quota unlimited on表空间;
或alter user用户名quota *M on表空间;
--表空间
CREATE TABLESPACEdeej
DATAFILE 'E:\database\deej.dbf' size2G
--2.建用户
create userdeejidentified bydeej
default tablespacedeej;
--3.赋权
grant connect,resource,dba todeej;
--导入导出命令
ip导出方式:expdeej/deej@10.120.1.3:1521/orclfile=f:/deej.dmpowner=deej
表空间赋权给用户:alter user celaw quota unlimited on TBS_CONTRACT;
建立物化视图:
指定必须的权限:
GRANT ON COMMIT REFRESH to celaw;
GRANT GLOBAL QUERY REWRITE TO celaw;
实例:
汇率:create materialized view mv_exchange_rate refresh force on demand start with sysdate next sysdate + 1
with rowid as select * from apps.alx_con_exchange_rate_v@fincon ;
税率:create materialized view mv_vat refresh force on demand start with sysdate next sysdate + 1
建立表空间和用户的步骤:
用户
建立:create user用户名identified by "密码";
授权:grant create session to用户名;
grant create table to用户名;
grant create tablespace to用户名;
grant create view to用户名;
相关文档
最新文档