/*
1.Oracle ORCL Vss Writer Service。Oracle卷映射拷贝写入服务,
VSS(Volume Shadow Copy Service)能够让存储基础设备(比如磁盘,阵列等)创建高保真的时间点映像,即映射拷贝 (shadow copy)。
它可以在多卷或者单个卷上创建映射拷贝,同时不会影响到系统的系统能。
2.OracleDBConsoleorcl。Oracle数据库控制台服务,orcl是Oracle的实例标识,默认的实例为orcl。
在运行Enterprise Manager 的时候,需要启动这个服务。此服务被默认设置为自动开机启动 的。
3.OracleJobSchedulerORCL。Oracle作业调度服务,ORCL是Oracle实例标识。此服务被默认设置为禁用状态。
4.OracleOraDb11g_home1TNSListener。监听器服务,服务只有在数据库需要远程访问的时候才需要,此服务被默认的设置为开机启动。
5.OracleServiceORCL:数据库服务,这个服务会自动的启动和停止数据库。ORCL是Oracle的实例标识。此服务被默认的设置为开机启动。
*/
--DML 对表进行操作
/*
学号(SID): number(8,0)
姓名(name): varchar2
性别(sex): char(2)
出生日期(birthday): date
家庭住址()address): varchar2(50)
*/
/*
number(8,0) 12345678
number(5,2) 123.45
*/
create table student
(
sid number(8,0),
name varchar2(20),
sex char(2),
birthday date,
address varchar2(50)
);
/*
create table table_name: create table 是创建表的关键字
table_name 表的名称
(
sid number(8,0) +[], : sid 是字段名称
number 数据类型
后面还可以添加约束
非空约束
主键 外键 默认值 不允许为某一特定值
, 多字段用逗号分隔
);
;结尾
*/
--Oracle的表操作--修改表
--添加列
--语法:alter table table_name add 列名 列数据类型
alter table student add tel varchar2(11);
alter table student add info varchar2(50);
/*
alter table : 对表操作的关键字
student : 针对修改的表的名称
add : 添加
tel varchar2(11) 添加的字段
*/
--修改列
--语法:alter table table_name modify 列名 列数据类型
alter table student modify tel number(11,0);
/*
alter table : 对表操作的关键字
student : 针对修改的表的名称
modify : 修改
tel : 被修改的的字段
varchar2(11): 要修改成什么样子
*/
--删除列 (需要权限)
--语法:alter table table_name drop column 列名
alter table student drop column tel;
alter table student drop column info;
/*
alter table : 对表操作的关键字
student : 针对修改的表的名称
drop column : 删除某列 ****(如果数据库中有数据,连带着把数据库对应的列一起删除)
tel : 要删除列的名称
*/
--修改列名
--语法:alter table table_name rename column 列名 to 新列名
alter table student rename column gender to sex;
alter table student rename column info to sinfo;
/*
alter table : 对表操作的关键字
student : 针对修改的表的名称
rename column : 对列名进行修改
gender to sex; : old to new 老列名 to 新列名
*/
--修改表名
--语法:rename 表名 to 新表名
rename student to studentinfo;
rename studentinfo to student;
/*
rename 修改表的名称
studentinfo to student; 老名称 to 新的名称
*/
--Oracle的表操作--删除表
--方法1: 截断表
--语法:truncate table 表名称
truncate table emp_bak;
-- 之删除数据 保留表结构 删除所有的测试数据
-- 注:只是删除数据
--方法2:
--语法:drop table 表名称
drop table emp_bak;
-- 这张表从计算机上抹除
--注:表结构和数据一起删除
create table test
(
id number(10,0)
);
------------------------------------------------------------------------
--Oracle的表操作
--增删改查
--insert(添加数据)
insert into student (sid,name,sex)values(20010001,'张珊珊','女');
/*
指定插入数据
注意 : 数据要对齐
insert into : 插入的关键字 into 指定表
student(): 对应被操作的表
sid,name,sex,address,birthday : 对应的数据字段
values(): 对应的值
20010002,'王五','男','北京市昌平区',to_date('19820909','YYYYMMDD') : 数据跟student()立面的字段对应
跟表结构对齐
*/
insert into student(sid,name,sex,address,birthday) values(20010002,'王五','男','北京市昌平区',to_date('19820909','YYYYMMDD'));
/*
指定插入数据
注意 : 数据要对齐
insert into : 插入的关键字 into 指定表
student(): 对应被操作的表
sid,name,sex,address,birthday : 对应的数据字段
values(): 对应的值
20010002,'王五','男','北京市昌平区',to_date('19820909','YYYYMMDD') : 数据跟student()立面的字段对应
跟表结构对齐
*/
insert into student values(20010003,'张三','女',to_date('19830808','YYYYMMDD'),'北京市昌平区');
/*
根据表结构来插入数据
create table student
(
sid number(8,0),
name varchar2(20),
sex char(4),
birthday date,
address varchar2(50)
);
insert into : 插入的关键字 into 指定表
student: 对应被操作的表
values(): 对应的值
20010003,'张三','女',to_date('19830808','YYYYMMDD'),'北京市昌平区'
跟表结构对齐
to_date() 数据库中自带的内置函数 作用是格式化时间
*/
------------------------------------------------------------------------------
--select(查询数据)
select * from student;
/*
select :查询的关键字
* : 通配符 所有的
from : 指定来自哪里
student : 被指定的表名称
; : 结束
*/
select sid ,name from student;
/*
select :查询的关键字
sid,name : 指定要查询的列 注意 来自于表结构的列名
from : 指定来自哪里
student : 被指定的表名称
; : 结束
*/
select * from student where sid =20010001;
/*
select :查询的关键字
* : 通配符 所有的
from : 指定来自哪里
student : 被指定的表名称
where : 条件查询
sid =20010001 : 条件
; : 结束
*/
---------------------------------------------------------------------
--update(更新数据)
select * from student;
update student set address = '北京市昌平区' where sid = 20010001;
/*
update : 更新 修改
student :表名
set :要被传入的数据
address = '北京市昌平区' :数据
where : 条件操作
sid = 20010001 : 条件
; : 结束
*/
update student set address='湖北省武汉市';
/*
update : 更新 修改
student :表名
set :要被传入的数据
address = '湖北省武汉市' :数据
; : 结束
*/
--------------------------------------------------------------------
--delete(删除数据)
select * from student where sid =20010001;
delete from student where sid = 20010001;
delete from student;
truncate table student; -- 截断表 清除表数据建议使用截断表
/* 删除指定表中的所有数据 */
----------------------------------------------------------
--select(查询数据) 16种