1.关系型数据库的组织原则是表格.
2.数据分别存储在一些相关的二维表中.
3.每个表包含某个特定主题的数据.
4.表与表之间是通过主外键关联.
1.最初开发者为瑞典MySQLAB公司,如今被SUN公司收购,并且开放源码。
2.MySQL是一个小型关系型数据库管理系统。
3.MySQL是一个支持多用户、多线程SQL数据库服务器。
4.使用C和C++编写,支持Linux、Mac 0S、Solaris、Windows等多种操作系统。
1.建立用户:
CREATE USER user_name IDENTIFIED BY password;如:
CREATE USER test IDENTIFIED BY’test’;
2.删除用户:
DROP[user_name];如:
DROP test;
3.赋予用户权限:
GRANT[options]ON[databases]TO[user]IDENTIFIED BY
[password WITH GRANT OPTION;如:
GRANT ALL PRIVILEGES ON.TO‘test’@’%'IDENTIFIED BY test’WITH GRANT OPTION;
4.取消用户权限:
REVOKE[option_1,option 2.……JFROM[user];如:
REVOKE ALL PRIVILEGES,GRANT OPTION FROM test;
如:
CREATE TABLE emp(
EMPNO smallint(4)NOT NULL auto_increment,ENAME varchar(10)default NULL,JOB varchar(9)default NULL,MGR bigint(4)default NULL,HIREDATE date default NULL,SAL double(7,2)default NULL,COMM double(7,2)default NULL,DEPTNO smallint(2)default NULL,PRIMARY KEY(EMPNO)
)ENGINE=InnoDB AUTO_INCREMENT=7935 DEFAULT CHARSET=gbk;
ALTER TABLE emp ADD CONSTRAINT fk deptno FOREIGN KEY(deptno)REFERENCES dept(deptno);
3.删除数据库:
DROP DATABASE[database_name];如:
CREATE DATABASE test;
4.删除数据表:
DROP TABLE[table_name];如:
DROP TABLE emp;删除数据表时,要注意数据表的主从关系。
1.开始事务:
START TRANSACTION;
2.提交事务:
COMMIT;
3.设置事务自动提交:
SET AUTOCOMMIT=0/1;
0:表示取消自动提交;
1:表示开启自动提交;
4.设置事务回滚点:
SAVEPOINT[rollback_name];如:
SAVEPOINTr_1;
5.回滚事务:
ROLLBACK TO[rollback_name];如:
ROLLBACK TOr_1;
6.释放回滚事务:
RELEASE SAVEPOINT[rollback_name];
7.数据的迁移:
7.1:CREATE TABLE[table_name]AS SELECTFROM
[SEHCMA].[table_name];如:
CREATE TABLE mytable AS SELECTFROM test.emp;**
7.2:
INSERT INTO[table name]SELECTFROM
[SEHCMA].[table_name];如:
insert into emp_1 selectfrom emp;**
8.添加新数据:
INSERT INTO[table_name]VALUES(V_1,V_2.…….V_N);INSERT INTO[table_name](COL_1,COL_2….COL_N)
VALUES(V_1,V_2…….V_N);INSERT INTO[table_name]VALUES(V_1,V_2.…….V_N),
(V_1,V2….V_N),(V_1,V_2….V_N)………
9.更新数据:
UPDATE[table name]SET col name_1=value_1,col name_1
=value_1,col_name_1=value_1……
WHERE[condition];
10.删除数据:
DELETE FROM[table_name];
DELETE FROM[table name]WHERE[condition];
11.删除数据:
TRUNCATE TABLE[table_name];
1.查询语句:
SELECT[col name1,col_name1,col_name1.……]
FROM[table name]WHERE[condition];
2.数据排序:
ORDER BY ASC/DESC
3.数据的分组:
GROUP BY[col_name]HAVIN[condition]
4.聚合函数:
MAX、MIN、AVG、COUNT、SUM
5.查询中用到的关键字:
LIKE、IN、BETWEEN…AND…、
6.查询中的运算符:
比较运算符和逻辑运算符
7.子查询:
单行子查询、多行子查询、相关子查询
8.连接查询:
自连接查询、内连接查询、(左/右)外连接查询
MySQL的三种主要类型:
数值型、字符型、时间型
UNSIGNED代表无符号。
ZEROFILL 代表为该值添加零。并自动将其变为UNSIGNED
语法格式:
CREATE[OR REPLACE]VIEW[模式.]视图名称
AS SELECT 子查询
例如:
CREATE OR REPLACE VIEW V_SALESMAN AS SELECTFROM EMP WHERE JOB=‘SALESMAN’;*
更改视图
alter view 视图名
as select 语句
删除视图
drop view 视图名
优点:
缺点和使用原则:
CREATE[UNIQUE]INDEX[schema.]索引名ON{[schema.]表名(column[ASCIDESC]I,column[ASCIDESC]]…)}
DROP INDEX[schema.]索引名ON表名ALTER TABLE TBALE NAME DROP INDEX INDEX NAME