MySQL知识点

默认端口号3306

启动/关闭MySQL数据库


cmd命令行

后面的CHARACTER为数据库的编码方式设置,否则的话按照数据库本身的默认编码方式;

其中,DATE一般表示日期范围:1000.01.01~9999.12.31;

DATETIME:1000.01.01 00:00:00~9999.12.31 23:59:59;

TIMESTAMP时间戳:1970年1月1日零点~2037年

其中,CHAR类型表示定长的字符型,对于没达到该长度的字符,用空格补齐;

VARCHAR表示变长的字符型;


==================1  创建数据表 CREATE   ==================


使用USE命令打开一个数据库;使用SELECT DATABASE();命名查看当前打开的数据库,如上图所示;


=2=查看数据表



=3=查看数据表的列(字段)信息




=4=向表中插入行(记录)信息



=5=查找相应的记录信息



=6=字段的相关约束



空与非空
自动编号约束
主键约束

自动编号约束必须与主键约束同时使用,而主键约束可以独自使用;且主键约束一张表只能有一个,且不能为空值;

唯一约束

唯一约束一张表可以有多个,可以为空值

默认值约束

======约束======



对于表级约束和列级约束的划分:由受约束的字段数目决定;如果约束只涉及一列,则为列级约束;如果涉及两列及以上的,则为表级约束;

外键约束

当某一列设置了主键约束,则MySQL会自动为其创建索引;

在创建了外键约束之后,如果父表进行了插入删除等操作,对于子表是否也会进行相应的操作?

其中,NOT NULL和DEFAULT约束只有列级没有表级


===================  2 修改数据表  ALTER  ==================


first位于最前面,没有【】里面的时候则该新添加的列位于最后面


===============增加列用ADD关键字=====================





===================删除列用DROP关键字====================


添加主键约束
添加唯一约束
添加外键约束

======添加默认约束用SET关键字  删除默认约束用DROP关键字======

==================修改列信息用MODIFY关键字================

==========关键字CHANGE可以同时修改列名称和列定义============

=================修改表名称RENAME关键字==================

方法二可以同时修改多张表的名称,一般不建议修改表名称和列名称,因为在涉及视图和存储过程中,如果有对表名称和列名称的引用时,该修改会导致程序出错。

=========对数据表中的记录的操作——增、删、改、查========

INSERT插入记录的三种方式:


1》普通插入——VALUES| VALUE关键字

2》INSERT-SET插入方式(使用子查询)

3》INSERT-SELECT插入方式(将查询结果插入到指定数据表中)

对于设置为“自增”的字段,可以用NULL或者DEFAULT关键字表示值,从而不用赋值就可以遵守自增的要求;

对于其他的字段,可以是NULL/DEFAULT/或者是表达式(多条记录)或者函数(只能插入一条记录)

UPDATE更新记录


当无WHERE 条件时,将对所有记录进行更新,否则对某些特定记录进行更新;

DELETE删除记录


SELECT查找记录


tal_name.*方式可以方便多表查询时,有相同名称的字段,当带上相应的表名时,便于区分;

HAVING后的条件为:聚合函数(例如MAX/MIN/AVG/SUM,永远只有一个返回结果)或者要保证该字段一定要出现在当前SELECT后的语句中,否则会发生SELECT错误;

=============增删改 属于“写”操作、查 属于“读”操作=============

===========子查询=========

子查询并不是查找,而是所有SQL命令的统称;

当子查询返回多个结果时,可用ANY/SOME/ALL修饰,使其只返回一个结果

======================多表更新=========================

==========================连 接==========================

外链接A表决定B表,A表依赖于任何表,但是唯独不依赖于B表

foreign key是物理连接,而对于事务连接反而是更常用的;外键是将数据分开存储,反过来“连接”是将多张表联系在一起;

=====================运算符和函数========================


TRIM无法删除中间指定字符,只能删除头部和尾部;

删除前导指定字符——TRIM( LEADING '?' FROM ' ??MySQL???');

删除结尾指定字符——TRIM(TRAILING '?' FROM ' ??MySQL???');

删除所有指定字符——TRIM(BOTH '?'FROM ' ??MySQL???');

_(下划线)代表任意一个字符;

%(百分号)代表“任意个”字符;

要想让“%”表示百分号,而不是模式匹配符,可以用LIKE '%1%%' ESCAPE '1';

表示1(1可以是任意的都行,不一定非得为1)后面的百分号%取消通配符的作用,从而表示其原有意思;

between and表示是否在范围内,而IN表示的是一个集合,某个元素是否在该集合内;

last_insert_id()要使用时,该表中必须有自动编号的字段,字段名不一定为ID;当同时写入多条记录时,只会返回第一条的ID,而得不到后续记录的ID;

聚合函数的特点是只有一个返回值;

======================自定义函数=========================


参数与返回值没有必然的内在联系;

返回值必须要有,而参数无要求(但是个数必须小于1024个);

SET NAMES GBK;只会影响客户端的编码方式,不会影响服务器的编码方式;即客户端写汉字为gbk,而写入数据库中时,仍为数据库默认的编码方式;(因为数据库是存在于服务器中)

DELIMITER //;该命令会使得SQL语句以“//”结束;或者可以自行设置其他的字符结束格式;

定义了一个f1函数,无参数;

定义了一个F2函数,有2个输入参数;

定义复杂的函数体,有BEGIN和END实现;


=========================存储过程========================

SQL语句的执行过程

对于“语法分析”和“编译过程”,是可以省略的,从而优化SQL语句;

进而将一些SQL语句封装成“存储过程”,就可以直接调用编译结果,从内存中执行,从而达到了优化的效果;

过程体中的“任意”是有要求的;一般是对记录的“增删改查和多表连接”操作;

修改存储过程,只能修改简单的特性;当想要真正修改存储过程内容时,则必须要先删除再重建;

BEGIN和AND之间申明的变量为局部变量,其作用范围只能在函数体BEGIN和AND之间;

@i 这种带@形式的变量,为用户变量,是与数据库的客户端绑定的,只对当前用户所使用的客户端有效;

ROW_COUNT();函数返回被插入、更新、删除的行数;

存储过程一般是针对与整个表的;而函数一般不是用于表,一般与SQL语句混合使用;


存储在数据库内,可以由应用程序通过调用执行,允许用户声明变量,以及进行有条件的执行;

可包含程序流、逻辑、对数据库的查询,可接收参数(三种类型IN/OUT/INOUT);

关系型数据库中数据的存储以表的形式实现,存储引擎也可以称之为表类型;

处理并发控制是通过“锁”实现的;

锁粒度又称为锁颗粒,是对数据进行锁定时的单位;只需对需要修改的数据精确加锁,而无须对所有数据加锁;

要在锁开销和安全性之间寻求平衡;当锁粒度小,则开销大,然而安全性好;

事务是数据库区别于文件系统的重要特征之一;

使用索引可以快速访问数据表中的特定信息,索引是进行记录快速定位的方法;

分为普通索引、唯一索引、全文索引、btree索引、hash索引;

MyISAM使用与事务的处理不多的情况;

InnoDB适用于事务的处理较多的情况,需要有外键支持的情况;

其他存储引擎:BlackHole黑洞引擎,写入的数据都会消失,一般用于做数据复制的中继;

第一种方法
第二种方法
第三种方法
图形化管理工具
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,911评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,014评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 142,129评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,283评论 1 264
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,159评论 4 357
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,161评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,565评论 3 382
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,251评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,531评论 1 292
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,619评论 2 310
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,383评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,255评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,624评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,916评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,199评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,553评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,756评论 2 335

推荐阅读更多精彩内容