文档库 最新最全的文档下载
当前位置:文档库 › Oracle C#实现Oracle Text全文检索的简单例子

Oracle C#实现Oracle Text全文检索的简单例子

Oracle C#实现Oracle Text全文检索的简单例子
Oracle C#实现Oracle Text全文检索的简单例子

Oracle全文检索的步骤如下:

(1) 建表并装载文本。

(2) 建立索引。如果想配置Oracle索引,可以在建立索引前进行配置,如:改变词法分析器。可以下面SQL语句查看Oracle全文检索的配置:SELECT * FROM CTX_PREFERENCES;

(3) SQL查询。

(4) 索引维护:同步与优化。

授权

执行全文的用户必须具有 CTXAPP角色或 CTXSYS用户,以及 CTX_DDL包执行权限。

(1) 用 SYS用户授予 SCOTT 用户 CTXAPP 角色,命令如下:

GRANT CTXAPP TO SCOTT;

(2) 用 CTXSYS 用户给 SCOTT 用户授权 CTX_DDL 包的执行权限,命令如下:

GRANT EXECUTE ON CTX_DLL TO SCOTT;

创建表、添加记录和索引

以下的SQL语句和 JOB都在 SCOTT 用户下执行。首先,执行以下 SQL 语句,创建表 DOCS,并插入两条记录,提交后创建索引 doc_index。

1.DROP TABLE DOCS;

2.CREATE TABLE DOCS (

3.id NUMBER PRIMARY KEY,

4.text VARCHAR2(80)

5.);

6.INSERT INTO docs VALUES (1,'the first doc');

7.INSERT INTO docs VALUES (2,'the second doc');

https://www.wendangku.net/doc/9117754395.html,MIT;

9.CREATE INDEX doc_index ON DOCS(text) INDEXTYPE IS CTXSYS.CONTEXT;

然后,执行查询,C#代码如下:

1.string connStr="Data Source=ora9; uid=scott; pwd=tiger; unicode=true";

2.string sqlStr = "SELECT ID FROM DOCS WHERE CONTAINS(TEXT,'%FIRST%')>0";

3.OracleDataAdapter da = new OracleDataAdapter(sqlStr, connStr);

4.DataTable dt = new DataTable();

5.da.Fill(dt);

6.Response.Write(dt.Rows[0][0].ToString());

同步和优化

当表DOCS 发生变化(插入,删除)后,索引必须能反应这个变化,这就需要对索引进行同步和优化。Oracle提供 ctx server 完成同步和优化,也可以用以下的job来完成。

同步sync

将新的term保存到I表。

1.create or replace procedure sync is

2.begin

3.execute immediate 'alter index doc_index rebuild online' ||

4.' parameters ( ''sync'' )';

5.execute immediate 'alter index doc_index rebuild online' ||

6.' parameters ( ''optimize full maxtime unlimited'' )';

7.end sync;

优化

清除I表的垃圾,将已经被删除的term从I表删除。

1.declare

2.v_job number;

3.begin

4.Dbms_Job.Submit

5.(

6.job => v_job,

7.what => 'sync;',

8.next_date => sysdate, /* default */

9.interval => 'sysdate + 1/720' /* = 1 day / ( 24 hrs * 30 min) = 2 mins */

10.);

11.Dbms_Job.Run ( v_job );

12.end;

其中,I表是 dr$doc_index$i 表。用户建立索引后,Oracle会自动创建四个表,dr$doc_index$i、dr$doc_index$k、dr$doc_index$n和dr$doc_index$r。可以用SELECT语句查看此表的内容。

说明:

(1) 本文是在Oracle 9i和10g环境下完全实现Oracle的全文检索,包括建立表和索引,进行同步和优化;

(2) 进行全文检索的SQL语句是"SELECT ID FROM DOCS WHERE CONTAINS(TEXT,'%FIRST%')>0";

(3) 其中,">0"是有效的Oracle SQL所必需的,因为,Oracle SQL不支持函数的布尔返回值;

(4) 其中,"CONTAINS(TEXT,'%FIRST%')>0",在Oracle 9i和10g与11g下有所不同;

(5) 最近做项目从Oracle 10g改成11g,在进行全文检索时,Oracle 10g下的代码,在11g下检索不到结果;

(6) 初步认为,Oracle 9i和10g与11g的区别是,在9i和10g下,如果不使用“%”,则是精确检索,否则是模糊检索。而在11g下,则完全不用“%”;

(7) 另外,在9i和10g下,可以使用如:CONTAINS(TEXT,'%FIRST% AND %second%')>0,进行全文检索,但在11g下,是不可以的,要分开写,如:

CONTAINS(TEXT,'%FIRST%')>0 AND CONTAINS(TEXT,'%second%')>0;

(8) 感觉11g下的全文检索更好。

来源:网络编辑:联动北方技术论坛

oracle数据库基本命令

