oracle学习笔记(1)


1、sql*plus常用命令
1)disc[onnect]  用来断开与当前数据库的连接
2)passw[ord]  用来修改用户的密码,如果想修改其它用户的密码,需要用sys/system登陆
3)show urser  显示当前用户名
4)exit 断开连接,同时退出
5)&  可以替代变量,而该变量在执行时,需要用户输入。
   select * from emp where job="&job"
6) eidt  可以编辑指定的sql脚本
   edit d:\a.sql
7) spool 将slq*plus 屏幕上的内容输出到指定的文件中去。
   spool d:\b.sql 并输入 spool off    
8) 设置行的大小默认80:set linesize
9) 连接命令:conn system/netjava
10)运行脚本start和&:start d:\a.sql或者& d:\a.sql
11) set timing on 显示操作所耗时间
2、用户管理
1) 创建用户(只有sys和System具有权限) create user champion identified by netjava;
2)修改密码  alter user champion  identified by "champion"

3) 删除用户 drop user champion
4) 赋予用户权限grant(角色:connect、dab、resource等,对象权限:select、update、delete、insert等)
   系统权限:grant connect to champion
   对象权限:grant select on emp to champion
             grant all on emp to champion
5)收回权限 revoke select on emp form champion
6) 权限传递
   对象权限:grant select on emp to champion with grant option
   系统权限:grant connect to champion with admin option 
7) 账户锁定: profile 管理用户口令
   创建profile 文件:create profile lock_account(可以改) limit failed_login_attempts 3(可以改) password_lock_time 2(可以改);
   给用户配置文件:alert user champion profile lock_account;
8)账户解锁:alert user champion account unlock;
9) 终止口令:定期要用户修改密码
   创建profile文件:create profile myprofile limit password_life_time 10 password_grance_time 2
   给用户配置文件:alert user champion profile myporfile
10)口令历史:密码在定期不可以重复使用
   创建profile文件:create profile myprofile limit password_life_time 10 password_grance_time 2 password_reuse 10
   给用户配置文件:alert user champion profile myporfile   
11)删除profile
   drop profile myprofile [cascade]
3、数据类型
1)字符型
   (1)char 定长 最大2000字符 如:char(10),若存放“冠军”,则前四个字符放“冠军”,
        后添6个空格,查询时间快,因为它先比较长度是否相等
   (2)varchar2(20)  变长 最大4000字符,可以节省空间
   (3)clob 字符型大对象,最大4G
2) 数字类型
   number 范围-10的-38次方至10的38次方,可以表示小数,也可以表示整数
   number(5,2)表示一个小数有5位有效数字,2位小数,范围 -999.99-999.99
   number(5) 表示一个五位整数,范围-99999-99999
3)日期类型
   (1)date 包含年月日时分秒  默认格式:‘DD-MON-YY’ ‘16-8月-89’
        修改默认的格式 alter session set nls_date_format='yyyy-mm-dd'
   (2)timestamp 对date的拓展,精度高一点,微秒级
4)图片类型
   blob 二进制数据 可以存放图/声音 4G
