oracle查询语句大全.docx
- 文档编号:27246854
- 上传时间:2023-06-28
- 格式:DOCX
- 页数:25
- 大小:26.65KB
oracle查询语句大全.docx
《oracle查询语句大全.docx》由会员分享,可在线阅读,更多相关《oracle查询语句大全.docx(25页珍藏版)》请在冰豆网上搜索。
oracle查询语句大全
oracle查询语句大全oracle基本命令大全一
1.createuserusernameidentifiedbypassword;//建用户名和密码oracle,oracle
2.grantconnect,resource,dbatousername;//授权grantconnect,resource,dba,sysdbatousername;
3.connectusername/password//进入。
4.selecttable_name,column_namefromuser_tab_columnswheretable_name='mview_log';//查询表中的表名,字段名等等。
5.如何执行脚本SQL文件?
SQL>@PATH/filename.sql;
6.Oracleoledb提供者在command中执行多条SQL语句与SQLSERVER有少许差别,SQLServer只需使用";"分割多条SQL语句,而Oracle需要遵守ORACLE调用规范,即除分号分割外,还需以begin/end;包围语句体.
使用C#描述应如下所示:
this.oleDbCommand1.CommandText="beginINSERTINTOGROUP_INFO(GROUP_ID,GROUP_NAME)VALUES(1,\'2\');INSERTINTOGROUP_INFO(GROUP_ID,GROUP_NAME)VALUES(2,\'2\');end;";
7.查询用户下的所有表selectdistincttable_namefromuser_tab_columns;
8.如何搜索出前N条记录?
Selecta.*,rownumfrom(select*fromcardkindorderbycardkind)awhererownum 9.查找用户下的所有表: select*fromtab; 2、显示当前连接用户 SQL>showuser 3、查看系统拥有哪些用户 SQL>select*fromall_users; 4、新建用户并授权 SQL>createuseraidentifiedbya;(默认建在SYSTEM表空间下) SQL>grantconnect,resourcetoa; 5、连接到新用户 SQL>conna/a 6、查询当前用户下所有对象 SQL>select*fromtab; 7、建立第一个表 SQL>createtablea(anumber); 8、查询表结构 SQL>desca 9、插入新记录 SQL>insertintoavalues (1); 10、查询记录 SQL>select*froma; 11、更改记录 SQL>updateaseta=2; 12、删除记录 SQL>deletefroma; 13、回滚 SQL>roll; SQL>rollback; 14、提交 SQL>commit; select*from (selectt.*,dense_rank()over(orderbycardkind)rankfromcardkindt) whererank=2; 46.如何在字符串里加回车? select'Welcometovisit'||chr(10)||'www.CSDN.NET'fromdual; 47.中文是如何排序的? Oracle9i之前,中文是按照二进制编码进行排序的。 在oracle9i中新增了按照拼音、部首、笔画排序功能。 设置NLS_SORT值 SCHINESE_RADICAL_M按照部首(第一顺序)、笔划(第二顺序)排序 SCHINESE_STROKE_M按照笔划(第一顺序)、部首(第二顺序)排序 SCHINESE_PINYIN_M按照拼音排序 48.Oracle8i中对象名可以用中文吗? 可以 49.如何改变WIN中SQL*Plus启动选项? SQL*PLUS自身的选项设置我们可以在$ORACLE_HOME/sqlplus/admin/glogin.sql中设置。 50.怎样修改oracel数据库的默认日期? altersessionsetnls_date_format='yyyymmddhh24miss'; OR 可以在init.ora中加上一行 nls_date_format='yyyymmddhh24miss' 51.如何将小表放入keep池中? altertablexxxstorage(buffer_poolkeep); 52.如何检查是否安装了某个patch? checkthatoraInventory 53.如何使select语句使查询结果自动生成序号? selectrownum,COLfromtable; 54.如何知道数据裤中某个表所在的tablespace? selecttablespace_namefromuser_tableswheretable_name='TEST'; select*fromuser_tables中有个字段TABLESPACE_NAME,(oracle); select*fromdba_segmentswhere…; 55.怎么可以快速做一个和原表一样的备份表? createtablenew_tableas(select*fromold_table); 55.怎么在sqlplus下修改procedure? selectline,trim(text)tfromuser_sourcewherename='A'orderbyline; 56.怎样解除PROCEDURE被意外锁定? altersystemkillsession,把那个session给杀掉,不过你要先查出她的sessionid or 把该过程重新改个名字就可以了。 57.SQLReference是个什么东西? 是一本sql的使用手册,包括语法、函数等等,oracle官方网站的文档中心有下载. 58.如何查看数据库的状态? unix下 ps-ef|grepora windows下 看服务是否起来 是否可以连上数据库 59.请问如何修改一张表的主键? altertableaaa dropconstraintaaa_key; altertableaaa addconstraintaaa_keyprimarykey(a1,b1); 60.改变数据文件的大小? 用ALTERDATABASE....DATAFILE....; 手工改变数据文件的大小,对于原来的数据文件有没有损害。 61.怎样查看ORACLE中有哪些程序在运行之中? 查看v$sessions表 62.怎么可以看到数据库有多少个tablespace? select*fromdba_tablespaces; 63.如何修改oracle数据库的用户连接数? 修改initSID.ora,将process加大,重启数据库. 64.如何查出一条记录的最后更新时间? 可以用logminer察看 65.如何在PL/SQL中读写文件? UTL_FILE包允许用户通过PL/SQL读写操作系统文件。 66.怎样把"&"放入一条记录中? insertintoavalues(translate('at{&}t','at{}','at')); 67.EXP如何加QUERY参数? EXPUSER/PASSFILE=A.DMPTABLES(BSEMPMS) QUERY='"WHEREEMP_NO=\'S09394\'\"﹔ 68.关于oracle8i支持简体和繁体的字符集问题? ZHS16GBK可以支 69.DataGuard是什么软件? 就是Standby的换代产品 70.如何创建SPFILE? SQL>connect/assysdba SQL>select*fromv$version; SQL>createpfilefromspfile; SQL>CREATESPFILEFROMPFILE='E: \ora9i\admin\eygle\pfile\init.ora'; 文件已创建。 SQL>CREATESPFILE='E: \ora9i\database\SPFILEEYGLE.ORA'FROM PFILE='E: \ora9i\admin\eygle\pfile\init.ora'; 文件已创建。 71.内核参数的应用? shmmax 含义: 这个设置并不决定究竟Oracle数据库或者操作系统使用多少物理内存,只决定了 最多可以使用的内存数目。 这个设置也不影响操作系统的内核资源。 设置方法: 0.5*物理内存 例子: Setshmsys: shminfo_shmmax=10485760 shmmin 含义: 共享内存的最小大小。 设置方法: 一般都设置成为1。 例子: Setshmsys: shminfo_shmmin=1: shmmni 含义: 系统中共享内存段的最大个数。 例子: Setshmsys: shminfo_shmmni=100 shmseg 含义: 每个用户进程可以使用的最多的共享内存段的数目。 例子: Setshmsys: shminfo_shmseg=20: semmni 含义: 系统中semaphoreidentifierer的最大个数。 设置方法: 把这个变量的值设置为这个系统上的所有Oracle的实例的init.ora中的最大 的那个processes的那个值加10。 例子: Setsemsys: seminfo_semmni=100 semmns 含义: 系统中emaphores的最大个数。 设置方法: 这个值可以通过以下方式计算得到: 各个Oracle实例的initSID.ora里边的 processes的值的总和(除去最大的Processes参数)+最大的那个Processes×2+10× Oracle实例的个数。 例子: Setsemsys: seminfo_semmns=200 semmsl: 含义: 一个set中semaphore的最大个数。 设置方法: 设置成为10+所有Oracle实例的InitSID.ora中最大的Processes的值。 例子: Setsemsys: seminfo_semmsl=-200 72.怎样查看哪些用户拥有SYSDBA、SYSOPER权限? SQL>connsys/change_on_install SQL>select*fromV_$PWFILE_USERS; 73.如何单独备份一个或多个表? exp用户/密码tables=(表1,…,表2) 74.如何单独备份一个或多个用户? expsystem/managerowner=(用户1,用户2,…,用户n)file=导出文件 75.如何对CLOB字段进行全文检索? SELECT*FROMAWHEREdbms_lob.instr(a.a,'K',1,1)>0;76.如何显示当前连接用户? SHOWUSER 77.如何查看数据文件放置的路径? colfile_nameformata50 SQL>selecttablespace_name,file_id,bytes/1024/1024,file_namefromdba_data_files orderbyfile_id; 78.如何查看现有回滚段及其状态? SQL>colsegmentformata30 SQL>SELECTSEGMENT_NAME,OWNER,TABLESPACE_NAME,SEGMENT_ID,FILE_ID,STATUSFROM DBA_ROLLBACK_SEGS 79.如何改变一个字段初始定义的Check范围? SQL>altertablexxxdropconstraintconstraint_name; 之后再创建新约束: SQL>altertablexxxaddconstraintconstraint_namecheck(); 80.Oracle常用系统文件有哪些? 通过以下视图显示这些文件信息: v$database,v$datafile,v$logfilev$controlfile v$parameter; 81.内连接INNERJOIN? Selecta.*frombsempmsa,bsdptmsbwherea.dpt_no=b.dpt_no; 82.如何外连接? Selecta.*frombsempmsa,bsdptmsbwherea.dpt_no=b.dpt_no(+); Selecta.*frombsempmsa,bsdptmsbwherea.dpt_no(+)=b.dpt_no; 83.如何执行脚本SQL文件? SQL>@$PATH/filename.sql; 84.如何快速清空一个大表? SQL>truncatetabletable_name; 85.如何查有多少个数据库实例? SQL>SELECT*FROMV$INSTANCE; 86.如何查询数据库有多少表? SQL>select*fromall_tables; 87.如何测试SQL语句执行所用的时间? SQL>settimingon; SQL>select*fromtablename; 88.CHR()的反函数是? ASCII() SELECTCHAR(65)FROMDUAL; SELECTASCII('A')FROMDUAL; 89.字符串的连接 SELECTCONCAT(COL1,COL2)FROMTABLE; SELECTCOL1||COL2FROMTABLE; 90.怎么把select出来的结果导到一个文本文件中? SQL>SPOOLC: \ABCD.TXT; SQL>select*fromtable; SQL>spooloff; 91.怎样估算SQL执行的I/O数? SQL>SETAUTOTRACEON; SQL>SELECT*FROMTABLE; OR SQL>SELECT*FROMv$filestat; 可以查看IO数 92.如何在sqlplus下改变字段大小? altertabletable_namemodify(field_namevarchar2(100)); 改大行,改小不行(除非都是空的) 93.如何查询某天的数据? select*fromtable_namewheretrunc(日期字段)=to_date('2003-05-02','yyyy-mm- dd'); 94.sql语句如何插入全年日期? createtableBSYEAR(ddate); insertintoBSYEAR selectto_date('20030101','yyyymmdd')+rownum-1 fromall_objects whererownum<=to_char(to_date('20031231','yyyymmdd'),'ddd'); 95.如果修改表名? altertableold_table_namerenametonew_table_name; 96.如何取得命令的返回状态值? sqlcode=0 97.如何知道用户拥有的权限? SELECT*FROMdba_sys_privs; 98.从网上下载的ORACLE9I与市场上卖的标准版有什么区别? 从功能上说没有区别,只不过oracle公司有明文规定;从网站上下载的oracle产品不得用于商业用途,否则侵权。 99.怎样判断数据库是运行在归档模式下还是运行在非归档模式下? 进入dbastudio,历程--〉数据库---〉归档查看。 100.sql>startuppfile和ifile,spfiled有什么区别? pfile就是Oracle传统的初始化参数文件,文本格式的。 ifile类似于c语言里的include,用于把另一个文件引入 spfile是9i里新增的并且是默认的参数文件,二进制格式 startup后应该只可接pfile 101.如何搜索出前N条记录? SELECT*FROMempLOYEEWHEREROWNUM 102.如何知道机器上的Oracle支持多少并发用户数? SQL>conninternal; SQL>showparameterprocesses; 103.db_block_size可以修改吗? 一般不可以﹐不建议这样做的。 104.如何统计两个表的记录总数? select(selectcount(id)fromaa)+(selectcount(id)frombb)总数fromdual; 105.怎样用Sql语句实现查找一列中第N大值? select*from (selectt.*,dense_rank()over(orderbysal)rankfromemployee) whererank=N; 106.如何在给现有的日期加上2年? ( selectadd_months(sysdate,24)fromdual; 107.USED_UBLK为负值表示什么意思? Itis"harmless". 108.Connectstring是指什么? 应该是tnsnames.ora中的服务名后面的内容 109.怎样扩大REDOLOG的大小? 建立一个临时的redolog组,然后切换日志,删除以前的日志,建立新的日志。 110.tablespace是否不能大于4G? 没有限制. 111.返回大于等于N的最小整数值? SELECTCEIL(N)FROMDUAL; 112.返回小于等于N的最小整数值? SELECTFLOOR(N)FROMDUAL; 113.返回当前月的最后一天? SELECTLAST_DAY(SYSDATE)FROMDUAL; 114.如何不同用户间数据导入? IMPSYSTEM/MANAGERFILE=AA.DMPFROMUSER=USER_OLDTOUSER=USER_NEWROWS=YINDEXES=Y ; 115.如何找数据库表的主键字段的名称? SQL>SELECT*FROMuser_constraintsWHERECONSTRAINT_TYPE='P'and table_name='TABLE_NAME'; 116.两个结果集互加的函数? SQL>SELECT*FROMBSEMPMS_OLDINTERSECTSELECT*FROMBSEMPMS_NEW; SQL>SELECT*FROMBSEMPMS_OLDUNIONSELECT*FROMBSEMPMS_NEW; SQL>SELECT*FROMBSEMPMS_OLDUNIONALLSELECT*FROMBSEMPMS_NEW; 117.两个结果集互减的函数? SQL>SELECT*FROMBSEMPMS_OLDMINUSSELECT*FROMBSEMPMS_NEW; 118.如何配置Sequence? 建sequenceseq_custid createsequenceseq_custidstart1incrememtby1; 建表时: createtablecust {cust_idsmallintnotnull, ...} insert时: insertintotablecust values(seq_cust.nextval,...) 日期的各部分的常用的的写法 119>.取时间点的年份的写法: SELECTTO_CHAR(SYSDATE,'YYYY')FROMDUAL; 120>.取时间点的月份的写法: SELECTTO_CHAR(SYSDATE,'MM')FROMDUAL; 121>.取时间点的日的写法: SELECTTO_CHAR(SYSDATE,'DD')FROMDUAL; 122>.取时间点的时的写法: SELECTTO_CHAR(SYSDATE,'HH24')FROMDUAL; 123>.取时间点的分的写法:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- oracle 查询 语句 大全