oracle 基础使用以及sql语句基础
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;
--给予权限 grant resource to myUse;
--回收权限
revoke resource from myUse;
create user+用户名,identified by +密码, 创建完用户之后,需要给这个用户权限,比如登录权限,创建表修改表等等权限,我们可以直接resource 这个权限给用户(必须是管理员帐号才能赋予权限),
这个用户就可以登录、创建表等等。
- 切换用户登录,登录myUse用户
- 创建表 :
--创建表 create table student ( sno ), name ), birthday date );
--查看表
select * from student;
--删除表
drop table student;
- 修改表:
--修改表/增加列 alter table student add sex ); ----修改表/删除列 alter table student drop column sex;
增加列add 不用加column 而修改列add 要接column 且只要列名
--修改列的类型
alter table student modify sno date;
- 表创建完之后,我们可以对这张表进行增加、删除、修改数据等操作。
insert into student values(','张三',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(');
--修改数据 update student ';
--删除数据 ';
- 如果我们插入一条数据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 ) 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 ) default 'sb';
- 外键约束 :外键用于与另一张表的关联。是能确定另一张表记录的字段,用于保持数据的一致性。比如,A表中的一个字段,是B表的主键,那他就可以是A表的外键。
为了实验外键约束我们需要创建一张新表
create table score ( id int primary key, name ), sno ), 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语句基础的更多相关文章
- 第二章 基础查询 2-1 SQL语句基础
一.列的查询 基本的SELECT语句: SELECT <列名 >,...... FROM < 表名>; 注:子句是SQL的组成要素. 注:查询结果中的列的顺序和SELECT子句 ...
- (十九)oracle 基础使用以及sql语句基础
oracle的安装与卸载 要记住数据库口令,适用于sys.system.sysman/dbsnmp等账户,而scott帐号密码默认为tiger, 以oracle 10g来说,scott账户默认是lo ...
- [SQL基础教程] 2-1 SELECT语句基础
[SQL基础教程] 2-1 SELECT语句基础 列的查询 Syntax SELECT<列名>,..... FROM<表名>; SELECT col_1, col_2 FROM ...
- oracle 修改表的sql语句
oracle 修改表的sql语句 1增加一个列:ALTER TABLE 表名 ADD(列名 数据类型);如:ALTER TABLE emp ADD(license varchar2(256)) ...
- 查询Oracle正在执行的sql语句
--查询Oracle正在执行的sql语句及执行该语句的用户 SELECT b.sid oracleID, b.username 登录Oracle用户名, b.serial#, spid 操作系统ID, ...
- oracle 监控执行的sql语句
oracle 监控执行的sql语句 select * from v$sqlarea a where module='PL/SQL Developer' order by a.FIRST_LOAD_TI ...
- oracle数据库查询日期sql语句(范例)、向已经建好的表格中添加一列属性并向该列添加数值、删除某一列的数据(一整列)
先列上我的数据库表格: c_date(Date格式) date_type(String格式) 2011-01-01 0 2012-03-07 ...
- Oracle数据库常用的Sql语句整理
Oracle数据库常用的Sql语句整理 查看当前用户的缺省表空间 : select username,default_tablespace from user_users; 2.查看用户下所有的表 : ...
- Oracle中,利用sql语句中的函数实现保留两位小数和四舍五入保留两位小数
Oracle中,利用sql语句中的函数实现保留两位小数和四舍五入保留两位小数: select trunc(1.23856789,2) from dual round(m,n) 可以四舍五入 trunc ...
随机推荐
- digitalocean网站打不开,大陆无法正常访问怎么办?
在中国大陆,由于某些恶心的原因,digitalocean官方网站经常出现无法打开,或者打开后网页异常的情况,如果你是一个新注册用户,你甚至会被吓到,一个全球知名的vps主机商网站可能是这样的: 我的天 ...
- digitalocean教程:你应该知道的10件事
DigitalOcean VPS性价比高,全球拥有多处机房,无须备案,非常适合守规矩的中国用户使用.digitalocean优惠码.digitalocean速度.digitalocean评测是网友关心 ...
- MySQL 的一个Bug?
在 my.ini 中的 [mysqld] 段设置 mysql basedir 和 datadir,如下: #Path to installation directory. All paths are ...
- QML与Qt C++ 交互机制探讨与总结
介绍 QML和 C++对象可以通过,signals,slots和 属性修改进行交互.对于一个C++对象,任何数据都可以通过Qt的 Meta-Object System暴露给QML(何总方法,后面介绍) ...
- php 即时输出
<?phpset_time_limit(0);ob_end_clean();ob_implicit_flush(1);$i=0;while ( $i>=0 ) { sleep(1); ec ...
- angular模拟elema网页1
我们之前做的所有的网页项目都用的是假的json数据,真正的前后端的数据交互是个什么情况的呢?现在,我们就来看看. 首先,我们需要进行环境窃取,我们需要一个真实的数据,但是人家公司肯定不会将数据给你的, ...
- 学习笔记——责任链模式ChainOfResponsibility
责任链模式,主要是通过自己记录一个后继者来判断当前的处理情况.Handler中,再增加一个方法用于设置后继对象,如SetHandler(Handler obj). 然后Handler类以其子类的处理方 ...
- java并发编程框架 Executor ExecutorService invokeall
首先介绍两个重要的接口,Executor和ExecutorService,定义如下: public interface Executor { void execute(Runnable command ...
- ios 给view添加一个渐变的背景色
CAGradientLayer *gradientLayer = [[CAGradientLayer alloc] init]; gradientLayer.colors = @[(__bridge ...
- HBase全分布安装配置
分布式的hbase依赖于Zookeeper集群所有正常工作节点都必须能够访问zookeeper:用户可以通过启动和关闭脚本就可以把zookeeper当做hbase的一部分来启动和关闭进程:当然,用户也 ...