使用的数据库是Oracle 10.2.0.1.0
目前主流的数据库包括:
微软: SQLServer,Access
瑞典MySQL: AB公司MySQL
IBM公司: DB2
IBM公司: Informix
美国Sybase公司: Sybase
美国甲骨文公司: Oracle
数据库之间的比较
Oracle的认证
Oracle中有默认的2个用户一个是Sys另外一个是System
Sys:是超级用户,具有最高权限,具有SYSDBA角色,有创建数据库的权限
System:是操作管理员,具有SYSOPER角色,没有创建数据库的权限
Oracle的卸载
软件环境:
1、Windows XP + Oracle 10g
2、Oracle安装路径为:d:\Oracle
实现方法:
1、开始->设置->控制面板->管理工具->服务停止所有Oracle服务.
2、开始->程序->Oracle – OraDb10g_home1>Oracle Installation Products-> Universal Installer 卸装所有Oracle产品,但Universal Installer本身不能被删除;
3、运行regedit,选择HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE,按del键删除这个入口.
4、运行regedit,选择HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services,滚动这个列表,删除所有Oracle入口.
5、运行refedit,选择HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application,删除所有Oracle入口.
6、开始->设置->控制面板->系统->高级->环境变量,删除环境变量CLASSPATH和PATH中有关Oracle的设定.
7、从桌面上、STARTUP(启动)组、程序菜单中,删除所有有关Oracle的组和图标.
8、删除c:\Program Files\Oracle目录.
9、重新启动计算机,重起后才能完全删除Oracle所在目录.
10、删除与Oracle有关的文件,选择Oracle所在的缺省目录C:\Oracle,删除这个入口目录及所有子目录,并从Windows XP目录(一般为d:\WINDOWS)下删除以下文件ORACLE.INI、oradim73.INI、oradim80.INI、oraodbc.ini等等.
11、WIN.INI文件中若有[ORACLE]的标记段,删除该段.
12、如有必要,删除所有Oracle相关的ODBC的DSN.
13、到事件查看器中,删除Oracle相关的日志 说明:如果有个别DLL文件无法删除的情况,则不用理会,重新启动,开始新的安装,安装时,选择一个新的目录,则安装完毕并重新启动后,原来的目录及文件就可以删除掉了
Oracle系统命令
1、连接数据库
2、显示当前用户
3、修改密码
4、退出
5、运行sql脚本
6、编辑sql脚本
7、将指定查询内容输出到指定文件中去
把emp表中的数据放在d:\test.sql这个文件中
Oracle用户管理
切换用户
创建用户
修改别人密码
删除用户(自己删除自己不可以)
如果要删除用户,并且同时要删除用户所创建在表,那么就需要在删除时带一个参数cascade;
角色管理权限
受理连接数据库权限(connect)给一个用户
授权username查询emp权限
授权username对emp所有权限
权限传递
如果是对象权限,权限在传递就在后面加with grant option
如果是系统权限,权限在传递就在后面加with admin option 这使username可以把select权限传递给其他人
收回username在我的emp表上在select权限
profile规则
账户锁定
指定账户登陆最多可以输入密码在次数,也可以指定用户锁定在时间(天)一般用dba在身份去执行该命令
把锁lock_account给scott.如果用户连续输入3次错误密码,那么你就被锁定2天,2天后才能登陆
把profile文件删除
表管理
char 与varchar2的区别
char定长 varchar2不定长.char查询效率快浪费硬盘空间,varchar2查询慢节省空间
存图片使用blob数据类型
向表里面添加一个字段
修改字段长度
修改字段的类型或名字(在这列没有数据的情况下才能修改)
删除一个字段
修改表名
Oracle中默认的时间格式是dd-mm-yyyy,而且插入时间mm必须带一个"月",也就是说insert into test(testTime)
values('01-5月-09');
可以使用nls_date_format来改变Oracle默认的日期格式
设置查询时间点
nvl()函数
nvl(num,0)
%表示任意字符
_表示一个字符
查询比deptno=30所有人工资都高的人
查询比deptno=30任何人工资都高的人
目前主流的数据库包括:
微软: SQLServer,Access
瑞典MySQL: AB公司MySQL
IBM公司: DB2
IBM公司: Informix
美国Sybase公司: Sybase
美国甲骨文公司: Oracle
数据库之间的比较
Oracle的认证
Oracle中有默认的2个用户一个是Sys另外一个是System
Sys:是超级用户,具有最高权限,具有SYSDBA角色,有创建数据库的权限
System:是操作管理员,具有SYSOPER角色,没有创建数据库的权限
Oracle的卸载
软件环境:
1、Windows XP + Oracle 10g
2、Oracle安装路径为:d:\Oracle
实现方法:
1、开始->设置->控制面板->管理工具->服务停止所有Oracle服务.
2、开始->程序->Oracle – OraDb10g_home1>Oracle Installation Products-> Universal Installer 卸装所有Oracle产品,但Universal Installer本身不能被删除;
3、运行regedit,选择HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE,按del键删除这个入口.
4、运行regedit,选择HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services,滚动这个列表,删除所有Oracle入口.
5、运行refedit,选择HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application,删除所有Oracle入口.
6、开始->设置->控制面板->系统->高级->环境变量,删除环境变量CLASSPATH和PATH中有关Oracle的设定.
7、从桌面上、STARTUP(启动)组、程序菜单中,删除所有有关Oracle的组和图标.
8、删除c:\Program Files\Oracle目录.
9、重新启动计算机,重起后才能完全删除Oracle所在目录.
10、删除与Oracle有关的文件,选择Oracle所在的缺省目录C:\Oracle,删除这个入口目录及所有子目录,并从Windows XP目录(一般为d:\WINDOWS)下删除以下文件ORACLE.INI、oradim73.INI、oradim80.INI、oraodbc.ini等等.
11、WIN.INI文件中若有[ORACLE]的标记段,删除该段.
12、如有必要,删除所有Oracle相关的ODBC的DSN.
13、到事件查看器中,删除Oracle相关的日志 说明:如果有个别DLL文件无法删除的情况,则不用理会,重新启动,开始新的安装,安装时,选择一个新的目录,则安装完毕并重新启动后,原来的目录及文件就可以删除掉了
Oracle系统命令
1、连接数据库
- SQL> conn 用户名/密码@网络服务名SID [ as sysdba/sysoper] 当用特权用户身份连接的时,必须带上 as sysdba或者 as sysoper
2、显示当前用户
- SQL> show user ;
3、修改密码
- 管理员自己修改密码: passw 管理员修改其他用户密码: passw 用户名
4、退出
- SQL> exit;
5、运行sql脚本
- SQL> start c:\test.sql;或者SQL> @ c:\test.sql;
6、编辑sql脚本
- SQL> edit c:\test.sql;
7、将指定查询内容输出到指定文件中去
把emp表中的数据放在d:\test.sql这个文件中
- SQL> spool d:\test.sql;
- SQL> select * from emp;
- SQL> sppool off ;
Oracle用户管理
切换用户
- SQL> conn system/manager
创建用户
- SQL> create user 用户名 identified by 密码
修改别人密码
- SQL> password 用户名
- SQL> alter user 用户名 identified by 新密码
删除用户(自己删除自己不可以)
如果要删除用户,并且同时要删除用户所创建在表,那么就需要在删除时带一个参数cascade;
- SQL> drop user 用户名 [ cascade ]
角色管理权限
受理连接数据库权限(connect)给一个用户
- SQL> grant connect to 用户名
授权username查询emp权限
- SQL> grant select on emp to username
- SQL> grant insert on emp to username
- SQL> grant update on emp to username
- SQL> grant delete on emp to username
授权username对emp所有权限
- SQL> grant all on emp to username
权限传递
如果是对象权限,权限在传递就在后面加with grant option
- SQL> grant select on emp to username with grant option
如果是系统权限,权限在传递就在后面加with admin option 这使username可以把select权限传递给其他人
- SQL> grant connect on emp to username with admin option
收回username在我的emp表上在select权限
- SQL> revoke select on emp from username
profile规则
账户锁定
指定账户登陆最多可以输入密码在次数,也可以指定用户锁定在时间(天)一般用dba在身份去执行该命令
- SQL> create profile lock_account limit failed_login_attempts 3 password_lock_time 2;
- lock_account:名称随便取名
- 3:最多输入3次密码
- 2:锁定2天
- 其他的都是关键字
把锁lock_account给scott.如果用户连续输入3次错误密码,那么你就被锁定2天,2天后才能登陆
- SQL> alter user scott profile lock_account;
把profile文件删除
- SQL> drop profile profilename cascade
表管理
char 与varchar2的区别
char定长 varchar2不定长.char查询效率快浪费硬盘空间,varchar2查询慢节省空间
存图片使用blob数据类型
向表里面添加一个字段
- SQL> alter table tablename add (columnName varchar2(10));
修改字段长度
- SQL> alter table tablename modify (columnName varchar2(30));
修改字段的类型或名字(在这列没有数据的情况下才能修改)
- SQL> alter table tablename modify (columnName varchar2(20));
删除一个字段
- SQL> alter table tablename drop column columnName;
修改表名
- SQL> rename tablename to newtablename;
Oracle中默认的时间格式是dd-mm-yyyy,而且插入时间mm必须带一个"月",也就是说insert into test(testTime)
values('01-5月-09');
可以使用nls_date_format来改变Oracle默认的日期格式
- SQL> alter session set nls_date_format= 'yyyy-mm-dd' set timing on ;
设置查询时间点
- set timing on ;
nvl()函数
nvl(num,0)
- 如果num为空,那么把0赋值给num
%表示任意字符
_表示一个字符
查询比deptno=30所有人工资都高的人
- SQL> select * from emp where sal> all ( select sal from emp where deptno=30)
查询比deptno=30任何人工资都高的人
- SQL> select * from emp where sal> any ( color: #7f0055; fo
发表评论
评论