Mysql相关名词

记录:
        查询与理解.
1.数据库相关名词

序号名词解释
1Database数据库
2数据库1.是按照数据结构来组织、存储和管理数据的仓库
2.每个数据库都有一个或多个不同的 API 用于创建,访问,管理,搜索和复制所保存的数据。
3RDBMSRelational Database Management System:关系数据库管理系统。
4关系型数据库1.建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。
2.数据以表格的形式出现
3.每行为各种记录名称
4.每列为记录名称所对应的数据域
5.许多的行和列组成一张表单
6.若干的表单组成database
5数据库数据库是一些关联表的集合
6数据表表是数据的矩阵,在一个数据库中的表看起来像一个简单的电子表格
7一列(数据元素) 包含了相同类型的数据。
8一行(=元组,或记录)是一组相关的数据。
9冗余存储两倍数据,冗余降低了性能,但提高了数据的安全性。
10主键主键是唯一的。一个数据表中只能包含一个主键。
11外键主键是唯一的。一个数据表中只能包含一个主键。你可以使用主键来查询数据
12复合键复合键(组合键)将多个列作为一个索引键,一般用于复合索引。
13索引使用索引可快速访问数据库表中的特定信息。索引是对数据库表中一列或多列的值进行排序的一种结构。
14参照完整性参照的完整性要求关系中不允许引用不存在的实体
15时间类型TINYINT SMALLINT MEDIUMINT INT或INTEGER BIGINT
FLOAT DOUBLE DECIMAL
16日期和时间类型DATE TIME YEAR DATETIME TIMESTAMP
17字符串类型CHAR VARCHAR TINYBLOB TINYTEXT BLOB
TEXT MEDIUMBLOB MEDIUMTEXT LONGBLOB LONGTEXT
18事务1.用于处理操作量大,复杂度高的数据.
2.在MySQL中只有使用了Innodb数据库引擎的数据库或表才支持事务.
3.事务处理可以用来维护数据库的完整性,保证成批的SQL语句要么全部执行,要么全部不执行.
4.事务用来管理 insert,update,delete 语句
19ACIDAtomicity:原子性
Consistency:一致性
Isolation:隔离性
Durability:持久性
20原子性一个事务(transaction)中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节.事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状态,就像这个事务从来没有执行过一样.
21一致性在事务开始之前和事务结束以后,数据库的完整性没有被破坏.
22隔离性数据库允许多个并发事务同时对其数据进行读写和修改的能力,隔离性可以防止多个事务并发执行时由于交叉执行而导致数据的不一致.
23持久性事务处理结束后,对数据的修改就是永久的,即便系统故障也不会丢失.
24事务隔离级别读未提交(Read uncommitted)
读提交(read committed)
可重复读(repeatable read)
串行化(Serializable)
25SQLStructured Query Language 用于访问和处理数据库的标准的计算机语言
26SQL功能面向数据库执行查询
可从数据库取回数据,可在数据库中插入新的记录
可更新数据库中的数据,可从数据库删除记录
可创建新数据库,可在数据库中创建新表
可在数据库中创建存储过程,可在数据库中创建视图
可以设置表,存储过程和视图的权限

2.SQL关键字名词