oracle数据库基本命令 oracle安装后 sys:超级管理员(dba),默认密码为:change_on_install system:系统管理员(dbaoper),默认密码为:manager; sys与system的不同在于sys能够create datebase而system则不能。scott:普通用户,默认密码:tiger 1.切换用户:conn 用户名/密码; SQL> conn system/manager; Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 Connected as system SQL> conn sys/change_on_install as sysdba; Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 Connected as SYS 注意:sys与其他用户在命令窗口切换时的不同。 2.修改密码:passw username;(普通用户可以修改自己密码,管理员可以修改其他人的密码) 3.显示当前用户。show user; 4.断开数据库同时推出:exit; 文件操作 5.运行sql脚本,start d:\a.sql; 6.编辑指定的sql脚本。Edit d:\a.sql; 7.将屏幕上指定的内容输出到指定文本中去。spool e:\b.sql;执行语句;spool off;

8.显示设置环境变量; 可以用来控制输出的各种格式,如果希望永久保存可以修改glogin.sql脚本。 Linesize(行宽): show linesize;显示行宽 set linesize 90;设置行宽为90个字符。 Pagesize(页面大小): Show pagesize;显示页面大小 Set pagesize 180;设置页面的小。 (做报表时可以用。一页设定几行。)

使用Oracle全文索引搜索文本

使用Oracle全文索引搜索文本 不使用Oracle text功能,也有很多方法可以在Oracle数据库中搜索文本.可以使用标准的INSTR 函数和LIKE操作符实现。 SELECT *FROM mytext WHERE INSTR (thetext, 'Oracle') > 0; SELECT * FROM mytext WHERE thetext LIKE '%Oracle%'; 有很多时候,使用instr和like是很理想的, 特别是搜索仅跨越很小的表的时候.然而通过这些文本定位的方法将导致全表扫描,对资源来说消耗比较昂贵,而且实现的搜索功能也非常有限,因此对海量的文本数据进行搜索时,建议使用oralce提供的全文检索功能建立全文检索的步骤步骤一检查和设置数据库角色首先检查数据库中是否有CTXSYS用户和CTXAPP脚色。如果没有这个用户和角色,意味着你的数据库创建时未安装intermedia功能。你必须修改数据库以安装这项功能。默认安装情况下,ctxsys用户是被锁定的,因此要先启用ctxsys 的用户。步骤二赋权在ctxsys用户下把ctx_ddl的执行权限赋于要使用全文索引的用户,例: grant execute on ctx_ddl to pomoho; 步骤三设置词法分析器(lexer) Oracle实现全文检索,其机制其实很简单。即通过Oracle专利的词法分析器(lexer),将文章中所有的表意单元(Oracle 称为term)找出来,记录在一组以dr$开头的表中,同时记下该term 出现的位置、次数、hash 值等信息。检索时,Oracle 从这组表中查找相应的term,并计算其出现频率,根据某个算法来计算每个文档的得分(score),即所谓的‘匹配率’。而lexer则是该机制的核心,它决定了全文检索的效率。Oracle 针对不同的语言提供了不同的lexer, 而我们通常能用到其中的三个: n basic_lexer: 针对英语。它能根据空格和标点来将英语单词从句子中分离,还能自动将一些出现频率过高已经失去检索意义的单词作为‘垃圾’处理,如if , is 等,具有较高的处理效率。但该lexer应用于汉语则有很多问题,由于它只认空格和标点,而汉语的一句话中通常不会有空格,因此,它会把整句话作为一个term,事实上失去检索能力。以‘中国人民站起来了’这句话为例,basic_lexer 分析的结果只有一个term ,就是‘中国人民站起来了’。此时若检索‘中国’,将检索不到内容。 n chinese_vgram_lexer: 专门的汉语分析器,支持所有汉字字符集(ZHS16CGB231280 ZHS16GBK ZHT32EUC ZHT16BIG5 ZHT32TRIS ZHT16MSWIN950 ZHT16HKSCS UTF8 )。该分析器按字为单元来分析汉语句子。‘中国人民站起来了’这句话,会被它分析成如下几个term: ‘中’,‘中国’,‘国人’,‘人民’,‘民站’,‘站起’,起来’,‘来了’,‘了’。可以看出,这种分析方法,实现算法很简单,并且能实现‘一网打尽’,但效率则是差强人意。 n chinese_lexer: 这是一个新的汉语分析器,只支持utf8字符集。上面已经看到,chinese vgram lexer这个分析器由于不认识常用的汉语词汇,因此分析的单元非常机械,像上面的‘民站’,‘站起’在汉语中根本不会单独出现,因此这种term是没有意义的,反而影响效率。chinese_lexer的最大改进就是该分析器能认识大部分常用汉语词汇,因此能更有效率地分析句子,像以上两个愚蠢的单元将不会再出现,极大提高了效率。但是它只支持utf8, 如果你的数据库是zhs16gbk字符集,则只能使用笨笨的那个Chinese vgram lexer. 如果不做任何设置,Oracle 缺省使用basic_lexer这个分析器。要指定使用哪一个lexer, 可以这样操作: 第一.当前用户下下建立一个preference(例:在pomoho用户下执行以下语句) exec ctx_ddl.create_preference ('my_lexer', 'chinese_vgram_lexer');

Oracle常用函数及使用案例(珍藏版)

