Oracle Database 的学习笔记
SQL:结构化查询语言
C R U D: 增删改查
table : name age score
desc+表名 ---> 查询表结构
或者用 describe 命令 (desc是describe的简写)
查询语言:SELECT [DISTINCT] {*,column[alias],...} from table;
SELECT identifies what columns from identifies which table
******* SELECT 查什么 from 从哪里查 *******
SELECT dept_id,last_name,manager_id from s_emp;
遇到空值时可以这样操作:
SELECT last_name,title,salary*NVL(commission_pct,0)/100 COMM from s_emp;
排除查询时出现重名现象 ,用关键字 DISTINCT
eg: SELECT DISTINCT name from s_dept;
排除两个字段连合起来还有重复的现象:
eg: SELECT DISTINCT dept_id,title from s_emp;
对查询的结果进行排序用 ORDER BY;
eg: SELECT last_name "姓名",salary "工资" from s_emp ORDER BY salary;
(默认是升序排序)
eg: SELECT last_name "姓名",salary "工资" from s_emp ORDER BY salary asc;
(asc指定为升序排序)
eg: SELECT last_name "姓名",salary "工资" from s_emp ORDER BY salary desc;
(desc指定为降序排序)
总结:order by 排序
asc 升序
desc 降序
select last_name EMPLOYEE,start_date from s_emp order by EMPLOYEE desc;
(在排序的时候可以用别名当做字段[排序的根据]进行排序)--->这里是(EMPLOYEE)。
select last_name,salary*12 from s_emp order by 2;
(这里的2是用来指定字段的位置,这里指向 salary*12 ,即按员工的年薪排序)
select last_name,dept_id,salary from s_emp order by dept_id,salary desc;
(先按dept_id的升序进行排序,排完后再按salary的降序进行排序)
注:这里dept_id后没有直接指排序规则,按默认的升序排序。
WHERE关键字:
SELECT 姓名,部门ID from s_emp WHERE dept_id = 42;
(
相关文档:
Oracle将表授权给用户的命令
命令:grant xxx权限 on TableA to USERA
grant select,insert,update,delete on 表名 to 用户名
例如:将test表的查询权限赋予solidwang这个用户
grant select on test to solidwang ......
1 从现有的表中随机取记录
select * from (select st_base_id from t_base order by dbms_random.random) where rownum<=100; --这个是随机取出100个记录。
2 产生随机字符串
select dbms_random.string('u',100) from dual; --产生大写字母组成的字符串,'u'也可以写成'U'
select dbms_random.string('l',100) from ......
本文介绍了使用Pro*C/C++在Visual
C++环境下开发Oracle数据库接口程序的方法
设计思路其实这样:首先通过VC建立一个工程,自动化建立MAKEFILE,UNIX需要自己写MAKEFILE。
其次配置VC的环境,将PROC的.H,.LIB的路径加入DERECTIRY。写一个PC文件,即PROC文件。放到工程相应的目录下。然后把PC文件加入工程。使用PROCUI.E ......
1 查看oracle的版本信息
(1)用客户端连接到数据库,执行select * from v$instance
查看version项
(2)select * from product_component_version
(3)或查询V$VERSION查看组件级信息 ......