oracle的安装与卸载

  • 要记住数据库口令,适用于sys、system.sysman/dbsnmp等账户,而scott帐号密码默认为tiger, 以oracle  10g来说,scott账户默认是lock的,需要unlock,

解决方法:1.即需要登录自带客户端即SQL plus登录sys等账户,口令为“密码【空格】as【空格】sysdba” 比如口令 “a3814194 as sysdba” 注意空格,因为输入的是密码,输入的是*号,空格必须打,否则密码错误。

     2.下载个PLSQL Developer 开发工具,输入sys和密码再选中sysdba数据库即可登录。

     3. 在(1)或(2)登录sys账户后,输入命令行:  alter user scott account unlock;  解锁即可。

  • 安装好之后,需要开启服务才能使用数据库,右击计算机选择管理,选择服务,启动“OracleOraDb10g_home1TNSListener” 监听器服务 和“OracleServiceORCL”数据库服务

卸载

    • 彻底删除oracle  :http://wenku.baidu.com/link?url=BKH21ClE4dr6T3wnm41RjnTV6A5niPVZOrLc3Iie0OBwCdE6T9w2fYSRUoE1EEemwcWhRJAupR3IfzlPjw6ZcGybMcRTyKleziCtKboh0kS


 oracle的使用

 

  • 注释语句:     --
  • 创建表空间:    不能是scott账户,因为这个账户是测试账户没有权限创建表空间。需要系统管理员才有权限,返回登录数据库选择sysdba,账户密码随便填即可(因为服务器在本机上,所以在本机登录sysdba可以随便填账户密码,如果是在别的机器,则乱填报错),登陆之后,输入命令:

    

       create tablespace sp_student
    datafile 'F:\test\test.mdf'
    size 100m;
 datafile 'F:\test\test.mdf'表示创建的文件存放在F:\test文件夹下,文件名叫test.mdf(执行语句之后在F:\test下自动生成test.mdf文件),注意 test文件夹必须存在,否则报错。  
size表示文件大小。
当表空间容量100M用完之后或者磁盘容量耗尽,我们可以继续扩容,
alter tablespace sp_student
add datafile 'E:\text1\text1.mdf'
size 10m;

这样在E:\text1目录下会生成text1.mdf文件,当表空间或者磁盘容量用完之后,我们可以在其他擦盘继续创建空间来容纳数据。

  • 我们开发了一个系统之后,如果这个系统要使用数据库,则一般会创建一个用户。
--创建用户
create user myUse
identified by a3814194
default tablespace sp_student; --删除用户
drop user myUse;
--给予权限,记得把create session权限也赋给user 否则将不能登录
grant create session,resource to myUse; --回收权限
revoke resource from myUse;
  • 数据库分页

    select * from(
    
    select rownum as eid,stu.* 
    from stu )stu where eid between (0*3)+1 and (0+1)*3;

    解析:Rownum表示一条记录的行号,值得注意的是它在获取每一行后才赋予.因此,想指定rownum的区间来取得分页数据在一层查询语句中是无法做到的,要分页还要进行一次查询.where eid betewwn (0*3)+1 and (0+1)*3; 表示查询条件为第一页显示3条数据,其中0代表当前页是第一页,3代表每页3条数。

    (4*2)+1 and (4+1)*2; 表示当前页为第5页,数据量为2条。

create user+用户名,identified by +密码, 创建完用户之后,需要给这个用户权限,比如登录权限,创建表修改表等等权限,我们可以直接resource 这个权限给用户(必须是管理员帐号才能赋予权限),
这个用户就可以登录、创建表等等。

  • 切换用户登录,登录myUse用户
  • 创建表  :
--创建表
create table student
(
sno char(10),
name char(10),
birthday date
);
--查看表
select * from student;
--删除表
drop table student;
  • 修改表:
--修改表/增加列
alter table student
add sex char(10);
----修改表/删除列
alter table student
drop column sex;

    增加列add 不用加column   而修改列add 要接column  且只要列名

--修改列的类型
alter table student
modify sno date;
  • 表创建完之后,我们可以对这张表进行增加、删除、修改数据等操作。
insert  into student values('001','张三',to_date('1990/10/29','yyyy/MM/dd'));

插入一条记录,to_date()函数用于日期型数据转换为特定格式,在mysql中1990/10/29这种格式可以直接插入,而在oracle中要转换为yyyy/MM/dd格式才能插入
.当我们插入数据成功之后,要对操作进行commit,否则数据并未真正提交,这时候如果再创建一个数据库登录myUse用户,查看数据库student表会发现数据并未插入。

我们也可以选择对某些列插入数据,如下,如果没有(sno)则默认对所有列插入数据.

insert into student(sno) values('002');
--修改数据
update student set name='李四' where sno='001';
--删除数据
delete from student where sno='002';
  • 如果我们插入一条数据delete from student where sno='002';  这样的数据是没有任何价值的,为了确定插入的数据必须是有价值的,我们需要对插入的数据进行约束,即插入的数据必须满足某些条件才能插入,即实现数据完整性(约束条件):非空、主键(非空+唯一+聚集索引)、唯一、检查、外键、默认值。

    --约束条件
    --主键约束
    alter table student
    add constraint pk_sno primary key(sno);

    pk_sno为约束条件名,注意如果表里有数据,且又增加某个约束条件,如果表里的数据跟约束条件冲突的时候会报错,比如数据库里已经有了一条sno为空的数据,而此时我们又对sno增加了主键约束条件,那么增加约束条件这步无法执行。

