1、如何快速地查看scott用户或system用户中有哪些表?
在SQL Developer的代码编辑区中输入“scott.”,在点后面就出现了scott用户中的表了。在sqlplus中select * from tab;
初始化表中字段BZ为10个字节
SQL> COL BZ FORMAT a10
查询当前用户所有表 * 所有
select table_name from user_tables;
select * from tab;
查询表结构 desc XXX
查询多个表中全部数据: select * from XXX,XXX,XXX;
查询特定列 select XXX,XXX,列名 from XXX表名;
查询不重复选项
select distinct job from emp;
保留两位小数点
select empno,ename,sal*12, round(sal/30,2) from emp;
2、忘记口令的解决方法(以system用户为例,更改连接system用户的口令)
在“请输入用户名:”处输入“conn/as sysdba”
在“输入口令:”处直接按回车键
在下面出现的“SQL>”后面输入语句“alter user sys identified by 新口令”
3、oracle的服务已经开启了,但还是出现了监听错误,是因为“SID”写错了,每个数据库只有一个sid。应该改成orcl,就可以连接数据库成功了。
4、工资列sal格式化显示样式 col sal form $999,999.00
关闭工资列sal的显示样式 col sal off
5、创建表
create table XXX(
name char(10) not null primary key,
XXX);
插入数据
insert into XXX(name)
values('赵先生');
// insert into XSB(XH,XM,XB,CSSJ,ZY,ZXF,BZ)
values(081101,'王林','男',to_date('02-10-1990','dd-mm-yyyy'),'计算机',50,null);
// insert into student values(001,'王红','女',23,'二年级',90);
6、对数据库对象的修改
增加字段
alter table XXX add(XX char(3) DEFAULT xx)
alter table XSB add(PHOTO varchar2(20) DEFAULT 'nophoto.jpg');
修改表中字段
SQL> alter table XSB modify(ZY char(15));
SQL> alter table XSB modify(XB char(2) DEFAULT '默认值0/1');
改表名
SQL> alter table goods rename to GoodsInfo;
删除表中字段
alter table XXX drop column XXX;
删除多个表字段
alter table XXX drop(XXX,XXX);
删除表
drop table XXX;
delete与drop的区别:delete只能删除表字段 drop删除表字段,表结构。
筛选查询:select empno,ename,sal,comm from emp where comm is null;
伪表 daul 从伪表中获取当前日期 select sysdate from dual;
伪列 rowid
设置列名为中文 as也可以不写
select empno as "员工编码",ename as "员工名称",sal*12 as "年基本工资",sal/30 as "日基本工资"from emp;
comm奖金为null返回0加上sal工资
select ename,sal,comm,12*(sal+nvl(comm,0)) from emp;
nvl2 nvl2(exp1,exp2,exp3) exp1为null返回exp3,exp1不为空返回exp2.。
使用操作符 || 连接字符串 信息描述直接加在from前面
select '学号是:'||stuno|| '的学生姓名是:'||stuname||',成绩是:'||score 学生信息 from student;
使用函数 concat 连接字符串 concat('A','B') = 'AB'
select concat(concat(concat(concat(dname,'的部门编号是'),deptno),',位于'),loc) from dept;