oracle表的管理
表名和列的命名规则
必须以字母开头;
长度不能超过30字符;
不能使用oracle的保留字;
只能使用如下字符:A-Z,a-z,0-9,$,#等;
数据类型:
字符型:
char 定长 最大2000字符。
例如:char(10) '小韩' 前四个字符放‘小韩’,后添加6个空格补全“小韩 ”-------查询速度快。
数字型:
number:范围 10的-38次方到10的38次方,可以表示整数,也可以表示小数。
number(5,2)
表示一个小数有5为有效数字,2位小数范围。-999.99——999.99
number(5)
表示一个5为整数
范围:-99999——99999
日期类型:
date 包含年月日和时分秒
timestamp 对date数据类型的拓展。
图片:
bop 二进制数据,可以存放图片、声音、4G
建表
--学生表
sql>create table student( --表名
xh numer(4); --学号
xm varchar(20), --姓名
sex char(2), --性别
birthday date, --出生日期
sal number(7,2) --奖学金
);
SQL> create table student( -----新建表
2 xh number(4),
3 xm varchar2(20),
4 sex char(2),
5 birthday date,
6 sal number(7,2)
7 );
Table created
SQL> create table class(
2
SQL> create table class(
2 classid number(2),
3 cname varchar2(20));
Table created
SQL> select * from class;
CLASSID CNAME
------- --------------------
SQL> select * from student;
XH XM SEX BIRTHDAY SAL
----- -------------------- --- ----------- ---------
SQL> alter table student add(classId number(2)); -----添加新的一列
Table altered
SQL> desc student; -----查询表的类型
Name Type Nullable Default Comments
-------- ------------ -------- ------- --------
XH NUMBER(4) Y
XM VARCHAR2(20) Y
SEX CHAR(2) Y
BIRTHDAY DATE Y
SAL NUMBER(7,2) Y
CLASSID NUMBER(2) Y
SQL> alter table student modify(xm varchar2(20)); ------修改字段的长度
Table altered
SQL> alter table student modify(xm char(30)); ------修改字段的类型
Table altered
SQL> alter table student drop clumn sal; ----删除一个字段(轻易勿动)
SQL> rename student to stu; --修改表的名称
Table renamed
SQL>drop table student; -------删除表
添加数据
SQL> savepoint aa; --创建savepoint(设置保存点)
Savepoint created
SQL> rollback to aa;------回滚(恢复保存点之前的数据)
表的查询
sql函数
字符函数:
lowe(char):将字符转化成小写的格式;
upper(char):将字符转化成大写的格式;
length(char):返回字符串的长度;
substr(char):取字符串的子串
replace(char1,search_string ,replace_string):替换
instr(char1,char2,[,n[,m]]);找字符串的位置
数学函数:
round(n,[m]) 执行四舍五入,如果省略m,则四舍五入到整数;如果m是正数,则四舍五入到小数点的m位后,如果m是负数,则四舍五入到小数点的m位前;
trunc(n,[m]) 截取数字,如果省略m,就截掉小数部分,如果m是正数就截取到小数点的位后,如果M是负数,则截取到小数点的前m位。
mod(m,n);
floor(n) 返回小于或是等于n的最大整数;
ceil(n) 返回大于或是等于n的最小整数。
日期函数:
处理date类型的数据。
sysdate:返回系统时间
add_months(d,n)