这些都是我个人收藏总结的,方便忘了的时候查找~虽然很简单,但是还是分享一下~
student表:id、name、password、age
1、SELECT 列名称 FROM 表名称
查询student表的所有信息:sql>SELECT * FROM student;
1.1、SELECT 列名称 FROM 表名称 WHERE 列 运算符 值
查询student表的ID=10的列:sql>SELECT * FROM student WHERE id = '10';
1.2、表分区查询:select * from 表名 partition(分区名);
1.3、 查询student表,以ID升序排列:sql>SELECT * FROM student ORDER BY id;
降序表列:sql>SELECT * FROM student ORDER BY id DESC;
1.4、查找fox表空间的student表中 password为包含数字23的信息:sql>select * from fox.student where password like "#%";
1.5、查询fox表空间student表中id等于41,40的信息:sql>select * from fox.student where id in (41,40);
1.6、SELECT 列名称 FROM 表名称 WHERE 列名称 BETWEEN value1 AND value2
注:介于 "value1"(包括)和 "value2"(不包括)之间的数据
1.7、SELECT 列名称 FROM 表名称 AS 表的别名
SELECT 列名称 AS 列的别名 FROM 表名称
将student别名为学生,name别名为名字:sql>SELECT name AS 名字 FROM student AS 学生;
注:此命令仅是显示为学生、名字,但是没有这样的属性和链接,AS可以省略。
常用:sql>SELECT s.id,s.name FROM student s;
2、INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)
在student表中插入一行:sql>INSERT INTO student (id,name,age) VALUES(9,zhangsan,18);
3、UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值
把student表中id=9的用户name更改为lisi:sql>UPDATE student SET name = 'lisi' WHERE id = '9';
把org_role表中role_text=in中的所有sys_role更改为0:sql>UPDATE org_role SET sys_role = 0 WHERE role_text in ('地址管理员','地址段申请人','IP申请人');
4、DELETE FROM 表名称 WHERE 列名称 = 值
删除student表中id=9的用户:sql>DELETE FROM student WHERE id = '9';
5、 删除mysql 数据库中的student表:sql>DROP TABLE mysql.student ;
删除mysql 数据库中的student表的内容:sql>truncate table mysql.student drop storage;
6、ALTER TABLE 语句用于在已有的表中添加、修改或删除列。
如需在表中添加列:sql>ALTER TABLE table_name ADD column_name datatype
要删除表中的列:sql>ALTER TABLE table_name DROP COLUMN column_name
注释:某些数据库系统不允许这种在数据库表中删除列的方式 (DROP COLUMN column_name)。
要改变表中列的数据类型:sql>ALTER TABLE table_name ALTER COLUMN column_name datatype
9、唯一键:unique
1)创建表时加入:constraint name_unique unique(name)
可以多个值:constraint name_unique unique(fname,lname)
2)手动修改:alter table table_name add constraint name_unique unique(name)
10、创建表空间:CREATE DATABASE database_name
创建表:
CREATE TABLE Student (
id int NOT NULL auto_increment,
username varchar(200) NOT NULL,
password varchar(20) NOT NULL,
age int,
PRIMARY KEY (id)
) ENGINE=MyISAM DEFAULT CHARSET=GBK;
注意:这个是MySQL数据库的建表语句。这个表有一个自增的ID列作为主键,还有用户名,密码和年龄三个列,最后一句ENGINE=MyISAM DEFAULT CHARSET=GBK指定了表的默认字符集是GBK中文字符,这一句是MySQL特有的语法。
11、创建序列号:
CREATE SEQUENCE SEQ_FOR_flyfox_person
MINVALUE 1 --最小值为1
INCREMENT BY 1 --每次加1
NOMAXVALUE --没有最大值限制
CACHE 10
NOORDER
NOCYCLE --一直累加,不循环
;
12、创建触发器:
CREATE OR REPLACE TRIGGER "TRI_FOR_flyfox_person"
before insert on flyfox_person--在表执行插入语句之前
for each row--基于一行数据,等下还有基于列的
DECLARE
begin
select seq_for_flyfox_person.nextval into :new.id--我们将产生的下个序列的值赋给要插入数据行的主键
from dual;
end;
/
ALTER TRIGGER "TRI_FOR_flyfox_person" ENABLE;
13、删除表空间 - drop tablespace tablespace_name including contents ;
14、删除用户(用户下存在对象,表示要连带对象一起删除) - drop user SCM20 cascade ;
15、删除序列号:sql> drop sequence SEQ_FOR_flyfox_person;
99、%替代一个或多个字符;_仅替代一个字符;BETWEEN ... AND 会选取介于两个值之间的数据范围;NOT NULL 约束强制列不接受 NULL 值。
----------------------------------------------------------------------------------------------------------
IMP导入语句 nohup imp ultranms/ultranms fromuser=ultranms touser=ultranms ignore=y log=./20100325.log file=/export/oracle/ultranms20110325.dmp &
用户名/密码 fromuser=从用户名 touser=到用户名 ignore=y(忽略错误) log=日志文件 file=导入文件路径+名称
EXP导出语句nohup exp ultranms/ultranms file=/data/orabak_exp/ultranms20110412.dmp log=/data/orabak_exp/ultranms20110412.log full=y direct=y &
用户名/密码 file=导出文件路径+导出文件名 log=日志文件路径+日志文件名 full=y(导出所有数据)direct=y
查询用户:
select * from all_users;
select * from dba_users;