序号名词功能描述sql例子
1SELECTSELECT 语句用于从数据库中选取数据,结果被存储在一个结果表中,称为结果集SELECT column_name1,column_name2 FROM table_name;
2INSERT INTO用于向表中插入新记录全字段:
INSERT INTO table_name VALUES (value1,value2,...);
部分字段:
INSERT INTO table_name (column1,column2,...)
VALUES (value1,value2,...);
3UPDATE用于更新表中已存在的记录UPDATE table_name
SET column1=value1,column2=value2,...
WHERE some_column=some_value;
4DELETE用于删除表中的行DELETE FROM table_name WHERE some_column=some_value;
5WHEREWHERE 子句用于过滤记录SELECT column_name1,column_name2
FROM table_name WHERE column_name1 operator value;
6DISTINCT用于返回唯一不同的值SELECT DISTINCT column_name1,column_name2 FROM table_name;
7AND如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录。SELECT column_name1,column_name2
FROM table_name WHERE  column_name1>1 AND  column_name1>5 ;
8OR如果第一个条件和第二个条件中只要有一个成立,则 OR 运算符显示一条记录。SELECT column_name1,column_name2
FROM table_name WHERE  column_name1>1 OR  column_name1>5 ;
9ORDER BYORDER BY 关键字用于对结果集按照一个列或者多个列进行排序ASC升序排列,DESC降序排列:
SELECT column_name1,column_name2
FROM table_name ORDER BY column_name1,column_name2 ASC;
10LIMIT用于规定要返回的记录的数目(MySql)SELECT column_name1,column_name2 FROM table_name LIMIT 100;
11ROWNUM用于规定要返回的记录的数目(Oracle)SELECT column_name1,column_name2 FROM table_name WHERE ROWNUM<100;
12LIKE用于在WHERE子句中搜索列中的指定模式SELECT *  FROM table_name WHERE column_name1 LIKE '%zbz%';
13NOT LIKE用于在WHERE子句中搜索列中的指定模式SELECT *  FROM table_name WHERE column_name1 NOT LIKE '%zbz%';
14REGEXP用于在WHERE子句中搜索列中的指定模式SELECT * FROM table_name WHERE column_name1 REGEXP '^[A]';
15NOT REGEXP用于在WHERE子句中搜索列中的指定模式SELECT * FROM table_name WHERE column_name1 REGEXP '[A]';
16ININ 操作符允许在WHERE子句中规定多个值SELECT column_name1,column_name2 FROM table_name WHERE column_name1 IN (value1,value2,...);
17NOT INNOT IN 操作符允许在WHERE子句中规定多个值SELECT column_name1,column_name2 FROM table_name WHERE column_name1 NOT IN (value1,value2,...);
18BETWEEN操作符选取介于两个值之间的数据范围内的值SELECT *  FROM table_name WHERE column_name BETWEEN value1 AND value2;
19AS可以为表名称或列名称指定别名SELECT column_name AS alias_name FROM table_name;
SELECT column_name(s) FROM table_name AS alias_name;
20JOINJOIN 子句用于把来自两个或多个表的行结合起来,基于这些表之间的共同字段SELECT * FROM TableA  A  JOIN SELECT * FROM TableB  B ON A.KEY = B.KEY;
21INNER JOININNER JOIN关键字在表中存在至少一个匹配时返回行SELECT * FROM table1 INNER JOIN table2
ON table1.column_name=table2.column_name;
22LEFT JOINLEFT JOIN 关键字从左表table1返回所有的行,即使右表table2中没有匹配。如果右表中没有匹配,则结果为 NULL。SELECT column_name(s) FROM table1 LEFT JOIN table2
ON table1.column_name=table2.column_name;
23RIGHT JOINRIGHT JOIN 关键字从右表table2返回所有的行,即使左表table1中没有匹配。如果左表中没有匹配,则结果为 NULL。SELECT column_name(s) FROM table1 RIGHT JOIN table2
ON table1.column_name=table2.column_name;
24FULL JOINFULL OUTER JOIN 关键字只要左表table1和右表table2其中一个表中存在匹配,则返回行SELECT column_name(s) FROM table1 FULL OUTER JOIN table2
ON table1.column_name=table2.column_name;
25UNION操作符用于合并两个或多个 SELECT 语句的结果集
1.UNION内部的每个SELECT语句必须拥有相同数量的列
2.列也必须拥有相似的数据类型
3.每个 SELECT 语句中的列的顺序必须相同
4.默认地,UNION操作符选取不同的值
SELECT column_name(s) FROM table1
UNION
SELECT column_name(s) FROM table2;
26UNION ALL操作符用于合并两个或多个 SELECT 语句的结果集
1.允许重复的值,请使用 UNION ALL
SELECT column_name(s) FROM table1
UNION ALL
SELECT column_name(s) FROM table2;
27CREATE TABLE AS从一个表复制数据,然后把数据插入到另一个新表中CREATE TABLE 新表 AS SELECT * FROM 旧表
28INSERT INTO SELECT从一个表复制数据,然后把数据插入到一个已存在的表中INSERT INTO table2 SELECT * FROM table1;
29CREATE DATABASECREATE DATABASE dbnameCREATE DATABASE dbname
30CREATE TABLE用于创建数据库中的表CREATE TABLE `t_girl` (
  `GIRL_ID` BIGINT(64) DEFAULT NULL COMMENT 'ID号',
  `GIRL_NAME` VARCHAR(64) COLLATE utf8_bin DEFAULT NULL COMMENT '姓名',
  `AGE` BIGINT(16) DEFAULT NULL COMMENT '年龄'
) ENGINE=INNODB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='女孩信息';
31NOT NULL约束强制列不接受NULL 值CREATE TABLE `t_girl_a` (
  `GIRL_ID` BIGINT(16) NOT NULL COMMENT 'ID号',
  `GIRL_NAME` VARCHAR(64) COLLATE utf8_bin DEFAULT NULL COMMENT '姓名',
  `AGE` int(6) DEFAULT NULL COMMENT '年龄'
) ENGINE=INNODB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='女孩信息';
32UNIQUE约束唯一标识数据库表中的每条记录CREATE TABLE `t_girl_a` (
  `GIRL_ID` BIGINT(16) NOT NULL COMMENT 'ID号',
  `GIRL_NAME` VARCHAR(64) COLLATE utf8_bin DEFAULT NULL COMMENT '姓名',
  `AGE` int(6) DEFAULT NULL COMMENT '年龄',
  UNIQUE `t_girl_a_girl_id` (GIRL_ID)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='女孩信息';
33PRIMARY KEY约束唯一标识数据库表中的每条记录
主键必须包含唯一的值与主键列不能包含NULL值
CREATE TABLE `t_girl_a` (
  `GIRL_ID` BIGINT(16) NOT NULL COMMENT 'ID号',
  `GIRL_NAME` VARCHAR(64) COLLATE utf8_bin DEFAULT NULL COMMENT '姓名',
  `AGE` INT(6) DEFAULT NULL COMMENT '年龄',
  PRIMARY KEY `pk_t_girl_a_girl_id` (GIRL_ID)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='女孩信息';
34FOREIGN KEY一个表中的 FOREIGN KEY 指向另一个表中的 UNIQUE KEY(唯一约束的键)CREATE TABLE `t_girl_b` (
  `G_ID` BIGINT(16) NOT NULL COMMENT 'ID号',
  `GIRL_NAME` VARCHAR(64) COLLATE utf8_bin DEFAULT NULL COMMENT '姓名',
   PRIMARY KEY (G_ID),
   CONSTRAINT fk_a_b FOREIGN KEY (G_ID) REFERENCES t_girl_a(GIRL_ID)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='女孩信息';
35DEFAULT约束用于向列中插入默认值CREATE TABLE `t_girl_a` (
  `GIRL_ID` BIGINT(16) NOT NULL COMMENT 'ID号',
  `GIRL_NAME` VARCHAR(64) DEFAULT NULL  COMMENT '姓名',
  `AGE` INT(6) DEFAULT '12'  COMMENT '年龄'
) ENGINE=INNODB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='女孩信息';
36CREATE INDEX在不读取整个表的情况下,索引使数据库应用程序可以更快地查找数据CREATE INDEX IDX_GIRL_ID ON t_girl_a (GIRL_ID);
37CREATE UNIQUE INDEX在不读取整个表的情况下,索引使数据库应用程序可以更快地查找数据CREATE UNIQUE INDEX U_IDX_GIRL_ID ON t_girl_a (GIRL_ID);
38DROP INDEX用于删除表中的索引ALTER TABLE table_name DROP INDEX index_name;
39DROP TABLE用于删除表DROP TABLE table_name;
40DROP DATABASE用于删除数据库DROP DATABASE database_name;
41TRUNCATE TABLE删除表内的数据TRUNCATE TABLE table_name;
42ALTER TABLE ADD用于在已有的表中添加列ALTER TABLE table_name ADD column_name datatype;
ALTER TABLE t_girl_a ADD CUP  INT(6) DEFAULT NULL COMMENT '罩杯';
43ALTER TABLE DROP用于在已有的表中删除列ALTER TABLE table_name DROP COLUMN column_name;
ALTER TABLE t_girl_a DROP CUP;
44ALTER TABLE MODIFY改变表中列的数据类型ALTER TABLE table_name MODIFY COLUMN column_name datatype;
ALTER TABLE t_girl_a MODIFY COLUMN CUP INT(8) DEFAULT NULL COMMENT '罩杯';
45AUTO_INCREMENT每次插入新记录时,自动地创建主键字段的值CREATE TABLE `t_girl_a` (
  `GIRL_ID` BIGINT(16) NOT NULL AUTO_INCREMENT COMMENT 'ID号',
  `GIRL_NAME` VARCHAR(64) COLLATE utf8_bin DEFAULT NULL COMMENT '姓名',
  `AGE` INT(6) DEFAULT NULL COMMENT '年龄',
   PRIMARY KEY `pk_t_girl_a_girl_id` (GIRL_ID)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='女孩信息';
46CREATE VIEW视图是基于 SQL 语句的结果集的可视化的表CREATE VIEW view_name AS SELECT column_name(s) FROM table_name
 WHERE condition;
CREATE VIEW v_t_girl_a AS SELECT * FROM t_girl_a;
47CREATE OR REPLACE VIEW更新视图CREATE OR REPLACE VIEW view_name AS SELECT column_name(s)
FROM table_name WHERE condition;
CREATE OR REPLACE VIEW v_t_girl_a AS SELECT GIRL_ID,GIRL_NAME
FROM t_girl_a;
48DROP VIEW删除视图DROP VIEW view_name;
49SHOW CREATE TABLE查看建表语句SHOW CREATE TABLE table_name;
50IS NULL为nullSELECT * FROM t_girl_a WHERE GIRL_NAME IS NULL;
51IS NOT NULL不为nullSELECT * FROM t_girl_a WHERE GIRL_NAME IS NOT NULL;
52GROUP BY用于结合聚合函数,根据一个或多个列对结果集进行分组SELECT column_name, aggregate_function(column_name)
FROM table_name WHERE column_name operator value
GROUP BY column_name;
53HAVINGSQL中增加HAVING 子句原因是,WHERE关键字无法与聚合函数一起使用,HAVING子句可以让我们筛选分组后的各组数据SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name
HAVING aggregate_function(column_name) operator value;

以上,感谢.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值