--非空
alter table student
modify name char(10) not null;
--检查约束
alter table student
add constraint ck_birthday check(birthday between to_date('1900/01/01','yyyy/MM/dd') and to_date('2000/01/01','yyyy/MM/dd')); --在表定义时定义检查约束
create table s(
  id int primary key,
  sex char(10)  check (sex in ('男' , '女'))
);
--唯一性约束
alter table student
add constraint un_name unique(name);
--默认值
alter table student
modify name char(10) default 'sb';
  • 外键约束  :外键用于与另一张表的关联。是能确定另一张表记录的字段,用于保持数据的一致性。比如,A表中的一个字段,是B表的主键,那他就可以是A表的外键。

为了实验外键约束我们需要创建一张新表

create table score
(
id int primary key,
name char(10),
sno char(10),
foreign key(sno) references student(sno)
);  

    原来的student表里有两条记录,sno=001 name=张三 birthday=1990/10/29 ; sno=002 name=sb  birthday=1911/01/01

    score表里 sno为外键,如果往score表里插入一条数据 :insert into score values(1,'王五','003');

    则报错,因为sno是外键,而student表里没有sno=003 这条记录。

(十九)oracle 基础使用以及sql语句基础的更多相关文章

  1. 第二章 基础查询 2-1 SQL语句基础

    一.列的查询 基本的SELECT语句: SELECT <列名 >,...... FROM < 表名>; 注:子句是SQL的组成要素. 注:查询结果中的列的顺序和SELECT子句 ...

  2. oracle 基础使用以及sql语句基础

        oracle的安装与卸载 要记住数据库口令,适用于sys.system.sysman/dbsnmp等账户,而scott帐号密码默认为tiger, 以oracle  10g来说,scott账户默 ...

  3. oracle 修改表的sql语句

    oracle 修改表的sql语句     1增加一个列:ALTER TABLE 表名 ADD(列名 数据类型);如:ALTER TABLE emp ADD(license varchar2(256)) ...

  4. 查询Oracle正在执行的sql语句

    --查询Oracle正在执行的sql语句及执行该语句的用户 SELECT b.sid oracleID, b.username 登录Oracle用户名, b.serial#, spid 操作系统ID, ...

  5. oracle 监控执行的sql语句

    oracle 监控执行的sql语句 select * from v$sqlarea a where module='PL/SQL Developer' order by a.FIRST_LOAD_TI ...

  6. [SQL基础教程] 2-1 SELECT语句基础

    [SQL基础教程] 2-1 SELECT语句基础 列的查询 Syntax SELECT<列名>,..... FROM<表名>; SELECT col_1, col_2 FROM ...

  7. oracle数据库查询日期sql语句(范例)、向已经建好的表格中添加一列属性并向该列添加数值、删除某一列的数据(一整列)

    先列上我的数据库表格: c_date(Date格式)     date_type(String格式) 2011-01-01                   0 2012-03-07         ...

  8. Oracle数据库常用的Sql语句整理

    Oracle数据库常用的Sql语句整理 查看当前用户的缺省表空间 : select username,default_tablespace from user_users; 2.查看用户下所有的表 : ...

  9. Oracle中,利用sql语句中的函数实现保留两位小数和四舍五入保留两位小数

    Oracle中,利用sql语句中的函数实现保留两位小数和四舍五入保留两位小数: select trunc(1.23856789,2) from dual round(m,n) 可以四舍五入 trunc ...

随机推荐

  1. python练习题(二)

    题目: 已知以下几期双色球号码(最后一个数字为蓝球), 2019080 03 06 08 20 24 32 07 2019079 01 03 06 09 19 31 16 2019078 01 17 ...

  2. django中使用form表单,数据库保存密码出现明文

  3. pyharm 上运行 npm 配置方法

    问题解决.

  4. vue init webpack-simple

    vue init webpack-simple  .. 将我们的项目更加方便,更有助于开发者快速开发. vue init webpack-simple的项目默认打包后之后一个html和一个js文件,而 ...

  5. HDU-2082-找单词(母函数)

    链接: http://acm.hdu.edu.cn/showproblem.php?pid=2082 题意: 假设有x1个字母A, x2个字母B,..... x26个字母Z,同时假设字母A的价值为1, ...

  6. 使用$.getJSON("xx.json" ,function(data){ console.logy(data); })在本地获取 json数据

    使用 $.getJSON() 在本地获取 json数据  默认在谷歌,火狐等其他浏览器,不允许在本地获取服务器数据 所以不能在本地中使用 但是可以IE 11 中又可以使用,所以,测试时建议在IE浏览器 ...

  7. 006_硬件基础电路_MOS管

    从文档中提取有用信息 链接:https://pan.baidu.com/s/1fR7ZyGDgapOdd-FtjQ6m8Q提取码:an11 复制这段内容后打开百度网盘手机App,操作更方便哦 判断三个 ...

  8. 011_Python3 集合

    集合(set)是一个无序的不重复元素序列. 可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典.   创 ...

  9. 爬虫(五):PyQuery的使用

    一:简介 PyQuery库是jQuery的Python实现,可以用于解析HTML网页内容,是一个非常强大又灵活的网页解析库. -->官方文档地址 -->jQuery参考文档 二:初始化 初 ...

  10. CF891C Envy【最小生成树】

    题目链接 我们知道,根据Kruskal的贪心,对于最小生成树,每一种权值的边数是一样的,而且如果将\(\leq x\)的边做最小生成树,合法方案的联通性是一样的.所以我们可以对于所有边分开考虑. 对于 ...