Oracle常用函数及使用案例(珍藏版) 一:sql函数: lower(char):将字符串转化为小写的格式。 upper(char):将字符串转化为大写的格式。 length(char):返回字符串的长度。 substr(char,m,n):取字符串的字串。 案例1.将所有员工的名字按小写的方式显示 select lower(ename),sal from emp; 案例2.将所有员工的名字按大写的方式显示。 select upper(ename),sal from emp; 案例3.显示正好为五个字符的的员工的姓名。 select * from emp where length(ename)=5; 案例4.显示所有员工姓名的前三个字符。 select substr(ename,1,3) from emp;//从名字的第一个字符开始取,向后取三个字符。 案例5.以首字母为大写的方式显示所有员工的姓名。 (1)首字母大写:select upper(substr(ename,1,1)) from emp; (2)完成后面字母小写。select lower(substr(ename,2,length(ename)-1)) from emp; (3)合并select upper(substr(ename,1,1))||lower(substr(ename,2,length(ename)-1)) from emp; 案例6.以首字母为小写的方式显示所有员工的姓名。(需要有较高的灵活度,细心分析和清晰思路) (1)首字母小写:select upper(substr(ename,1,1)) from emp; (2)完成后面字母大写。select lower(substr(ename,2,length(ename)-1)) from emp; (3)合并select lower(substr(ename,1,1))||upper(substr(ename,2,length(ename)-1)) from emp; 案例7.函数(替换):replace(char1,search_string,replace_string); 显示所有员工的姓名,用“我要替换A”替代所有“A”。 select replace(ename,'A','我是老鼠')from emp; 案例8.以首字母为小写的方式显示所有员工的姓名。 select replace(ename,substr(ename,1,1),lower(substr(ename,1,1)))from emp; 案例9.以首字母为大写的方式显示所有员工的姓名。 Select replace(ename,substr(ename,2,length(ename)-1),lower(substr(ename,2,length(ename) -1)))from emp; 二:数学函数:(在财务中用的比较多) ronud(sal)用于四舍五默认取整; ronud(sal,1)用于四舍五留一位小数。 trunc(sal)取整,忽略小数。截去小数部分。 trunc(sal,1)截取;小数点留一位,之后的右边的省去。 trunc(sal,-1)截取;只留整数,个位数取零。 floor(sal)向下最接近取整;比如1.1值为1.

oracle数据库索引的理解与总结

索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。 例如这样一个查询:SELECT * FROM TABLE1 WHERE ID = 44。如果没有索引,必须遍历整个表,直到ID等于44的这一行被找到为止;有了索引之后(必须是在ID这一列上建立的索引),直接在索引里面找44(也就是在ID这一列找),就可以得知这一行的位置,也就是找到了这一行。可见,索引是用来定位的。 建立索引的目的是加快对表中记录的查找或排序。为表设置索引要付出代价的:一是增加了数据库的存储空间,二是在插入和修改数据时要花费较多的时间(因为索引也要随之变动)。 虽然建立索引能加快对表中记录的查询或者排序速度,但是并不是索引建得越多越好,这就需要我们了解使用索引过程中,索引的一些优点以及缺陷: 使用索引的好处: 创建索引可以大大提高系统的性能: 第一,通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。 第二,可以大大加快数据的检索速度,这也是创建索引的最主要的原因。 第三,可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义。 第四,在使用分组和排序子句进行数据检索时,同样可以显著减少查询中分组和排序的时间。 第五,通过使用索引,可以在查询的过程中,使用优化隐藏器,提高系统的性能。使用索引的一些不足: 第一,创建索引和维护索引要耗费时间,这种时间随着数据量的增加而增加。第二,索引需要占物理空间,除了数据表占数据空间之外,每一个索引还要占一定的物理空间,如果要建立聚簇索引,那么需要的空间就会更大。 第三,当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,这样就降低了数据的维护速度。 索引是建立在数据库表中的某些列的上面。在创建索引的时候,应该考虑在哪些列上可以创建索引,在哪些列上不能创建索引。一般来说,应该在这些列上创建索引: ?在经常需要搜索的列上,可以加快搜索的速度;在作为主键的列上,强制该列的唯一性和组织表中数据的排列结构; ?在经常用在连接的列上,这些列主要是一些外键,可以加快连接的速度; ?在经常需要根据范围进行搜索的列上创建索引,因为索引已经排序,其指定的范围是连续的; ?在经常需要排序的列上创建索引,因为索引已经排序,这样查询可以利用索引的排序,加快排序查询时间; ?在经常使用在WHERE子句中的列上面创建索引,加快条件的判断速度。 同样,对于有些列不应该创建索引。一般来说,不应该创建索引的的这些列具有下列特点: ?对于那些在查询中很少使用或者参考的列不应该创建索引。这是因为,既然这些列很少使用到,因此有索引或者无索引,并不能提高查询速度。相反,由于增加了索引,反而降低了系统的维护速度和增大了空间需求。 ?对于那些只有很少数据值的列也不应该增加索引。这是因为,由于这些列的取值很少,例如人事表的性别列,在查询的结果中,结果集的数据行占了

