Oracle数据库概念和一些基本的SQL语句
1、数据
定义:描述事物的符号。例如:文本、音频、视频都是数据。
2、数据库
存放数据的仓库,存放在计算机中,按照一定格式存放,可以为用户共享。
3、数据库的发展阶段
1、网状数据库
2、层次数据库
3、关系数据库(目前主流数据库)
4、对象数据库
4、NOSQL数据库
4、Oracle数据库系统用户(管理员)
scott账户:测试账户,练习账户
登录方式:dos命令行---->sqlplus--->输入账户:scott--->输入密码---->(登录成功)
如果该账户被锁定,需要在sysdba超级账户解锁
sysdba账户:超级账户,拥有最高权限,Oracle默认的系统管理员。在该账户下把别的账户加锁或解锁。
登录方式:直接在dos命令行输入sqlplus / as sysdba(注意空格)即可
加锁:alter user 账户名 account lock;
解锁:alter user 账户名 account unlock;
查看当前账户:show user;
5、表名和列名命名规范和数据类型
1、必须以字母开头
2、只能包含字母、数字、_#$
3、不能使用保留字oracle
4、不能与用户定义的其他对象重名
数据类型见表
类型 |
含义 |
存储描述 |
备注 |
CHAR |
固定长度字符串 |
最大长度2000bytes |
|
VARCHAR2 |
可变长度的字符串, |
最大长度4000bytes |
可做索引的最大长度749 |
NCHAR |
根据字符集而定的固定长度字符串 |
最大长度2000bytes |
|
NVARCHAR2 |
根据字符集而定的可变长度字符串 |
最大长度4000bytes |
|
DATE |
日期(日-月-年) |
DD-MM-YY(HH-MI-SS),经过严格测试,无千虫问题 |
|
TIMESTAMP |
日期(日-月-年) |
DD-MM-YY(HH-MI-SS:FF3),经过严格测试,无千虫问题 |
与DATE相比较,TIMESTAMP有小数位秒信息 |
LONG |
超长字符串 |
最大长度2G,足够存储大部头著作 |
|
RAW |
固定长度的二进制数据 |
最大长度2000bytes |
可存放多媒体图象声音等 |
LONG RAW |
可变长度的二进制数据 |
最大长度2G |
可存放多媒体图象声音等 |
BLOB |
二进制数据 |
最大长度4G |
|
CLOB |
字符数据 |
最大长度4G |
|
NCLOB |
根据字符集而定的字符数据 |
最大长度4G |
|
BFILE |
存放在数据库外的二进制数据 |
最大长度4G |
|
ROWID |
数据表中记录的唯一行号 |
10bytes |
********.****.****格式,*为0或1 |
NROWID |
二进制数据表中记录的唯一行号 |
最大长度4000bytes |
|
NUMBER(P,S) |
数字类型 |
P为整数位,S为小数位 |
|
DECIMAL(P,S) |
数字类型 |
P为整数位,S为小数位 |
|
INTEGER |
整数类型 |
小的整数 |
|
FLOAT |
浮点数类型 |
NUMBER(38),双精度 |
|
REAL |
实数类型 |
NUMBER(63),精度更高 |
6、建表语法以及常见SQL语句
(1)、建表:create table 表名(列名 数据类型,列名 数据类型,...);
例:create table stus(stu_id number(10), stu_name varchar2(20));
(2)、查看表结构:desc 表明
例:desc stus;
(3)、添加新列:alter table 表名 add(列名 数据类型);
例:alter table stus add(stu_class varchar2(20));
(4)、删除列:alter table 表明 drop column 列名
例:alter table stua drop column stu_class;
(5)表改名字:alter table 旧表名 rename to 新表名
例:alter table stus rename to stu;
(6)、列改名字:alter table 表名 rename 旧列名 to 新列名;
例:alter table stu rename stu_id to stu_no;
(7)、修改列的数据类型:alter table 表名 modify(列名 数据类型);
例:alter table stu modify(stu_name number(20));
(8)、添加主键:
表建立完成以后,指定列为主键
前提是:没有null的数据&&没有重复的数据。
alter table 表名 add constraint(约束,限制) PK_表名_指定的列名 primary key(指定的主键那一列);
例:alter table stu add constrain PK_stu+stu_no primary key(stu_no);
也可以在创建表的时候就添加主键
create table stu(stu_id number(20) primary key not null);
(9)、删除表
方式1:drop table 表名 例:drop table stu(把整个彻底删除)
方式2:truncate table 表名 (删除表中的数据);
(10)、往表中添加数据:insert into 表名(列1,列2..) values(值1,值2....);
例: insert into stu(stu_id,stu_name) values(1,'张三');
Oracle数据库概念和一些基本的SQL语句的更多相关文章
- 《万能数据库查询分析器》实现使用SQL语句直接高效地访问文本文件
<万能数据库查询分析器>实现使用SQL语句直接高效地访问文本文件 马根峰 (广东联合电子服务股份有限公司, 广州 510300) 摘要 用SQL语句来直接访问文本文件?是在做梦吗? ...
- ORACLE中用rownum分页并排序的SQL语句
ORACLE中用rownum分页并排序的SQL语句 以前分页习惯用这样的SQL语句: select * from (selectt.*,rownum row_num frommytable t ord ...
- 如何在Oracle中一次执行多条sql语句 (.net C#)
关键是不能换行,要加上begin ...sql... end; 每个SQL用:隔开,end后面必须加: 以下是拷贝于:http://www.cnblogs.com/teamleader/arc ...
- 缓存策略 半自动化就是mybaitis只支持数据库查出的数据映射到pojo类上,而实体到数据库的映射需要自己编写sql语句实现,相较于hibernate这种完全自动化的框架我更喜欢mybatis
springboot入门(三)-- springboot集成mybatis及mybatis generator工具使用 - FoolFox - CSDN博客 https://blog.csdn.net ...
- 数据库MySQL经典面试题之SQL语句
数据库MySQL经典面试题之SQL语句 1.需要数据库表1.学生表Student(SID,Sname,Sage,Ssex) --SID 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学 ...
- 一次性删除数据库所有表和所有存储过程 SQL语句
一次性删除数据库所有表和所有存储过程 SQL语句 今天转移数据库数据,需要把数据库原来的表和存储过程清空.删除所有的表:如果由于外键约束删除table失败,则先删除所有约束: --/第1步****** ...
- Oracle数据库该如何着手优化一个SQL
这是个终极问题,因为优化本身的复杂性实在是难以总结的,很多时候优化的方法并不是用到了什么高深莫测的技术,而只是一个思想意识层面的差异,而这些都很可能连带导致性能表现上的巨大差异. 所以有时候我们应该先 ...
- oracle数据库、客户端安装以及ps/sql连接和导入表实例
从下面的网址下载http://www.oracle.com/technetwork/database/enterprise-edition/downloads/112010-win32soft-098 ...
- ORACLE 数据库的级联查询 一句sql搞定(部门多级)
在ORACLE 数据库中有一种方法可以实现级联查询 select * //要查询的字段 from table //具有子接点ID与父接点I ...
随机推荐
- [原创]普通的MySQL多表连接查询
- hadoop集群中删除原有jdk设置
普通用户: sudo rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.50.1.11.5.el6_3.x86_64 tzdata-java-2012j-1.e ...
- OpenStack Newton版本Ceph集成部署记录
2017年2月,OpenStack Ocata版本正式release,就此记录上一版本 Newton 结合Ceph Jewel版的部署实践.宿主机操作系统为CentOS 7.2 . 初级版: 192. ...
- java内存模型7-处理器内存模型
处理器内存模型 顺序一致性内存模型是一个理论参考模型,JMM和处理器内存模型在设计时通常会把顺序一致性内存模型作为参照.JMM和处理器内存模型在设计时会对顺序一致性模型做一些放松,因为如果完全按照顺序 ...
- 详解Google Chrome浏览器(操作篇)(下)
开篇概述 由于最近忙于公司产品的架构与研发,已经三个多月没有写博客了,收到有些朋友的来信,问为什么不及时更新博客内容呢,他们说他们正期待着某些内容.对此,非常抱歉,那么我在此也给各位朋友一些承诺,从即 ...
- NancyFx 2.0的开源框架的使用-CustomModule(自定义模块)
NancyFx框架的自定义模块 新建一个空的Web项目 然后通过NuGet库安装下面的包 Nancy Nancy.Hosting.Aspnet 然后添加Models,Module,Views三个文件夹 ...
- Ubuntu 完全卸载MySQL 重装步骤
sudo rm /var/lib/mysql/ -R 删除mysql的数据文件 sudo rm /etc/mysql/ -R 删除mqsql的配置文件 sudo apt-get autorem ...
- 使用windows桌面ftp上传文件到linux服务器
首先在linux服务器上安装ftp [root@host2 test]#yum -y install ftp vsftpd [root@host2 test]#service vsftpd start ...
- Java调用IDL出错处理
之前有一个java调用idl的详细介绍http://www.cnblogs.com/lizhishan3380/p/4353286.html,里面有提到[需要先在java中加载IDL的java包(ja ...
- windows下Python 3.x图形图像处理库PIL的安装
图像处理是一门应用非常广的技术,而拥有非常丰富第三方扩展库的 Python 当然不会错过这一门盛宴.PIL (Python Imaging Library)是 Python 中最常用的图像处理库,目前 ...