Browsing the archives for the oracle category

第二章:oracle中的索引

in oracle

1,索引
与表关联的可选结构
加快SQL语句的执行
减少磁盘I/O
CREATE INDEX 语句用于创建索引
在逻辑上和物理上独立于表中的数据
ORCALE自动维护索引

用一个实例讲解oracle数据库中的connect resource权限

in oracle

connect resource权限;     grant connect,resource to user;     后用户包括的权限:     CONNECT角色: –是授予最终用户的典型权利,最基本的     ALTER SESSION –修改会话     CREATE CLUSTER –建立聚簇     CREATE DATABASE LINK –建立数据库链接     CREATE SEQUENCE –建立序列     CREATE SESSION –建立会话     CREATE SYNONYM –建立同义词     CREATE VIEW –建立视图     RESOURCE角色: –是授予开发人员的     CREATE CLUSTER –建立聚簇     CREATE PROCEDURE –建立过程     CREATE SEQUENCE [...]

0 Comments

找回oracle的户名和密码

in oracle

CMD下 输入 SQLPLUS /NOLOG 然后再在出来的界面中打入 CONN /AS SYSDBA 这样就会以本地系统登录的用户为信任用户进入数据库的操作 ALTER USER SYS IDENTIFIED BY “123”; 这样就可以将SYS的密码改为123 或者改SYSTEM的密码,都一样。 这样你就可以用SYS用户随心所欲了。 另一种是新增用户: CREATE USER MaoMao IDENTIFIED BY “123″; 新增MaoMao后改变她的权限就可以了,改变用户权限的命令是: GRANT ROLES TO MaoMao; 还有另一种更简便的方法,在本机CMD下 输入 SQLPLUS SYS AS Sysdba 然后要求输密码时按Enter即可,进入后自行改密码…

0 Comments

char和varchar2的区别

in oracle

区别:
1.CHAR的长度是固定的,而VARCHAR2的长度是可以变化的, 比如,存储字符串“abc”,对于CHAR (20),表示你存储的字符将占20个字节(包括17个空字符),而同样的VARCHAR2 (20)则只占用3个字节的长度,20只是最大值,当你存储的字符小于20时,按实际长度存储。
2.CHAR的效率比VARCHAR2的效率稍高。
3.目前VARCHAR是VARCHAR2的同义词。工业标准的VARCHAR类型可以存储空字符串,但是oracle不这样做,尽管它保留以后这样做的权利。Oracle自己开发了一个数据类型VARCHAR2,这个类型不是一个标准的VARCHAR,它将在数据库中varchar列可以存储空字符串的特性改为存储NULL值。如果你想有向后兼容的能力,Oracle建议使用VARCHAR2而不是VARCHAR。

0 Comments

用PHP调用Oracle存储过程

in oracle, 网络编程

PHP程序访问数据库,完全可以使用存储过程,有人认为使用存储过程便于维护,不过仁者见仁,智者见智,在这个问题上,偶认为使用存储过程意味着必须要DBA和开发人员更紧密配合,如果其中一方更变,则显然难以维护。

但是使用存储过程至少有两个最明显的优点:速度和效率。使用存储过程的速度显然更快。
在效率上,如果应用一次需要做一系列SQL操作,则需要往返于PHP与ORACLE,不如把该应用直接放到数据库方以减少往返次数,增加效率。
但是在INTERNET应用上,速度是极度重要的,所以很有必要使用存储过程。

0 Comments

如何在Oracle 中实现类似自动增加 ID 的功能?

in oracle

我们经常在设计数据库的时候用一个系统自动分配的ID来作为我们的主键,但是在ORACLE 中没有这样的     功能,我们 可以通过采取以下的功能实现自动增加ID的功能      1.首先创建 sequence          create sequence seqmax increment by 1      2.使用方法        select seqmax.nextval ID from dual        就得到了一个ID        如果把这个语句放在 触发器中,就可以实现    和 ms sql 的自动增加ID相同的功能!

0 Comments