实验1 ORACLE基本操作-使用SQL DEVELOPER

实验1 ORACLE 基本操作 实验目的:掌握ORACLE的连接,了解ORACLE的数据库结构;熟悉PLSQL/Developer图形化管理工具的使用。 实验内容: 一、机房环境的准备工作(每次重新启动机器后必做的工作) 为了能启动ORACLE并利用图形化的管理工具PLSQL/Developer对ORACLE数据库进行操作,在机房的机器中要先做如下的准备工作: 1、查看自己的机器名 方法:右击“我的电脑”→“属性”,找到并记住自己的计算机名 2、修改监听程序 方法:“开始”→“所有程序”→“Oracle-OraDb11g_home1”→“配置和移植工具”→“Net Manager”,在弹出的窗口中展开目录至最后的“LISTENER”,在右侧的窗口中将主机名改成自己的主机名→单击窗口右上角的红色叉号按钮关闭→在弹出的对话框中选择“保存”。

3、启动服务 右击“我的电脑”→“管理”→“服务和应用程序”→“服务” 找到并按顺序启动如下两个服务: 。 启动顺序:先启动,再启动 启动方法:右击服务名选择“启动” 注:当在自己的机器上使用时,这两个服务若显示已启动则不用重新再启动。 二、运行SQL Developer,建立与ORACLE数据库的连接 1、运行Oracle自带的SQL Developer软件 方法:“开始”→“所有程序”→“Oracle-OraDb11g_home1”→“应用程序开发”→“SQL Developer” 2、以system用户建立与数据库的连接 在SQL Developer窗口中选中“连接”→点击“新建”按钮,

在窗口中输入以下信息,使其以system用户与数据库进行连接 注: 连接名:可以随便起 用户名:system,若以其他用户身份登录,可以在这里更改用户名 密码:123456 SID:orcl 点击“测试”按钮,若成功则在左下角显示“状态:成功”,若有错误,则会出现红色的提示信息,按信息进行问题查找。 最后点击“连接”按钮进行连接

全文检索系统整体方案

1全文检索系统方案 1.1全文检索需求 1)系统提供模糊检索、分类搜索、高级复合搜索、全文检索、图片内容 检索、跨库检索等多种检索途径; 2)支持字索引和词索引; 3)检索条件具有完整的关键词布尔逻辑运算AND、OR、NOT能力,支持 复合式布尔逻辑运算查询,并且可以配合多组左括号"("与右括号")"作 关键词查询优先级的设置; 4)提供用户多次递进查询的功能,用户可根据上一次查询关键词得到的 检索结果集,增加查询关键词与缩小搜索日期范围,而得到更准确的 查询结果集; 5)能够支持对以上文件中的中文(简体/繁体)、英文、日语、韩语内容 实现关键字检索; 6)支持对Word、TXT、PDF等多种主流文档格式全文检索,并提供开发 接口以支持特殊文档格式的全文检索; 7)在数据源数据发生更新时,能在索引库中反映出来,保证搜索的信息 为最新,即支持增量索引机制; 8)用户可自行设定时间,让系统自动定时进行更新索引; 9)对于百万级记录数的搜索以及结合模糊搜索等查询方式,搜索时间不 得超过10秒; 10)提供跨数据源、数据格式的搜索;

11)同过相关性搜索,能够把和搜索条件相关联的信息搜索出来; 12)不但能够对图片的描述信息进行搜索,还能对图片内容的检索; 13)提供COM与SOAP的搜索接口(Interface) 可让其它应用程序或查询网 页能够提供用户查询入口和查询结果的呈现,用户可通过应用程序或 浏览器访问全文检索服务器,提交查询条件,可在浏览器中查看检索 结果; 14)查询结果集中应包含结果集总数、命中的结果文件的完整路径,以及 符合关键词出现的内容片断; 15)在搜索结果集中,关键词应被标识出来,用特殊的字体及颜色和其他 文字进行区别,查询者可在查询结果片断中一目了然的看到关键词出 现的位置; 16)查询结果可按照关键词命中次数,命中结果文件的修改时间,大小等 条件进行排序; 17)可提供用户对检索命中结果文件在索引库中进行标记,从而再次检索 时,不在标记过的文件中进行查询; 1.2全文检索系统总体方案 系统将采用以下全文检索流程。

oracle常用命令大全和环境变量路径

Oracle 命令大全 底部为环境变量配置路径。 1 运行SQLPLUS工具 sqlplus 2 以OS的默认身份连接 / as sysdba 3 显示当前用户名 show user 4 直接进入SQLPLUS命令提示符 sqlplus /nolog 5 在命令提示符以OS身份连接 connect / as sysdba 6 以SYSTEM的身份连接 connect system/xxxxxxx@服务名 7 显示当然用户有哪些表 select * from tab; 8 显示有用户名和帐户的状态 select username,account_status from dba_users; 9 将SCOTT帐号解锁(加锁) alter user scott account unlock(lock); 10 以SCOTT的身份连接并且查看所属表 connect scott/tiger select * from tab; 11 查看EMP的表结构及记录内容 desc emp select empno,ename from emp; 12 以OS的身份登看SGA,共享池,CACHE的信息 connect / as sysdba show sga select name,value/1024/1024 from v$sga; show parameter shared_pool_size select value/1024/1024 from v$parameter where name ='shared_pool_size';

