2024年4月11日发(作者:)

oracle数据库查询语句大全

*fromtable_namewhererownum>begin

="select*fromtable"

eCall("SELECT*FROM(SELECT

FROM("+sql+")AWHERErownum<=

"+intPage*intPageSize+")

*intPageSize);

今天想查询一下Oracle数据库下所有的表名或某个用户下的所有表,半天没想起来.还

是在网上找到了答案.

selecttable_namefromall_tables;//所有的表明

selecttable_namefromuser_all_tables;//用户的所有的表

一下是转贴的sql语句的帖子.

select*fromuser_objects;

select*fromdba_tables;

select*fromall_tables;

select*fromuser_users

select*fromall_users

select*fromdba_users

selectname,dbidfromv$database;

//查询所有的表

//查询所有的表

//查询所有的表

//查出一个用户

//查询所有用户

//查询所有用户

//查询数据库名和它的ID

BWHEREr>

andrownum

A.*,rownumr

"+(intPage-1)

select*_tab_columns;//查询表名,并显示列名

describe表名//查询表结构

select*_tab_columnswheretable_name=表名//查询指定表名的字

2:查询数据库参数

showparameterdb;

3:查询数据库的实例名

selectinstance_namefromv$instance;

4:数据库域名

数据库安装结束后,如果要知道正在运行额数据库是否有域名以及数据库域名名称可以

selectvaluefromv$parameterwherename='db_domain'

showparameterdomain

5:数据库服务名

如果数据库有域名,则数据库服务名就是全局数据库名,如果该数据库没有定义域名,

则数据库服务名与数据库名相同

showparameterservice_name

6:显示当前用户

showuser

7:直接登陆

sqlplus"/assysdba"

8:当前ORACLE系统时间

selectsysdatefromdual;

9:查询数据库字典v$nls_parameter产看字符集相关参数

select*fromv$nls_parameters;

//*************

oracle基本操作语句(适合初学者)

oracle操作语句:

1.创建表

createtable表名(

列名1类型,

列名2类型

);

2.修改类属性

altertable表名modify(列名类型);

3.添加列

altertable表名add(列名类型);

4.添加主键约束和非空约束

altertable表名addconstraintpk_表名primarykey(列名);

altertable表名modify(列名notnull);

5.删除主键约束

altertable表名dropprimarykey;

altertable表名dropconstraintpk_表名;

6.失效约束

altertable表名disableprimarykey;

altertable表名disableconstraintpk_表名;

7.有效约束

altertable表名enableprimarykey;

altertable表名enableconstraintpk_表名;

8.删除列

altertable表名dropcolumn列名;

9.设置某列不可用,然后删除

altertable表名setunused(列名);

altertable表名dropunusedcolumns;

10.修改表名

rename表名1to表名2

alter表名1renameto表名2;

11.截断表

truncatetable表名;

12.截断表保留行空间

truncatetable表名resuestorage;

13.查看表结构

desctable表名;

14.删除表

droptable表名;

15.插入记录

例:insertinto表名values(内容1,内容2,内容3,内容4);

16.带参数对话方式插入行

例:insertinto表名values(&列名1,&列名2);

insertinto表名values(内容1,内容2);

17.插入某几列记录

insertinto表名(列名1,列名2)values(内容1,内容2);

18.为列插入空值(其列不能为notnull)

insertinto表名values(内容1,null,null);

19.创建表(包括主键及外键设置)方法一

createtable表名(

列名1类型

constraintpk_表名primarykey,

列名2类型notnull,

列名3类型

constraintfk_表名reference表名(列名),

列名3类型

constraintck_表名check(列名3in(''内容1'',''内容2'',''内容3''))

);

20.查询所有行

select*from表名;

21.查询某几列

select列名1,列名2from表名;

22.重复行消除

selectdistict列名from表名;

语句查询

select*from表名where条件orderby列名;

(注:如number类型查出自动按升序排列,如要按降序排列,则select*from表名

where条件orderby列名desc;)

24.创建表,方法二

createtable表名(

列名1类型primarykey,

列名2类型notnull,

列名3类型check(列名3in('''','''','''')),

列名4类型refernce表名(列名)

);

25.修改列=‘?’的数据

update表名set(列=?)where列=‘?’;

26.删除行

deletefrom表名where条件;

27.事务处理

--事务处理

update表名

set列名(日期)=''30-5月-98''

where条件;

savepointmark1;

deletefrom表名where条件;

savepointmark2;

rollbacktosavepointmark1;

rollback;

28.建立用户user1,密码为password

授予用户connect,resource的权限

connect角色用于登录

resource角色用于建表等.

connectsystem/manager

createuseruser1identifiedbypassword;

grantconnect,resourcetopassword;

29.数据控制语言

connectscott/tiger

30.把对表1查询和修改的权限授予user1

grantselect,updateon表1touser1;

31.把对表表1中列1和列2修改的权限授予user1

grantupdate(列1,列2)on表1touser1;

32.把对表表1查询的权限授予用户user1

并且user1用户还可以把这个权限授予别的用户(withgrantoption)

grantselecton表1touser1withgrantoption;

33.从用户user1撤销对表1查询和修改的权限

revokeselect,updateon表1fromuser1;