4、表的操作
   1)写日志与数据恢复
      设置回滚点:savepoint a
      回滚到a点: rollback to a;
   2) truncate table student;删除表中的所有记录,表结构还在,不写日志,
      无法找回删除的数据,删除速度很快。
   3)简单查询
     (1)select count(*) from student 查看表中的记录数
     (2)select distinct name from student 查询表中不重复的名字
     (3)select sal*12+nvl(comm,0)*12 from emp 如果comm为null,则用0来替代
      (4) select ename  from emp where ename like 'S%' 查找名字以S开头的员工
           % :表示任意0到多个字符,_:表示单个字符
     (5)select empno , ename from emp where empno in(200,300,400) 查找职工号为200,300,400的员工
     (6)select ename from emp where sal is null;
      (7) select * from emp order by sal; 按工资从低到高排序
      (8) select * from emp order by sal desc ;从高到低排序
      (9) select * from emp order by deptno,sal desc;
      (10)select ename , sal*12 '年薪' from emp order by '年薪';
   4) 复杂查询
     (1)常用函数:max,min,avg,sum,count
     (2) select ename , sal from emp where sal=(select max(sal) from emp);
          查询工资最高的员工姓名和工资
     (3)group by 和 having 字句
          查询每一个部门的平均工资和最高工资
          select avg(sal), max(sal),deptno from emp group by deptno;
          查询部门平均工资在2000以上的部门
          select avg(sal),max(sal), deptno from emp group by deptno having avg(sal)>2000;
     (4)分组函数只能出现在选择列表(即select 后面的)、having、order by 句子中
   5) 多表查询
      (1) select e.ename , e.sal ,d.dname from emp e, dept d where e.deptno=d.deptno and e.ename='SMITH';
      (2) select e.ename,e.sal,s.grade from emp e, salgrade s where e.sal between s.losal and s.hisal;  
      (3) 一张表查询select worker.ename , boss.ename from emp worker,emp boss where worker.mgr=boss.empno and worker.ename='FORD';
   6)子查询(嵌套查询)
      数据库在执行sql时,是从右到左
     (1)单行子查询是指只返回一行数据的子查询语句
          select e.ename  from emp e where e.deptno=(select deptno from emp where ename
     (2)多行子查询
          select * from emp where job in (select distinct job from emp e where e.deptno=10 )
          select * from emp where (deptno ,job)=(select deptno ,job from emp where ename='SMITH');
     (3)all关键字
          select * from emp  where sal >= all(select sal from emp where deptno=30);
     (4)any 关键字
          select e.ename , e.sal , e.deptno from emp e where e.sal > any ( select sal from emp where deptno = 10);
     (5)在from语句时将查询出来的数据当作一个表来看待,需要指定别名
          select * from emp e, (select deptno,avg(sal) mysal from emp group by deptno) e1 where e.deptno=e1.deptno and e.sal> e1.mysal;
  7)oracle分页,分页比较复杂,采用的是嵌套查询方式,二分法,速度比较快,但是语句比较复杂
      (1) rownum分页 (select * from emp)
      (2) 显示rownum,oracle 自动分配的
          select e.*,rownum rn from (select * from emp) e;
     (3)显示前5条数据,注意的是这里的条件rownum<5不可以写成rn<5,否则没有数据
          select e.* ,rownum rn from emp e where rownum<5;
          如果写>5成:select e.* ,rownum rn from emp e where rownum>5;
          将没有数据,要想用>条件,则必须再嵌套一个子查询
      (4) 显示第6到第10调数据,注意,最外层的条件rn>=6不可以写成rownum>=6,否则也没有数据
          select e2.*from (select e.* ,rownum rn from emp e where rownum<=10) e2 where rn>=6;
     (5)对于需要查询指定的字段时或者排序、分组等,只需要改变最里面的查询条件
          查询员工名字和薪水
          select e2.*from (select e.ename, e.sal ,rownum rn from emp e where rownum<=10) e2 where rn>=6;
   8)用查询结果创建新表
      create table mytable(id,name,sal) as select e.empno,e.ename,e.sal from emp e;       
   9)合并查询(union,union all,intersect,minus)
     (1)union 用于取得两个结果集的并集。
          select ename ,sal, job from emp where sal>2500 union select ename,sal,job from emp where job='MANAGER'
     (2)union all 用于把所有查询到的记录联合起来
          select ename ,sal, job from emp where sal>2500 union all select ename,sal,job from emp where job='MANAGER'
      (3) intersect 用于取得两个结果集的交集
          select ename ,sal, job from emp where sal>2500 intersect select ename,sal,job from emp where job='MANAGER'
     (4)minus 用于取得两个结果集的差集,只显示在第一个集合但是不在第二个集合的数据
          select ename ,sal, job from emp where sal>2500 minus select ename,sal,job from emp where job='MANAGER'
     
     
   

具身智能的建模和方法(具身智能入门一) 本文以机械臂将小红方块移动到目标位置为例对具身智能的建模和方法进行介绍,如下图所示,该例子来自https://ai-workshops.github.io/building-and-working-in-environments-for-embodied-ai-cvpr-2022/。 阅读详情

相关推荐

计算机组成原理(二)—— 数据的表示与运算

