下面我们主要说一下在插入时候的几种情况: 1:insert ignore 2:replace into 3:ON DUPLICATE KEY UPDATE 关于insert ignore: 关于replace into: 关于ON DUPLICATE KEY UPDATE : MySQL 对 SQL 有很多扩展,有些用起来很方便,但有一些被误用之后会有性能问题,还会有一些意料之外的副作用,比如 REPLACE INTO. 比如有这样一张表: CREATE TABLE `auto` ( `id`…
MySQL 库.表.记录.相关操作(3) 单表查询 """ 增: insert [into] [数据库名.]表名[(字段1[, ..., 字段n])] values (数据1[, ..., 数据n])[, ..., (数据1[, ..., 数据n])]; 删: delete from [数据库名.]表名 [条件]; 改: updata [数据库名.]表名 set 字段1=值1[, ..., 字段n=值n] [条件]; 查: select [distinct] 字段1 [[as…
MySQL 对 SQL 有很多扩展,有些用起来很方便,但有一些被误用之后会有性能问题,还会有一些意料之外的副作用,比如 REPLACE INTO. 比如有这样一张表: CREATE TABLE `auto` ( `id` ) unsigned NOT NULL AUTO_INCREMENT, `k` ) unsigned NOT NULL, `v` ) DEFAULT NULL, `extra` ) DEFAULT NULL, PRIMARY KEY (`id`), UNIQUE KEY `uk…
MySQL 对 SQL 有很多扩展,有些用起来很方便,但有一些被误用之后会有性能问题,还会有一些意料之外的副作用,比如 REPLACE INTO. 比如有这样一张表: 1 2 3 4 5 6 7 8 CREATE TABLE `auto` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `k` int(10) unsigned NOT NULL, `v` varchar(100) DEFAULT NULL, `extra` varchar(200…
库.表.记录.相关操作(2) 字段操作 create table tf1( id int primary key auto_increment, x int, y int ); # 修改 alter table tf1 modify x char(4) default ''; alter table tf1 change y m char(4) default ''; # 增加 mysql>: alter table 表名 add 字段名 类型[(长度) 约束]; # 末尾 eg>: alte…
库.表.记录.相关操作(1) 数据库配置 # 通过配置文件统一配置的目的:统一管理 服务端(mysqld) .客户端(client) # 配置了 mysqld(服务端) 的编码为utf8,那么再创建的数据库,默认编码都采用utf8 # 配置流程 # 1)在mysql安装根目录下,创建配置文件:my.ini # mac下配置文件名叫 my.cnf # 2)设置配置文件内容并保存 [mysqld] # 服务器配置 port=3306 # 可以修改数据库默认端口(如果数据库端口被其他软件占用) cha…
2018年10月16日18:14:21 官方文档中文翻译版 原文:https://dev.mysql.com/doc/refman/5.7/en/json.html 最后有部分实例和一个小总结 11.6 JSON数据类型 创建JSON值 JSON值的规范化,合并和自动包装 搜索和修改JSON值 JSON值的比较和排序 在JSON和非JSON值之间转换 JSON值的聚合 从MySQL 5.7.8开始,MySQL支持RFC 7159JSON 定义的本机数据类型 ,可以高效访问JSON(JavaScr…
Mysql: mysql中有专门的Json字段,不是通用的varchar字段,可以保存key/value对,也可保存value集合. 可以增加.删除.修改Json中的某一字段,查询时可以为条件. 如果想以Json中的某一个key为索引,则需要建立一个计算字段,然后对计算字段建立索引,这样可以加快查询速度. SELECT id,ff->'$.name' from t1 where ff->'$.name'  like 'mus%'   --查不到数据SELECT id,ff->'$.nam…
1.数据库表的创建 逻辑库 1)创建逻辑库:CREATE DATABASE 逻辑库名称; 2)显示逻辑库:SHOW DATABASES; 3)删除逻辑库:DROP DATABASE 逻辑库名称; 数据表 1)显示逻辑库有哪些表:SHOW TABLES; 2)查看student表具体信息:DESC student; 3)查看当时创建student表的SQL:SHOW CREATE TABLE student; 4)删除student表:DROP TABLE student; 5)创建数据表(中括号…
CURD--增改查删 创建数据 INSERT [INTO] tb_name [(col_name,...)] VALUES(val,..) 若列名缺省,表示插入全部列,也可指定部分列名 如: INSERT test_table (id,username) VALUES(1,'amy'); 修改数据 UPDATE table_name SET field1=new-value1, field2=new-value2 [WHERE Clause] 查找数据 SELECT expr,... FROM…