show parameter db_cache_size select value/1024/1024 from v$parameter where name ='db_cache_size'; 13 查看所有含有SIZE的信息 show parameter size bitmap_merge_area_size integer 1048576 create_bitmap_area_size integer 8388608 db_16k_cache_size big integer 0 db_2k_cache_size big integer 0 db_32k_cache_size big integer 0 db_4k_cache_size big integer 0 db_8k_cache_size big integer 0 db_block_size integer 4096 db_cache_size big integer 33554432 db_keep_cache_size big integer 0 db_recycle_cache_size big integer 0 NAME TYPE V ALUE ------------------------------------ ----------- ------------- global_context_pool_size string hash_area_size integer 1048576 java_max_sessionspace_size integer 0 java_pool_size big integer 33554432 large_pool_size big integer 8388608 max_dump_file_size string UNLIMITED object_cache_max_size_percent integer 10 object_cache_optimal_size integer 102400 olap_page_pool_size integer 33554432 oracle_trace_collection_size integer 5242880 parallel_execution_message_size integer 2148 NAME TYPE V ALUE ------------------------------------ ----------- ------------- sga_max_size big integer 143727516 shared_pool_reserved_size big integer 2516582 shared_pool_size big integer 50331648 sort_area_retained_size integer 0 sort_area_size integer 524288 workarea_size_policy string AUTO 14 显示SGA的信息 select * from v$sgastat; POOL NAME BYTES

Oracle查询语句基本命令一

oracle查询语句大全--基本命令大全一 1.create user username identified by password;//建用户名和密码oracle ,oracle 2.grant connect,resource,dba to username;//授权grant connect,resource,dba,sysdba to username; 3.connect username/password//进入。 4.select table_name,column_name from user_tab_columns where table_name='mview_log';//查询表中的表名,字段名等等。 5. 如何执行脚本SQL文件? SQL>@PATH/filename.sql; 6.Oracle oledb 提供者在command中执行多条SQL语句与SQL SERVER有少许差别,SQL Server只需使用";"分割多条SQL语句,而Oracle需要遵守ORACLE调用规范,即除分号分割外,还需以begin /end;包围语句体. 使用C#描述应如下所示: https://www.wendangku.net/doc/9117754395.html,mandText = "begin INSERT INTO GROUP_INFO (GROUP_ID, GROUP_NAME) V ALUES (1, \'2\'); INSERT INTO GROUP_INFO(GROUP_ID, GROUP_NAME) V ALUES (2, \'2\'); end;"; 7.查询用户下的表的信息select distinct table_name from user_tab_columns; 8.如何搜索出前N条记录?Select a.*,rownum from (select * from cardkind order by cardkind ) a where rownum show user 3、查看系统拥有哪些用户SQL> select * from all_users; 4、新建用户并授权 SQL> create user a identified by a;(默认建在SYSTEM表空间下) SQL> grant connect,resource to a; 5、连接到新用户SQL> conn a/a

全文检索在知识库系统中的应用

Oracle 全文检索技术在呼叫中心知识库中的应用 知识库作为信息咨询的一个重要功能,为客户电话咨询提供信息来源。在实际应用中,客户服务中心会承担业务咨询等业务。这些业务要求坐席人员能快速、正确地判断及解答问题。 【详细介绍:https://www.wendangku.net/doc/9117754395.html,/s/blog_b3b956ae0101duq3.html)。 在知识库的使用过程中,我们希望能在最短的时间找到所需的知识。如果系统响应时间长或者查询的结果不理想,那知识库库使用的效率将为大大折扣。亿伦公司研发的infoKM知识库系统使用了oracle全文检索解决了以上问题。本文将详细介绍oracle全文检索技术在infoKM的应用。 一,Oracle 全文检索技术 Oracle实现全文检索的的组件在Oracle9i中称为Oracle Text, Oracle Text 支持Oracle数据库所支持的大多数语言(包括中文)的基本全文搜索功能. 不使用全文所有功能,也有其他办法Oracle数据库中搜索文本,比如INSTR函数和LIKE操作,但是对海量的文本数据进行搜索时将导致全表扫描,会非常消耗资源. 创建全文索引的步骤: 1,检查数据库中是否有ctxsys用户和ctxapp角色.默认安装情况下,ctxsys用户是被锁定的,因此要先解锁ctxsys的用户 2,给指定用户授权(用ctxsys用户登录), 授权语句:grant execute on ctx_ddl to infocrm_rep. 3,建立一个preference,设置词法分析器(lexer).(ctxsys登录) exec ctx_ddl.create_preference ('my_lexerrep',

ORACLE财务软件简明操作

ORACLE财务软件简明操作文档文档更新时间:2011-11-1 更新人员:白逸痕 目录