本章目录引言一、数制与编码1.1 进位计数制1.1.1 进制及转换1.1.2 真值、机器数1.2 BCD码1.3 ASCII 码1.4 校验码1.4.1 奇偶校验码1.4.2 海明码1.4.3 CRC循环冗余码二、定点数的表示和运算2.1 定点数的表示2.1.1 无符号2.1.2 有符号(原码、反码、补码、移码)2.2 定点数的运算2.2.1 移位运算2.2.2 加减运算(溢出判断)2.2.3 乘法运算2.2.4 除法运算2.3 强制类型转换2.4 数据的存储和排列三、浮点数的表示和运算3.1 浮点数的表示

S mile0804的博客 7479

oracle终端基本命令

show user; 显示当前用户; conn(ect) system; 连接新的用户; disc(onnect);断开与当前数据库的连接 passw(ord);修改用户密码, 如果想要修改其他用户的密码,需要用sys/system登陆; exit;退出; start;运行脚本; spool;将屏幕输出的东西写入到指定文件中去;spool d:\log.txt spoll off l

正在路上的专栏 1734

2025年一篇解决Windows11安装医学图像处理工具-FSL(各种问题解决,过程详细,小白轻松安装)

2025年一篇帮你解决FSl安装所有问题,包括环境安装、使用说明、常见问题,过程简单易懂,小白轻松安装。

weixin_52145255的博客 2525

Oracle数据库 sql*plus常用命令

sql*plus常用命令 (1)conn[ect]:切换用户 (2)disc[onnect]:断开某个用户和数据库的连接 (3)passw[ord]:修改用户密码 (4)show user:查看当前用户 (5)exit:退出数据库 (6)desc[ribe] 表名:查看表结构 交互式命令: (1)&amp;amp;:可以替代变量,而在变量执行的时候,需要用户输入 Select * from emp whe...

子非鱼的博客 1219

Apifox 自动化测试新增流程控制条件,复杂测试场景不再是问题

在 if 条件后的输入框填写请求接口得到的变量 viewed ,选择条件为「小于」,输入比较数值 10 ,并在 if 条件下添加「宠物下架处理」步骤。借助新增的自动化测试流程控制条件,测试人员就可以使用 Apifox 去实现更深层更多样的测试应用场景,帮助提升测试效率,减少复杂场景的测试操作。「查询新建宠物」、「修改宠物状态为已售出」和「查询宠物状态是否修改」步骤为当前在售宠物信息盘点的三个标准步骤,所以将这三个步骤合成一组。在循环中添加「查询在售宠物」和「修改宠物状态」步骤;

879

Spine动画在Unity里卡顿、闪烁、排序错乱?这些性能优化与渲染问题一次讲清

本文深入解析了Spine动画在Unity中常见的卡顿、闪烁和排序错乱问题,提供了全面的性能优化与渲染解决方案。从性能瓶颈诊断到材质合并、动态合批优化,再到层级错乱与Alpha闪烁的处理,帮助开发者提升动画表现和运行效率。特别针对Unity和Spine的协同工作进行了详细的技术探讨。

weixin_29967445的博客 383

Oracle笔记之 命令

sqlplus命令: 1、show user。 2、

will_tt的专栏 502

Zynq 双核AMP 通信

4、配置离线编译(这里不讲),配置linux的内核地址空间(0x4000_0000改为0x2000_0000),以及单核启动。CPU1设置为0x2000_0000~0x3FFF_FFFF(也可以小于0x3FFF_FFFF)如果禁用CPU1的L2 cache,在CPU1的bsp里面添加编译时候所需要的宏。3、配置工程,将vivado产生的.xsa文件复制到amp_com项目目录下。9、使用petalinux-package --boot 打包。一、vivado工程。5、编译u-boot。

y183128184的博客 1088

Oracle数据库sql*plus常用命令

链接命令 1. conn[ect](切换用户) 用法:conn 用户名/密码 conn system/system 举例: 2. disc[onnect] 说明:该命令用来断开与当前数据库的链接 disc 举例: 3. passw[ord] 说明:该命令用于修改用户的密码,如果想要修改其他用户的密码,需要用system/密码 或者 sys/密码登陆去修改。 passw 用户名 举例:...

qq_41942241的博客 242

Transformer实战(2)——循环神经网络详解

