█ create database 数据库名 创建数据库 █ creat table 表名 ( 键名 数据类型(长度) 属性 创建表 );
█ drop table表名 删除表
█ alter table 表名 ADD 列名 数据类型(长度) 属性 添加列
█ alter table 表名 modify 列名 数据类型(长度) 属性 修改列 的数据类型
█ alter table 表名 rename column 列名 to 新列名 修改列名 █ alter table learnsql drop column ceshi 删除列
█ rename 表名 to 新表名 修改表名
█ truncate from 表名 清空表 |
|||
●在oracle下int型的不需要指定长度 ● oracle中日期的函数: TO_DATE('1999-11-11','YYYY-MM-DD') ● SQL下旧表生成新表的语法是 Select * into 新表名 from 旧表名 |
|||
-----------------------DML操作------------------------
█ Insert to 表名 (列1,列2,列N) values('x','y','z') 插入语句
Tips:(列1,列2,列N) 也可以不写,但是后面的values要和数据库中的顺序对应
█ update learnsql set 列='新的值' ,列='新的值' where 条件 修改语句
█ delete from 表名 where 条件 删除语句
█ select distinct 列名 from 表名 查询语句,并且去掉查询到的表中的重复数据
█ select * from 表名 where 条件 order by 列名 asc 查询后根据列名升序排放
█ select * from 表名 where 条件 order by 列名 desc 查询后根据列名降序排放
------------------------------------------------模糊查询----------------------------------------------
█ SELECT * FROM 表名 WHERE 列名 LIKE 'A%' 查询列中是否有A~~的数据,%表示可有可无,多少无所谓
█ SELECT * FROM 表名 WHERE 列名 LIKE 'A_' 查询列中是否有A~的数据,_表示A后只能有一个字符。
------------------------------------------------联接查询(多表)----------------------------------------------
█ select *(或者列名) from 表1 表1别名 join 表2 表2别名 on 别1.* = 别2.* join 表3 表3别名 on 别1或2.* = 别3.* 内联接 查询的结果放到同一个表上
█ select *(或者列名) from 表1 表1别名, 表2 表2别名,表3 表3别名 where 别1.* = 别2.* and
别1或2.* = 别3.* 内联接 查询的结果放到同一个表上 的第二种写法
█ SELECT * FROM表1 表1别名 NATURAL JOIN表2 表2别名 NATURAL JOIN t_course 表3 表3别名(别名好像能忽略) 自然联接
-------------------------------------旧表生成新表----------- -
█ create table 表名 as select * from 旧表名 where 条件
Tips:这语句往往用来拷贝一个表 条件一般设置成 where 1=2 这样永久 为假,这样就拷贝了一个空表,不需要再次手工创建,省时省力。
------------------------------------------事务处理---------------------------------------------
SQL:
█ begin trans 开启事物
█ commit trans 提交事物
█ rollback trans 回滚事物
ORACLE:
█ savepoint 保存点 设置保存点
█ commit 提交事物
█ roolback to 回滚点 回滚到某一设置