1、 Oracle 财务系统使用操作 注:初始化仅在初次使用时操作 点击电脑桌面“农村财务系统”图标,出现系统登陆界面(图1),点击“确认”。进入财务 系统。 说明:MANAGER 为管理员帐号,默认无密码。 A 、以系统管理员的身份进入,根据需要建立帐套,建立操作人员分配权限,并分配帐套权限,同时设置操作员密码。 1、 建立操作员,分配权限 2、 选择工具栏中“工具”一项下的“操作员设置”一项(图1)。点击增加,可以增加操作员。例如:张三、李四。选中“张三”,再选中右边框中的“凭证处理”一项,按“enter 回车”键,可以完成权限分配的设置。输入法处可以设置用户常用输入法。(图2) 基本流程:凭证填制 ---凭证审核 ---凭证记账 ---期末结转 ---查操作员就是登陆帐号,账套就是村账套,

图1 图2 说明:“红√”即有此权限,如需取消,选中按空格键即可。 3、分配帐套权限 4、点击“工具”下的设置帐套权限,再单击“修改”,选中右边的帐套即可。此功能可用作不同用户分配不同村组之用。

注:打勾说明此账套有权限控制,另外账套权限设置完成后要点击存盘 5、密码设置 用管理员账户(MANAGER)登陆后,选择相应的用户,先输入原密码(默认为空),再输入新密码,确认即可。 B、设置帐套启用时间以及科目编码结构。(每个帐套都要单独做此步骤。) 点击系统设置,再点击“系统参数设置”,设置启用时间和科目编码结构(一般是总账科目编码位数3,以下每级编码位数3),会计主管处填写站长名字即可。注意:如果勾选了凭证需审核才能记账,那么凭证必须审核才能记账。 C、编写会计科目以及辅助核算科目 点击“会计科目设置”(图1),填写相应内容(图2)确定。再以同样的方法填写其他的科目。

Oracle常用数据字典的查询使用方法

查看当前用户的缺省表空间 1. SQL>select username,default_tablespace from user_users; 查看当前用户的角色 1. SQL>select * from user_role_privs; 查看当前用户的系统权限和表级权限 1. SQL>select * from user_sys_privs; 2. SQL>select * from user_tab_privs; 查看用户下所有的表 1. SQL>select * from user_tables; 显示用户信息(所属表空间) 1. select default_tablespace,temporary_tablespace 2. from dba_users where username='GAME'; 1、用户 查看当前用户的缺省表空间 1. SQL>select username,default_tablespace from user_users; 查看当前用户的角色 1. SQL>select * from user_role_privs; 查看当前用户的系统权限和表级权限 1. SQL>select * from user_sys_privs;

2. SQL>select * from user_tab_privs; 显示当前会话所具有的权限 1. SQL>select * from session_privs; 显示指定用户所具有的系统权限 1. SQL>select * from dba_sys_privs where grantee='GAME'; 显示特权用户 1. select * from v$pwfile_users; 显示用户信息(所属表空间) 1. select default_tablespace,temporary_tablespace 2. from dba_users where username='GAME'; 显示用户的PROFILE 1. select profile from dba_users where username='GAME'; 2、表 查看用户下所有的表 1. SQL>select * from user_tables; 查看名称包含log字符的表 1. SQL>select object_name,object_id from user_objects

oracle9i常用操作

ORACLE9I日常操作 获取数据库日期 select sysdate from dual; 一、ORACLE的启动和关闭 1、在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a、启动ORACLE系统 oracle>svrmgrl SVRMGR>connect internal SVRMGR>startup SVRMGR>quit b、关闭ORACLE系统 oracle>svrmgrl SVRMGR>connect internal SVRMGR>shutdown SVRMGR>quit 启动oracle9i数据库命令: $ sqlplus /nolog SQL*Plus: Release 9.2.0.1.0 - Production on Fri Oct 31 13:53:53 2003 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. SQL> connect / as sysdba Connected to an idle instance. SQL> startup^C SQL> startup ORACLE instance started. 2、在双机环境下 要想启动或关闭ORACLE系统必须首先切换到root用户,如下 su -root a、启动ORACLE系统 hareg -y oracle b、关闭ORACLE系统 hareg -n oracle Oracle数据库有哪几种启动方式 说明: 有以下几种启动方式: 1、startup nomount 非安装启动,这种方式启动下可执行:重建控制文件、重建数据库 读取init.ora文件,启动instance,即启动SGA和后台进程,这种启动只需要init.ora文件。

整合全文检索系统解决方案

用友知识管理检索系统解决方案 维思比科技(北京)有限公司 2010年4月20日