循环神经网络 (Recurrent neural networks, RNN) ,RNN 是在文本输入中广泛使用的神经网络。RNN 非常灵活,已被用于解决诸如语音识别、语言建模、机器翻译、情感分析和图像字幕等问题。RNN 利用输入的序列特性,序列输入可以是文本、语音、时间序列以及任何其他元素的出现取决于其前面元素的序列。在本节中,我们介绍了 RNN 及其变体,并学习如何使用 TensorFlow 进行实现。

盼小辉丶的博客 1万+

摇骰子、抽奖转盘酒桌游戏 人生重启模拟器小程序源码分享-开通流量主躺着赚钱

摇骰子、抽奖转盘酒桌游戏 人生重启模拟器小程序源码分享-开通流量主躺着赚钱

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 1652

oracle学习笔记1

【代码】oracle学习笔记1。

hxsln11的博客 297

大模型的应用与微调:如何调用 LLM?从 OpenAI API 到本地部署

本篇文章介绍了如何调用 OpenAI、DeepSeek、Manus、通义千问等大模型 API,并探讨了 LLM 本地部署的方法。在实际应用中,可以根据需求选择云端 API 或本地化部署方案,以满足不同的计算需求和隐私要求。下一篇:大模型微调与 RAG 技术(LoRA、QLoRA、向量数据库)

晴天彩虹雨的博客 1157

oracle学习笔记——1

当新建表空间报错找不到指定路径时,先检查一下有没有建立相应文件夹。oracle不会自己建立文件夹。

s456951753的专栏 205

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Oracle学习笔记1

Oracle 11g的体系结构学习记录

weixin_45247073的博客 632

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

ORACLE学习笔记1

学习笔记1 在linux下安装oracle10G 所有环境都搭建好以后 出现以下错误提示 Checking installer requirements... Checking operating system version: must be redhat-3, SuSE-9, redhat-4, UnitedLinux-1.0, asianux-1 or asianux-2

nican2008的专栏 541

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

Oracle 学习笔记1

1.oracle 查看当前用户、当前数据库实例   sql>show user;查看当前用户 sql>show parameter instance_name;查看当前数据库实例   疑问1:在安装oracle软件的同时创建orcl数据库,为什么在sqlplus工具用scott用户登录orcl数据库用如下代码: Show parameter instance_name 查看orcl数

无心人的终点 790

ORACLE学习笔记1(原创)

ORACLE学习笔记 安装和管理ORACLE 1、  ORACLE通用安装程序(OUI) 一种基于JAVA并适用于所有平台的工具来安装ORACLE9I。 2、  数据库配置助手(Database Configuration Assistant) 用以创建一个新的数据库 3、ORACLE网络配置助手(Oracle Net Configuration Assistant)        可为数据库库设

xmqds的专栏 2476

oracle学习笔记day1

oracle数据库前言 oracle sqllesson1 Selecting Rowslesson2 Sorting & Limiting Selected Rowslesson3 Single Row Functionslesson4 Displaying Data from Multiple Tableslesson5 Group Functi...

aochoudu2102的博客 153

ORACLE 学习笔记1

1、数据库连接前设置SIDSID是一个数据库的唯一标识符,是建立一个数据库时系统自动赋予的一个初始ID,SID主要用于在一些DBA操作以及与操作系统交互,从操作系统的角度访问实例名,必须通过ORACLE_SID,且它在注册表中也是存在的。查看SIDWindows平台下:你可以到注册表去,看看HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE...

weixin_34015566的博客 102

Oracle学习笔记(1):命令

Oracle学习笔记(1):命令

fen_fen的专栏 1358

oracle 学习笔记1

1、登录oracle 1)使用oracle自带的sqlplus 在命令提示符中,输入sqlplus,就可以输入密码 2)使用PL/SQLDeveloper 自带登录框,直接输入用户名和密码即可,普通用户选择normal模式即可,用户是sys或system 在命令窗口中,可以以:用户名/密码@SID [as sysdba或sysope...

weixin_30722589的博客 63
上一篇: Struts2学习之表单验证
下一篇: oracle学习笔记(2)
Champion_netjava
博客等级 码龄16年 10粉丝 33原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值