Oracle入门篇

oracle版本和工具

版本:oracle11g 工具:PLSQL Developer

下载地址:

oracle11g:

https://download.oracle.com/otn/nt/oracle11g/112010/win32_11gR2_database_1of2.zip

https://download.oracle.com/otn/nt/oracle11g/112010/win32_11gR2_database_2of2.zip

PLSQL Developer:http://files.allroundautomations.com/plsqldev1106x64.exe

oracle安装教程:https://jingyan.baidu.com/article/363872eccfb9266e4aa16f5d.html

Oracle的需要启动的服务

OracleOraDb11g_home1TNSListenerOracleServiceORCL

账号和密码

账号:scott 密码:tiger账号:system 密码:安装时自定义密码

导入表

@路径/表名.sql ; 例:@d:/del_data.sql; //有错误不能管 依次添加就ok查看表是否添加select * from user_tables; desc 表名; //表信息 表描述

坐下!基本操作

创建表:

方式1:

create table 表名(
id number(10) primary key,
username varchar2(20) constraint 表名_username_nn not null,
//表名_username_nn 是约束的别名,在可视化界面可以根据别名进行查看约束,增加可读性
update_date date
)

方式2:

CREATE TABLE 表名 AS select 列1 别名1,列2 别名2,列3 from 表名2 where 条件

//根据另一个表中的字段进行创建表,可以把另一个表中的字段放入建表的字段中,表中的数据也会导入进来,可以根据限定条件引入指定数据.

修改表:

追加新的列

alert table 表名 add (字段名 类型(长度));

修改现有的列

alert table 表名 modify(字段名 类型(长度));

为新追加的列定义默认值

alert table 表名 modify(字段名 类型(长度),default '默认值');

删除一个列

alert table 表名 drop column 列名;

重命名一个列

alert table 表名 rename column 列名 to 重命名;

重命名一个表

rename 表名 to 重命名;

修改列为主键

alert table 表名 primary key(列名);

删除表的三种方式和区别:

drop table 表名; //不可回滚 表和数据都删除

truncate table 表名; //不可回滚 表的数据进行清空 truncate:清空

delete table 表名; //可回滚 表的数据进行清空

插入数据:

insert into 表名 values(1,'test'); //注意这里和mysql不同的是 必须要用单引号 必须写values 不能写value

//将另一个表中的数据插入本表中insert into 表1(列1,列2) select 列1,列2 from 表2 where 条件;

//脚本插入insert into 表名(列1,字符列2,日期列3) values($列1,'$字符列2','$日期列3');

修改数据:

update 表名 set name = 'test' where id = 1;

骚操作

update 表名 set 字段 = (select 列名 from 表名 where 条件) where 字段 = (select ......); //说明oracle中可以嵌套命令

删除数据:

delete table where id = 1;

常用查询:

select * from user_tables; //查询此用户拥有哪些表

select * from 表名; //普通查询

select * from 表1 left join 表2 on 条件表达式; //左外连接查询

select * from 表1 right join 表2 on 条件表达式; //右外连接查询

select * from 表1,表2 [where 条件]; //内联查询

select * from 表名 order by 字段名 asc; //升序查询 默认使用的是升序(asc),降序使用desc

select name from myempl group by name; //分组查询 注意分组查询的字段要和分组的字段一致

设置主键:

alter table 表名 add primary key(字段名);

函数:

count(),sum(),max(),min(),avg(),round()

例子:select count(表名.字段名) from 表名;

分页查询

主要使用rownum关键字

select * from 表名 where rownum >= 1 and rownum <= 3; //查询第一条到第三条数据

select * rownum,字段1 from (select 字段1 from 表 order by desc) where rownum >= 10 and rownum <= 20;

总结mysql和oracle的不同之处:

1.使用查询语句的时候,字符串必须要用单引号 必须写values 不能写value

2.插入日期时可以使用to_date(''2018-7-26,'yyyy-mm-dd')函数

3.使用查询语句的时候,不管是查询函数还是什么情况,一定要有from关键字

4.使用分页查询的时候,mysql使用的是limit关键字而oracle使用的是rownum关键字

5.mysql中的字符串是用varchar声明,oracle使用varchar2

进阶篇链接

https://blog.csdn.net/qq_39130032/article/details/81239125

猜你喜欢

转载自blog.csdn.net/qq_39130032/article/details/81222570