目录 (一)现状及总体目标 (1) 1.1、背景介绍 (1) 1.2、现状 (1) 1.3、总体目标 (1) 1.4 总体设计 (2) 1.4.1 系统结构图 (3) 1.4.2信息采集工作原理 (3) 1.4.2.1 数据采集 (3) 1.4.2.2 数据分析 (5) 1.4.2.3 数据写入 (5) (二)功能及界面设计 (5) 2.1整合搜索 (6) 2.1.1拼音提示.............................................................................. 错误!未定义书签。 2.1.2拼音纠错 (7) 2.1.3 相关推荐 (7) 2.1.4 多维度智能导航 (7) 2.1.5 二次检索 (7) 2.1.6 精确查询与模糊查询 (7) 2.1.7多维度排序 (7) 2.2 硬件配置 (7) 2.7.1 服务器配置 (7) 2.7.2 网络带宽配置 (8) 2.7.3 软件配置 (8) (三)开发进度安排 (8) 3.1 实施流程 (8) 3.2 实施进度 (8) (四)投资概算 (9) 4.1 软件产品 (9) 4.2 定制开发 (9) 4.3 培训费用 (9) 4.4 总体预算 (9) (五)运行维护和培训 (12) 5.1 维护 (10) 5.2 培训 (11) 5.2.1.培训人员 (11) 5.2.2.培训目标 (12) 5.2.3. 培训内容 (12) 5.2.4. 培训方式 (12) 5.2.5. 培训时间 (12) (六) 附录 (13)

oracle查询语句大全

oracle查询语句大全oracle 基本命令大全一 1.create user username identified by password;//建用户名和密码oracle ,oracle 2.grant connect,resource,dba to username;//授权grant connect,resource,dba,sysdba to username; 3.connect username/password//进入。 4.select table_name,column_name from user_tab_columns where table_name='mview_log';//查询表中的表名,字段名等等。 5. 如何执行脚本SQL文件? SQL>@PA TH/filename.sql; 6.Oracle oledb 提供者在command中执行多条SQL语句与SQL SERVER有少许差别,SQL Server只需使用";"分割多条SQL语句,而Oracle需要遵守ORACLE调用规范,即除分号分割外,还需以begin /end;包围语句体. 使用C#描述应如下所示: https://www.wendangku.net/doc/9117754395.html,mandText = "begin INSERT INTO GROUP_INFO (GROUP_ID, GROUP_NAME) V ALUES (1, \'2\'); INSERT INTO GROUP_INFO(GROUP_ID, GROUP_NAME) V ALUES (2, \'2\'); end;"; 7.查询用户下的所有表select distinct table_name from user_tab_columns; 8.如何搜索出前N条记录?Select a.*,rownum from (select * from cardkind order by cardkind ) a where rownum show user 3、查看系统拥有哪些用户 SQL> select * from all_users; 4、新建用户并授权 SQL> create user a identified by a;(默认建在SYSTEM表空间下)

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

1. select * from table_name where rownum>begin and rownum< end 2.sql = "select * from table" con.prepareCall("SELECT * FROM(SELECT A.*, rownum r FROM("+sql+") A WHERE rownum <= "+intPage*intPageSize+") B WHERE r > "+(intPage-1) *intPageSize); 今天想查询一下Oracle数据库下所有的表名或某个用户下的所有表,半天没想起来.还是在网上找到了答案. select table_name from all_tables;//所有的表明 select table_name from user_all_tables;//用户的所有的表 一下是转贴的sql语句的帖子. select * from user_objects; //查询所有的表 select * from dba_tables; //查询所有的表 select * from all_tables; //查询所有的表 select * from user_users //查出一个用户 select * from all_users //查询所有用户 select * from dba_users //查询所有用户 select name,dbid from v$database; //查询数据库名和它的ID select * from https://www.wendangku.net/doc/9117754395.html,er_tab_columns; //查询表名,并显示列名 describe 表名//查询表结构 select * from https://www.wendangku.net/doc/9117754395.html,er_tab_columns where table_name=表名//查询指定表名的字段 2: 查询数据库参数 show parameter db;

史上最全Oracle数据库基本操作练习题(含答案)

Oracle基本操作练习题 使用表: 员工表(emp): (empno NUMBER (4)notnull,--员工编号,表示唯一 ename VARCHAR2 (10),--员工姓名 job VARCHAR2 (9),--员工工作职位 mgr NUMBER (4),--员工上级领导编号 hiredate DATE,--员工入职日期 salNUMBER (7,2),--员工薪水 comm NUMBER (7,2),--员工奖金 dept no NUMBER (2)—员工部门编号 ) 部门表(dept): (deptno NUMBER (2)notnull,--部门编号 dname VARCHAR2 (14),--部门名称 locVARCHAR2 (13)—部门地址 ) 说明:增删改较简单,这些练习都是针对数据查询,查询主要用到函数、运算符、模糊查询、排序、分组、多变关联、子查询、分页查询等。

