一、查询命令:
select 字段名1,字段名2......
from 表名1,表名2...
[where 限定条件]
[group by 字段名
having 分组的限定条件]
[order by 排序方式];
其中[]内的内容为可写内容
1.where中可以对字段名中的值进行限定,查询出符合条件的字段内容
如果把两张不同表的字段名用"="连接起来,则实现了多表连接查询
2.group by 可以根据输入的字段名分组
如果select后出现了group by 后没有定义的字段名,则该条sql语句不能执行
3.having 是对group by 后字段名的限定的关键字
4.order by 是指对查询的信息分为(默认为升序排序)
升序排序 asc
降序排序 desc
二、建表命令
create table [schema.]表名(
字段名 数据类型[默认值][列级约束],
字段2 数据类型[默认值][列级约束],
.....
[表级约束]
)
例如:
create table shop(
id number(7) constraint shop_id_pk primary key,
name varchar2(20) constraint shop_name_nn not null,
price number(10,2) constraint shop_price_nn not null,
referral varchar2(20),
start_date date,
end_date date
);
其中:
1.schema用来指定表创建在哪个用户下。
如果没有提供,默认放在当前用户下
2.数据类型为:
varchar:可变长字符串 所有数据库都可以用的
varchar2:可变长字符串 oracle数据库特有的
char:不可变长字符串
clob:定义大数据的字符串,最大2GB
number:数字类型,如果()有数据例如(8,2)一共八位数,小数位为2位
date:日期类型的数据
blob:二进制数据类型,一般用于保存图片
3.默认值-------插入数据时
default 默认值 例如:age default 0 则age如果没有输入则默认为0
4.约束
primary key----主键约束pk
not null----- 非空约束nn
check 选择性约束ck
unique 唯一性约束uk
foreign key 外键约束fk
可以自定义约束名,方便实现建表之后
constraint 约束自定义名 约束条件名
另外可以建立序列一般用于对表中唯一Id进行插入值
create sequence s_stu_id
start with 1 //从1开始
increment by 1 //每次间隔1
maxvalue 100 //最大值为100
三、插入命令
insert into 表名(字段名1,字段名2....)
values (值1,值2....);
其中:
如果表名后没有()则需要把表中每一个字段名都进行赋值,如果为空则插入null
有括号,则values()里添加与之对应的值
另:也可通过查询命令插入多条数据,例如
insert into s1(id,name,c_id)
select id,last_name,c_id
from s2
where id>10;
注意:这样的插入没有values关键字
四、更新命令
update table
set 字段名=values,字段名=values
where 条件
其中:
如果有where则只修改where 中满足限定条件的信息
否则修改整个表中的数据
五、删除命令
delete [from] table
where 条件;
其中:
如果有where则只删除where 中满足限定条件的信息
否则删除整个表中的数据
select 字段名1,字段名2......
from 表名1,表名2...
[where 限定条件]
[group by 字段名
having 分组的限定条件]
[order by 排序方式];
其中[]内的内容为可写内容
1.where中可以对字段名中的值进行限定,查询出符合条件的字段内容
如果把两张不同表的字段名用"="连接起来,则实现了多表连接查询
2.group by 可以根据输入的字段名分组
如果select后出现了group by 后没有定义的字段名,则该条sql语句不能执行
3.having 是对group by 后字段名的限定的关键字
4.order by 是指对查询的信息分为(默认为升序排序)
升序排序 asc
降序排序 desc
二、建表命令
create table [schema.]表名(
字段名 数据类型[默认值][列级约束],
字段2 数据类型[默认值][列级约束],
.....
[表级约束]
)
例如:
create table shop(
id number(7) constraint shop_id_pk primary key,
name varchar2(20) constraint shop_name_nn not null,
price number(10,2) constraint shop_price_nn not null,
referral varchar2(20),
start_date date,
end_date date
);
其中:
1.schema用来指定表创建在哪个用户下。
如果没有提供,默认放在当前用户下
2.数据类型为:
varchar:可变长字符串 所有数据库都可以用的
varchar2:可变长字符串 oracle数据库特有的
char:不可变长字符串
clob:定义大数据的字符串,最大2GB
number:数字类型,如果()有数据例如(8,2)一共八位数,小数位为2位
date:日期类型的数据
blob:二进制数据类型,一般用于保存图片
3.默认值-------插入数据时
default 默认值 例如:age default 0 则age如果没有输入则默认为0
4.约束
primary key----主键约束pk
not null----- 非空约束nn
check 选择性约束ck
unique 唯一性约束uk
foreign key 外键约束fk
可以自定义约束名,方便实现建表之后
constraint 约束自定义名 约束条件名
另外可以建立序列一般用于对表中唯一Id进行插入值
create sequence s_stu_id
start with 1 //从1开始
increment by 1 //每次间隔1
maxvalue 100 //最大值为100
三、插入命令
insert into 表名(字段名1,字段名2....)
values (值1,值2....);
其中:
如果表名后没有()则需要把表中每一个字段名都进行赋值,如果为空则插入null
有括号,则values()里添加与之对应的值
另:也可通过查询命令插入多条数据,例如
insert into s1(id,name,c_id)
select id,last_name,c_id
from s2
where id>10;
注意:这样的插入没有values关键字
四、更新命令
update table
set 字段名=values,字段名=values
where 条件
其中:
如果有where则只修改where 中满足限定条件的信息
否则修改整个表中的数据
五、删除命令
delete [from] table
where 条件;
其中:
如果有where则只删除where 中满足限定条件的信息
否则删除整个表中的数据