数据库复习1
来源:互联网 发布:点播软件 编辑:程序博客网 时间:2024/05/17 08:39
1.常用的数据库软件
a. 大型数据库:Oracle——Oracle(甲骨文)公司
DB2——IBM公司
Sybase——Sybase公司(较早采用C/S技术)
b. 中小型数据库:Sql Server——microsoft,支持C/S结构,采用标准SQL语言
MySql——体积小,速度快,开发源码,很多中小型网站为降低成本选择MySql作为网站数据库
c. 小型数据库:Microsoft Access
2. 常用概念
RDBMS: Relational Database Management System
SQL: Structured Query Language
DBA: Database Administrator
Table: 表
3. 连接数据库
a. 用telnet连接服务器——telnet ip地址
b. sqlplus:oracle提供的客户端工具
用sqlplus连接数据库sqlplus 用户名/密码
4. 建表
例如:Create table user(
Id number(4),
Passwd char(4),
Name char(20),
Email varchar2(50)
);
Number(n);
Number(n, m) 总长n位(不含小数点),小数点后m位
Char(n) 定长字符串,方便查询
Varchar(n) 变长字符串,节省空间
Varchar2(n) Oracle自己定义的变长字符串
Date 日期
注:清屏clear scr
4. 插入数据
例子:insert into user values(
123, '456', 'wangqing', '448565793@qq.com');
5. 查找数据
例子:select * from user;
6. sqlplus 命令
a. sqlplus命令不加分号结尾, sql语句以分号结尾
b. 设置行的宽度: set linesize 200——显示200个字符再换行
c. 设置列的宽度:column name format a6——设置列name宽度为6个字符
column id format 9999——设置列id为4个数字
注:在Oracle中,字符和数字是区别对待的,所以设置格式也是区别对待
注:column可简写为col, format可简写为for
d. 查看表的结构:desc user(表名)
e. / ——执行上一条sql语句,忽略sqlplus命令
f. 设置分页显示 set pagesize 100 —— 每100行分页显示
set pagesize 0 —— 设置为0则不分页显示
注: pagesize 可以简写为pages
7. 查询语句
a. 查询id = 100, passwd = ‘1234’的考生的名字
select name from user where id = 100 and passwd = '1234';
b. 列的别名
select name, salary, salary*12 year_sal from emp;
8. 删除表
drop table user(表名);
9. 空值
1)Oracle中空值的概念:null
a.任何数据都可以为空值
b.空值和任何数据做算术运算,结果都为空值
c.空值和字符串类型做连接操作,结果相当于空值不存在
2)nvl(d1, d2):如果d1为空值,那么用d2替代
注:nvl参数的类型可以为数字,字符,日期,但是两个参数的类型必须一致
3)插入空值的时候:
insert into user values(111, 'wangqing', null, null);
可以简写为
insert into user(id, name) values(111, ‘wangqing’);
4)查找空值举例
select id, nvl(name, 'no name') from user;
10. 复制表
create table emp_wangqing as select * from emp_yuqingqing;
11. distinct关键字:去除重复的
select distinct job from s_emp;
select distinct dptno from s_emp;
12. 大小写问题
1) sql语句大小写不敏感,但是对于数据的大小写敏感
2) lower()函数
select * from user where lower(name) = 'wangqing';
3) upper()函数
select * from user where upper(name) = 'WANGQING';
13. between …and…关键字
1) 为闭区间
2) select * from user where salary <= 10000 and salary >= 5000;
select * from user where salary between 5000 and 10000;
14. in(列表)
select * from user where name = 'wangqing' or name = 'yuqing';
select * from user where name in('wangqing', 'yuqing');
15. 模糊匹配 like % _
1) %代表0到多个字符
2)_代表一个字符
select * from user where lower(job) like '%sale%';
select * from user where lower(name) like '_wang%';
查询数据库中有多少个以'S_'开头的表
select count(*) from user_tables where table_name like 'S\_%' escape '\';
15. 否定形式
1) 判断为空要用 is null 和 is not null
2) not between and
3) not in(list);
16. sql语言分类
1) DDL(data difinition language)数据定义语句
常用:create, drop, alter(修改), truncate(清空)
2) DML(data manipulation language) 数据操纵语句
常用:insert,update(更新操作), delete(删除操作)
3) DQL (data query language) 数据查询语句
常用:select
4) 事物控制语句(用来对DML进行确认操作)
常用:commit, rollback
add:
1.字符串拼接
select first_name||last_name name from s_emp;
- 数据库复习1
- 数据库复习1
- 数据库复习(1)
- 数据库复习1
- 数据库期末复习-(1)
- 数据库复习
- 数据库复习
- 数据库复习
- 数据库复习
- 数据库复习
- 数据库复习
- 数据库复习
- 数据库复习
- 数据库复习
- 数据库复习
- 复习数据库
- 数据库复习
- 数据库复习
- Oracle数据库常用的4个用户以及win7下登录后消失问题解决
- Android访问本机服务器被拒绝的解决方法
- ARM-v7a 上, backtrace()没有输出
- iOS 绘图时使用 UIGraphicsGetCurrentContext() 报错的原因分析
- Mac 操作系统中使用Finder查看文件完整路径的方法
- 数据库复习1
- 项目经理如何分配工作
- 偶尔所得代码片(进程和锁相关)
- CodeForces 221B
- UVA 10911 - Forming Quiz Teams
- 里氏替换原则,派生类(子类)对象能够替换基类(超类)对象被使用
- 里氏替换原则就已经说明了多态的精髓“子类对象可以替换父类对象的位置,而程序的功能不受影响
- plsql developer登录---无法解析指定的连接标识符
- asdsa1221212