建表脚本(根据需要使用): 建表脚本.tx t 练习题: 1. 找出奖金高于薪水60%的员工信息。 SELECT * FROM emp WHERE comm>sal*0.6; 2. 找出部门10中所有经理(MANAGER )和部门20中所有办事员(CLERK)的详细资料。 SELECT * FROM emp WHERE (JOB二'MANAGER' AND DEPTNO=10) OR (JOB二'CLERK' AND DEPTNO=20); 3. 统计各部门的薪水总和。 SELECT dept no,SUM(sal) FROM emp GROUP BY dept no; 4. 找出部门10中所有理(MANAGER ),部门20中所有办事员(CLERK)以及既不是经理又不是办事员但其薪水大于或等 2000的所有员工的详细资料。 SELECT * FROM emp WHERE (JOB二'MANAGER' AND DEPTNO=10) OR (JOB 二'CLERK' AND DEPTNO=20) OR (JOB NOT IN('MANAGER','CLERK') AND

全文检索系统整体方案

1全文检索系统方案 1.1 全文检索需求 1)系统提供模糊检索、分类搜索、高级复合搜索、全文检索、图片内容检 索、跨库检索等多种检索途径; 2)支持字索引和词索引; 3)检索条件具有完整的关键词布尔逻辑运算AND、OR、NOT能力,支持复 合式布尔逻辑运算查询,并且可以配合多组左括号"("与右括号")"作关 键词查询优先级的设置; 4)提供用户多次递进查询的功能,用户可根据上一次查询关键词得到的检 索结果集,增加查询关键词与缩小搜索日期范围,而得到更准确的查询 结果集; 5)能够支持对以上文件中的中文(简体/繁体)、英文、日语、韩语内容实 现关键字检索; 6)支持对Word、TXT、PDF等多种主流文档格式全文检索,并提供开发接 口以支持特殊文档格式的全文检索; 7)在数据源数据发生更新时,能在索引库中反映出来,保证搜索的信息为 最新,即支持增量索引机制; 8)用户可自行设定时间,让系统自动定时进行更新索引; 9)对于百万级记录数的搜索以及结合模糊搜索等查询方式,搜索时间不得 超过10秒; 10)提供跨数据源、数据格式的搜索; 11)同过相关性搜索,能够把和搜索条件相关联的信息搜索出来; 12)不但能够对图片的描述信息进行搜索,还能对图片内容的检索; 13)提供COM与SOAP的搜索接口(Interface) 可让其它应用程序或查询网页 能够提供用户查询入口和查询结果的呈现,用户可通过应用程序或浏览 器访问全文检索服务器,提交查询条件,可在浏览器中查看检索结果; 14)查询结果集中应包含结果集总数、命中的结果文件的完整路径,以及符 合关键词出现的内容片断; 15)在搜索结果集中,关键词应被标识出来,用特殊的字体及颜色和其他文 字进行区别,查询者可在查询结果片断中一目了然的看到关键词出现的 位置; 16)查询结果可按照关键词命中次数,命中结果文件的修改时间,大小等条 件进行排序; 17)可提供用户对检索命中结果文件在索引库中进行标记,从而再次检索 时,不在标记过的文件中进行查询;

实验1 ORACLE基本操作-使用SQL PLUS

实验1 ORACLE 基本操作-使用SQL PLUS 实验目的:掌握ORACLE的连接,了解ORACLE的数据库结构;熟悉SQL plus 命令行工具的使用。 实验内容: 一、机房环境的准备工作(每次重新启动机器后必做的工作) 为了能启动ORACLE并利用图形化的管理工具PLSQL/Developer对ORACLE数据库进行操作,在机房的机器中要先做如下的准备工作: 1、查看自己的机器名 方法:右击“我的电脑”→“属性”,找到并记住自己的计算机名 2、修改监听程序 方法:“开始”→“所有程序”→“Oracle-OraDb11g_home1”→“配置和移植工具”→“Net Manager”,在弹出的窗口中展开目录至最后的“LISTENER”,在右侧的窗口中将主机名改成自己的主机名→单击窗口右上角的红色叉号按钮关闭→在弹出的对话框中选择“保存”。

3、启动服务 右击“我的电脑”→“管理”→“服务和应用程序”→“服务” 找到并按顺序启动如下两个服务: 。 启动顺序:先启动,再启动 启动方法:右击服务名选择“启动” 注:当在自己的机器上使用时,这两个服务若显示已启动则不用重新再启动。 二、运行SQL Plus,建立与ORACLE数据库的连接 1.启动SQL Plus 方法:“开始”→“所有程序”→“Oracle-OraDb11g_home1”→“应用程序开发”→“SQL Plus” 2、以system用户建立与数据库的连接 在SQL Plus窗口中输入用户名为system,回车,输入口令是123456,回车。 注:输入的口令是不显示的。

若出现以下信息和SQL> 提示符,则表示已连接上。 三、SQL Plus命令窗口中命令的书写规则 (1)命令中的命令动词和关键字不区分大小写,只有字符串内部的字符区分大小写 (2)命令均以分号;结束 (3)所有的标点符号都是英文的标点 (4)命令的执行:输完命令后以分号结束,并按回车来运行该命令 (5)若想重复执行以前的输入的某个命令,则按:↑键上翻并显示以前输入的命令。 例1:对SCOTT用户解锁 在SQL>提示符后面输入以下命令来实现对用户SCOTT解锁。若出现“用户已更改”则表明修改成功。Scott用户的密码是本命令中设置的Orcl123456。 四、建立与断开与数据库的连接 1. 断开当前用户与数据库的连接 命令格式:disconnect 或disconn 例2:断开当前用户system 与数据库的连接

相关文档
相关文档 最新文档