mysql添加字段

数据库02

风格不统一 提交于 2019-11-27 21:50:11
一.存储引擎 1.1什么是存储引擎 MySQL中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力。通过选择不同的技术,你能够获得额外的速度或者功能,从而改善你的应用的整体功能。 例如,如果你在研究大量的临时数据,你也许需要使用内存存储引擎。内存存储引擎能够在内存中存储所有的表格数据。又或者,你也许需要一个支持事务处理的数据库(以确保事务处理不成功时数据的回退能力)。 这些不同的技术以及配套的相关功能在MySQL中被称作存储引擎(也称作表类型)。 1.2主要的四种存储引擎 INNODB:现默认的存储引擎,读取数据较myisam慢,但是数据存储更安全 MYISAM:mysql之前版本使用的默认存储引擎 MEMORY:内存引擎(断电/重启存储的数据会消失,数据存储再内存上) BLACKHOLE:黑洞引擎(存入的数据会消失) 1.3引擎的特点 使用sql语句查看引擎:show engines: 创建表,对表中插入数据 ps: q3是内存引擎,数据存储再内存中的所以不存在数据   q4是黑洞引擎,数据写入其中就消失了,所以也没有数据 ps:重启MySQL服务后,之前使用Memory引擎存储的数据都会被清除 创建表的完整语法: create table 表名( 字段名1 字段类型[(宽度) 约束条件

2,数据类型,约束条件

混江龙づ霸主 提交于 2019-11-27 21:49:39
今日内容: 一,字段类型 在建表的时候,每个字段都有自己的类型 1,整型 2,浮点型 3,时间类型 4,字符类型 5,枚举与集合 二,约束条件 1,primary key 2,unique key 3,not null ps; 重点记住知识: unique 唯一 default 给某个字段设置默认值 auto_increment 自动递增 not null 不能为空 unsigned 无正负符号 zerofill 0填充多余的位数 char后面的数字是用来限制存储数据的长度的 枚举与集合类型 枚举(enum) 限制某个字段能够存储的数据内容 集合(set) 限制某个字段能够存储的数据内容 浮点型精确度:float < double < decimal 精确度依次越来越高 字符类型: char与varchar的区别 char定长 1.浪费空间 2.存取速度快 varchar变长 1.节省空间 2.存取速度慢(较于char比较慢) 存的时候 需要给数据讲一个记录长度的报头 取的时候 需要先读取报头才能读取真实数据 char(4) # 最大只能存四个字符 超出来会直接报错 如果少了 会自动用空格填充 varchar(4) # 最大只能存四个字符 超出来会直接报错 如果少了 有几个存几个 char后面的数字是用来限制存储数据的长度的 特例:只有整型后面的数字不是用来限制存储数据的长度

Python之MySQL

谁说胖子不能爱 提交于 2019-11-27 21:48:05
Python之MySQL 一.概述    数据库(Database,简称DB)   数据库技术是计算机应用领域中非常重要的技术,它产生于20世纪60年代末,是数据管理的最新技术,也是软件技术的一个重要分支。   简单的说, 数据库 就是一个存放数据的仓库,这个仓库是按照一定的数据结构(数据结构是指数据的组织形式或数据之间的联系)来组织、存储的,我们可以通过数据库提供的多种方法来管理数据库里的数据。更简单的形象理解,数据库和我们生活中存放杂物的仓库性质一样,区别只是存放的东西不同。   数据库表(table)   数据表是关系数据库中一个非常重要的对象,是其它对象的基础,也是一系列二维数组的集合,用来存储、操作数据的逻辑结构。根据信息的分类情况。一个数据库中可能包含若干个数据表,每张表是由行和列组成,记录一条数据,数据表就增加一行,每一列是由字段名和字段数据集合组成,列被称之为字段,每一列还有自己的多个属性,例如是否允许为空、默认值、长度、类型、存储编码、注释等.例如       数据(data)     存储在表中的信息就叫做数据.    数据库系统有3个主要的组成部分    1.数据库(Database System):用于存储数据的地方。    2.数据库管理系统(Database Management System,DBMS):用户管理数据库的软件。    3.数据库应用程序

存储引擎 数据类型

笑着哭i 提交于 2019-11-27 21:47:26
不同的数据应该有不同的处理机制 mysql存储引擎 Innodb:默认的存储引擎 查询速度较myisam慢 但是更安全 myisam:mysql老版本用的存储引擎 memory:内存引擎(数据全部存在内存中) blackhole:无论存什么 都立马消失(黑洞) show engines; 查看所有存储引擎存取数据的特点 数据类型   整型, 浮点型, 字符类型, 日期类型, 枚举与集合类型 约束    not null, unique, default, primary key ... 创建表的完整语法 create table 表名( 字段名1 类型[(宽度) 约束条件], 字段名2 类型[(宽度) 约束条件], 字段名3 类型[(宽度) 约束条件] ); 注意:   1.字段名和字段类型是必须的 中括号内的参数都是可选参数 2.同一张表中字段名不能重复 3.最后一个字段后面不能加逗号 宽度: 使用数据库的准则: 能尽量让它少干活就尽量少干活 对存储数据的限制 char(1) 只能存一个字符, 如果超了mysql会自动帮你截取 1.插入的时候 mysql自动截取 2.会直接报错(mysql严格模式) alter table t5 modify name char not null; not null该字段不能插空 类型和中括号内的约束 类型约束的是数据的存储类型 ,

MySQL基础|表结构操作

我只是一个虾纸丫 提交于 2019-11-27 21:31:18
表结构操作 添加字段和删除字段 添加字段语法: ALTER TABLE table_name ADD 字段名称 字段属性 + [完整性约束条件] + [FIRST|AFTER 字段名称] 删除字段语法 ALTER TABLE tb_name DROP [COLUMN] 字段名称 注意同一张表的多个字段 操作之间用 , 分割 添加默认值和删除默认值 添加默认值 ALTER TABLE tb_name ALTER 字段名称 SET DEFAULT 默认值; 删除默认值 ALTER TABLE tb_name ALTER 字段名称 DROP DEFAULT; USE db_imist ; CREATE TABLE IF NOT EXISTS user1 ( id INT UNSIGNED AUTO_INCREMENT KEY ) ; -- 测试添加删除字段 -- 添加 username字段 ALTER TABLE user1 ADD username VARCHAR ( 20 ) ; -- 添加password字段 ,默认按顺序添加 ALTER TABLE user1 ADD password CHAR ( 32 ) NOT NULL ; -- 添加邮箱字段,添加到username之后 FFTER关键字 ALTER TABLE user1 ADD email VARCHAR ( 50 )

python day35

谁都会走 提交于 2019-11-27 21:26:48
今日内容 存储引擎 定义: 不同的数据应该有不同的处理机制 mysql存储引擎 innodb : 默认的存储引擎,查询速度较myisam慢,但是更安全 myisam : 旧版本所用引擎 memory: 内存引擎(数据全部存在内存中) blackhole: 无论存什么,都立马消失(黑洞) 研究每一个存储引擎存取数据的特点 # 查看存储引擎 show engines; # 查看不同引擎存储表结构文件特点 create table t1(id int)engine=innodb; create table t2(id int)engine=myisam; create table t3(id int)engine=blackhole; create table t4(id int)engine=memory; ​ insert into t1 values(1); insert into t2 values(1); insert into t3 values(1); insert into t4 values(1); innodb # innodb包含 row-level locking # 行锁 foreign keys # 外键 Supports transactions # 支持事务 # 创建两个文件 # 一个FRM文件,是表结构 # 一个IBD文件,一个是真实数据文件

python day35

青春壹個敷衍的年華 提交于 2019-11-27 21:26:32
今日内容 存储引擎 定义: 不同的数据应该有不同的处理机制 mysql存储引擎 innodb : 默认的存储引擎,查询速度较myisam慢,但是更安全 myisam : 旧版本所用引擎 memory: 内存引擎(数据全部存在内存中) blackhole: 无论存什么,都立马消失(黑洞) 研究每一个存储引擎存取数据的特点 # 查看存储引擎 show engines; # 查看不同引擎存储表结构文件特点 create table t1(id int)engine=innodb; create table t2(id int)engine=myisam; create table t3(id int)engine=blackhole; create table t4(id int)engine=memory; ​ insert into t1 values(1); insert into t2 values(1); insert into t3 values(1); insert into t4 values(1); innodb # innodb包含 row-level locking # 行锁 foreign keys # 外键 Supports transactions # 支持事务 # 创建两个文件 # 一个FRM文件,是表结构 # 一个IBD文件,一个是真实数据文件

python day35

流过昼夜 提交于 2019-11-27 21:26:31
今日内容 存储引擎 定义: 不同的数据应该有不同的处理机制 mysql存储引擎 innodb : 默认的存储引擎,查询速度较myisam慢,但是更安全 myisam : 旧版本所用引擎 memory: 内存引擎(数据全部存在内存中) blackhole: 无论存什么,都立马消失(黑洞) 研究每一个存储引擎存取数据的特点 # 查看存储引擎 show engines; # 查看不同引擎存储表结构文件特点 create table t1(id int)engine=innodb; create table t2(id int)engine=myisam; create table t3(id int)engine=blackhole; create table t4(id int)engine=memory; ​ insert into t1 values(1); insert into t2 values(1); insert into t3 values(1); insert into t4 values(1); innodb # innodb包含 row-level locking # 行锁 foreign keys # 外键 Supports transactions # 支持事务 # 创建两个文件 # 一个FRM文件,是表结构 # 一个IBD文件,一个是真实数据文件

三十四、字段类型

冷暖自知 提交于 2019-11-27 21:17:45
字段类型: 整型 浮点型 字符类型 日期类型 枚举与集合类型约束条件 primary key unique not null default 存储引擎 不同的数据应该有不同的处理机制 mysql存储引擎 Innodb:默认的存储引擎 查询速度较myisam慢 但是更安全 myisam:mysql老版本用的存储引擎 memory:内存引擎(数据全部存在内存中) blackhole:无论存什么 都立马消失(黑洞) 研究一下每个存储引擎存取数据的特点 show engines; 创建表的完整语法: #语法: create table 表名( 字段名1 类型[(宽度) 约束条件], 字段名2 类型[(宽度) 约束条件], 字段名3 类型[(宽度) 约束条件] ); 在创建表的时候有三点注意地方: 1.在同一张表内字段名不能重复 2.字段和类型必须要有的,而宽度和约束条件是可选 3.最后一个字段后面不能加逗号 #宽度:对存储数据的限制 create database day38; use day38; create table t1(name char); insert into t1 values('jason'); #1.能够成功但是显示的时候只显示一位 #2.第二种情况,直接报错 select * from t1; # 约束条件 create table t2(name char(16

【MySQL】完整性约束

只愿长相守 提交于 2019-11-27 20:47:02
" 目录 not null default unique 单列唯一 联合唯一 primary key 单列主键 复合主键 auto_increment 步长与偏移量 foreign key 约束条件与数据类型的宽度一样,都是可选参数 作用:用于保证数据的完整性和一致性 主要分为: primary key ( pk ) # 标识该字段为该表的主键,能够唯一的标识记录 foreign key ( pk ) # 标识该字段为该表的外键 not null # 标识该字段不能为空 unique key ( uk ) # 标识该字段的值是唯一的 auto_increment # 标识该字段的值自动增长(整数类型,而且为主键) default # 为该字段设置默认值 unsigned # 无符号 zerofill # 使用0填充 说明: 是否允许为空, 默认为null ,设置not null,使字段不允许为空,必须赋值. 字段是否有默认值, 缺省的默认值是null ,如果插入记录时不给字段赋值,则此字段使用默认值null. (设置枚举的默认值,且不为空: sex enum('boy', 'girl') not null default 'boy' ) (设置年龄必须为正值(无符号)且不为空,默认为20: age int unsigned not null default 20 ) not