数据库sql 基础
2017-11-24 19:56
162 查看
高并发(悲观索引和乐观索引) 悲观锁:一个人在操作时,把这个表锁住,不让其他人进行做任何操作,
乐观锁:在表的后边加个vision版本字段,当对这个表进行修改提交时,比对修改和提交的vision的字段的数值是否相等。
要是不相等就提示重新获取数据,进行修改提交。相当于淘宝买东西。
大数据查询: 加索引 index,索引分为聚集索引和非聚集索引, 区别: 表的排列数据是否和索引的排列数据是否相同
事务:是指作为单个逻辑工作单元执行的一系列操作
原子性:事务必须是原子工作单元;对于其数据修改,要么全都执行,要么全都不执行
一致性: 事务在完成时,必须使所有的数据都保持一致状态
隔离性: 由并发事务所作的修改必须与任何其它并发事务所作的修改隔离
持久性: 事务完成之后,它对于系统的影响是永久性的。
脏数据:A事务读取B事务尚未提交的更改数据,并在这个数据的基础上操作
group by having order by asc(升序) desc(降序) distinct(去重) left join right join (where order by)
select * from Table
update 表名称 set 列名称 = 新值 where 列名称 = 某值
insert into 表名称 values(值1,值2...) // iinsert into 表名称(列1,列2,...)values(值1,值2...)
delete from 表名称 where 列名称=值
select * from persons where city like‘N%’
通配符
% 替代一个或多个字符
_ 仅替代一个字符
[ch] 字符列中的任何单一字符 // 反[^ch] 或 [!ch]
in 使用 SELECT * FROM Persons WHERE LastName IN ('Adams','Carter')
操作符 BETWEEN ... AND 会选取介于两个值之间的数据范围。这些值可以是数值、文本或者日期。
JOIN: 如果表中有至少一个匹配,则返回行
LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行
RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行
FULL JOIN: 只要其中一个表中存在匹配,就返回行
UNION 操作符用于合并两个或多个 SELECT 语句的结果集。
创建表
create table 表
(列名称1.数据类型)
创建数据库
create DB
UNIQUE 约束唯一标识数据库表中的每条记录。
CHECK 约束用于限制列中的值的范围
DEFAULT 约束用于向列中插入默认值
建立索引
CREATE I
8e34
NDEX index_name
ON table_name (column_name)
删除索引
DROP INDEX index_name ON table_name
删除数据库
DROP DATABASE 数据库名称
添加数据列
ALTER TABLE table_name
ADD column_name datatype
复制表
create table 新表 select * from 旧表
只复制表结构到新表
create table 新表 select * from 旧表 where 1 = 2
乐观锁:在表的后边加个vision版本字段,当对这个表进行修改提交时,比对修改和提交的vision的字段的数值是否相等。
要是不相等就提示重新获取数据,进行修改提交。相当于淘宝买东西。
大数据查询: 加索引 index,索引分为聚集索引和非聚集索引, 区别: 表的排列数据是否和索引的排列数据是否相同
事务:是指作为单个逻辑工作单元执行的一系列操作
原子性:事务必须是原子工作单元;对于其数据修改,要么全都执行,要么全都不执行
一致性: 事务在完成时,必须使所有的数据都保持一致状态
隔离性: 由并发事务所作的修改必须与任何其它并发事务所作的修改隔离
持久性: 事务完成之后,它对于系统的影响是永久性的。
脏数据:A事务读取B事务尚未提交的更改数据,并在这个数据的基础上操作
group by having order by asc(升序) desc(降序) distinct(去重) left join right join (where order by)
select * from Table
update 表名称 set 列名称 = 新值 where 列名称 = 某值
insert into 表名称 values(值1,值2...) // iinsert into 表名称(列1,列2,...)values(值1,值2...)
delete from 表名称 where 列名称=值
select * from persons where city like‘N%’
通配符
% 替代一个或多个字符
_ 仅替代一个字符
[ch] 字符列中的任何单一字符 // 反[^ch] 或 [!ch]
in 使用 SELECT * FROM Persons WHERE LastName IN ('Adams','Carter')
操作符 BETWEEN ... AND 会选取介于两个值之间的数据范围。这些值可以是数值、文本或者日期。
JOIN: 如果表中有至少一个匹配,则返回行
LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行
RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行
FULL JOIN: 只要其中一个表中存在匹配,就返回行
UNION 操作符用于合并两个或多个 SELECT 语句的结果集。
创建表
create table 表
(列名称1.数据类型)
创建数据库
create DB
UNIQUE 约束唯一标识数据库表中的每条记录。
CHECK 约束用于限制列中的值的范围
DEFAULT 约束用于向列中插入默认值
建立索引
CREATE I
8e34
NDEX index_name
ON table_name (column_name)
删除索引
DROP INDEX index_name ON table_name
删除数据库
DROP DATABASE 数据库名称
添加数据列
ALTER TABLE table_name
ADD column_name datatype
复制表
create table 新表 select * from 旧表
只复制表结构到新表
create table 新表 select * from 旧表 where 1 = 2
相关文章推荐
- 数据库基础及常用SQL语句
- sql_设置权限_数据库基础
- 1.sql 数据据基础_数据库的组成
- SQL基础之数据库快照
- SQL语句大全从基础到熟练(不含数据库高端操作)日常用户 三、
- .NET面试题解析(11)-SQL语言基础及数据库基本原理
- 数据库orcale (sql基础) 第一天
- 数据库系列之T-SQL(基础)
- 数据库基础和T-SQL语句编程
- 数据库学习笔记---SQL基础-->层次化查询(START BY ... CONNECT BY PRIOR)
- 数据库基础学习3-T-SQL语句
- 数据库&SQL基础概要
- 数据库sql一些常考基础命令
- 数据库基础和T-SQL语句编程
- 数据库基础学习----SQL语句的连接方式
- 【数据库】PL/SQL自动创建基础sql语句
- Oracle数据库编程:PL/SQL编程基础
- 关系数据库标准语言SQL基础2
- 【SQL基础教程】数据库学习笔记
- SQL点滴17—使用数据库引擎存储过程,系统视图查询,DBA,BI开发人员必备基础知识