SQL 上
非关系型数据库
NOSQL
关系型数据库
SQL(结构化查询语言)
主要是MySQL(关键字不区分大小写 建议大写)
操作的方式不同分为
**DDL(Data Definition Language)数据定义语言
用来创建 ,删除,修改数据库中的对象(表格,用户,索引,视图,存储过程,触发器)
creat 创建 drop 删除 alert 修改
**DML(Data Manipulation Languafe)数据库操作语言
用来操作数据库表格之中的具体数据
写数据 inseret 新增 delete 删除 updata 修改
读数据 select 查询
***DQL (Data Query Language )数据查询语言
select where 条件 group by分组 having条件 order by排序
DCL (Data Control Language)数据控制语言
用来控制用户权限 SYSDBA数据库管理员
赋予grank 权限 , 权限 to 用户
回收remoke 权限 ,权限 from 用户
**TPL(Transcation Process Language)事务处理语言
可以理解为多线程并发访问同一个文件资源 带来的安全问题)
begin Transcation
commit 提交
rollback 回滚
save point A 保存还原点
=====================================
安装完毕 找MySQL命令行打开 输入root密码
一个数据库包含多个 小的数据库 database
show databases; 显示当前账户能看到的所有数据库
use database名字; 使用(进入)某个数据库
show tables; 显示当前数据库的所有表格
use table名字; 使用table
exit ; 退出
================================第三节课
SQL 结构化查询语言
DDL Data Definition Language
用来定义数据库中的对象
creat创造 drop 删除 alert 修改
DML Data Manipulation Language
用来操作语言
写 入信息 新增 insert 删除 delete 修改 update
DQL 数据查询 Data Query Language
专门用于查询的
select where group by having order by
DCL数据控制语言
Data Control Language
控制数据库用户的权限
grant revoke
TPL事物处理语言 Transcation process Language
可以理解为多线程并发 操作同一个文件
begin transcation
操作
commit 提交
rollback 回滚
save point 保存还原点
------------------------------------------------------
DDL数据定义语言
1,创建一个database
create alter drop
creat database 数据库名(遵循数据库的规范) 不区分大小写的
2,创建一个表格
creat table 表格名字(
列名 数据类型(长度),
列名 数据类型(长度),
列名 数据类型(长度),
列名 数据类型(长度),
)
3,数据库的数据类型
存储数据的方式来分类 三类
数值型
整数--tinyint smallint mediumint *int 4个字节32bit/intrger bigint
小数--*float 4字节 *double 8字节 decimal numeric
字符串
正常字符串 char字符串 varchar可变字符串 variable可变的
char(4) 只能存储四个字节以内 varchar(4)
a -----不管到不到四个字节 都存储四个 a--一个字节可随机变换、
存储二进制(i基本不用)
binary 二进制 varbinary 可变二进制
blob 二进制大文本 text正常字符串大文本
日期/时间
*data 日期 time 时间 *datatime日期&时间 timestamp 时间戳
都是固定大小的
4,在database创建一个表格
5,通过DDL修改表名,列名,等表格的结构
1,修改表格名字
alter table 原来表名 rename to 新表名
2,修改原来的列名 类型,长度
alter table 原表面 change 原列名 新列名 行类型 新长度 ;
3,新增一个列
alter table 原表名 add 新列名 新类型 新长度;
4,删除原有的列
alter table 原表明 drop 原列名;
6,删除表格
drop table 表名/数据库名字;
===============第四节课===============
DML 操作 语句
写入信息
新增 inseret 删除 delete 查询 select
inseret into 表名 (列名,列名,列名) values (值,值,值);
在加入时间的时候可以写 now() ;
增加一列数据的时候 可以inseret into 表名 values ***********;
其中的数据个数和顺序和类型 ,都一致;
增加两个或者多个列数据 inseret into 表名 values (数据1),(数据2);
----------------字符集 中文的数据---------------------------
按照默认的创建数据库 字符集有默认的字符集--->latin1()
当前的数据库表格之中都按照默认的字符集存储,不能存储中文
可查询数据库是什么字符集
可以创建的时候加入如下:
creat database tast [ default character set =['utf-8'] ;
创建表格的时候 设置字符集,只会吧这个table设置成中文,
其他的table不会被设置;
creat table 名字(
列名 类型(长度),
列名 类型(长度),
)character set utf8 collate utf8_general_ci;
字符集设置 character set utf8
字符排序设置utf8_general_ci;(性能好但是不精确)
或者utf8_unicode_ci;(性能不好但是精确)
显示表格里面的字符集
show table status from 数据库名 like 表名;
----------------------------------------------------------------
删除
delete from 表名 ;
修改
updata 表名 set 列名 = '**';
查询
select 列名,列名 from 表名;
select* from 表名 ;
==============where筛选==========================
除了insert以外的 update delete sleect语句之后
insert into 表 (值,值) values (a,b);
delete from 表 where...;
select 列 from 表where... ;
updata 表 set 列=值 where...;
========================================
where后面的
1,比较运算符有:
>,<,>=,<=,!=,=
2,算数运算符:
xx +-*/ 在比较
3,逻辑运算符
and or not 其中 and 比 or 运算等级高;
其中使用and的时候,AandB会先比较符合A的所有
然后吧符合A的数据比较B。因此为了效率要把条件苛刻的放在前面,
4,[not]between A and B 包含前后端的值 [A,B]效率块
5,where ID [not]in(1,2);id是1 2 的
6,模糊查询
like
%用于代替0-n个字符
_用来代替1个字符集
where name [not] like ‘z%’
以z开头的 name
7,排序
是连接在查询之后的
order by 列名
asc 降序
desc 降序
- Note on <Beginning Microsoft SQL Server 2012 Programming> - 04
- 学学数据库,记记sql
- SQL*Loader之CASE5
- 分页查询(二)——用sql与linq查询
- 根据mysql-bin查看sql
- 如何创建从SQL到Oracle的DBlink
- MySQL客户端、服务器端工具、sql_mode、存储引擎修改、事务的提交和回滚、隔离级别
- 一个Web报表项目的性能分析和优化实践(一):小试牛刀,统一显示SQL语句执行时间
- SQL Server 数据库管理常用的SQL和T-SQL语句
- sql删除表中的记录的方法
- SQL 语句汇总(三)
- Mysql基础(一):SQL基础
- 省市地区的二级分类SQL脚本(含数据)
- mybatis使用log4j输出sql语句的配置
- hive的SQL总结
- mysql之sql语法基本使用
- 使用sqltrace跟踪session执行的sql
- SQL面试题-行列互换-if、【case when】
- SQL语句优化分析
- mybatis学习笔记(8)-动态sql