mysql修改字段类型

创建表的完整语法,基本数据类型, 枚举与集合类型,约束条件

我与影子孤独终老i 提交于 2019-11-27 22:37:49
创建表的完整语法 create table 表名( 字段名1 类型[(宽度) 约束条件], 字段名2 类型[(宽度) 约束条件], 字段名3 类型[(宽度) 约束条件] ); 注意: 1.字段名和字段类型是必须的 中括号内的参数都是可选参数 2.同一张表中字段名不能重复 3.最后一个字段后面不能加逗号 create table t6( id int, name char, ); 宽度: 使用数据库的准则:能尽量让它少干活就尽量少干活 对存储数据的限制 char(1) 只能存一个字符 如果超了 mysql会自动帮你截取 1.插入的时候 mysql自动截取 2.会直接报错(mysql严格模式) alter table t5 modify name char not null; not null该字段不能插空 create table t1(id int)engine=innodb; create table t2(id int)engine=myisam; create table t3(id int)engine=memory; create table t4(id int)engine=blackhole; insert into t1 values(1); insert into t2 values(2); insert into t3 values(3); insert

MySQL数据类型和约束条件

ε祈祈猫儿з 提交于 2019-11-27 22:23:20
  一.数据库操作数据的存储引擎   INNODB:行锁 查询速度比MYSiam慢 但是保证了数据的安全性  MYSIAM:老版本用 5.0左右  MEMERY: 应用Redis实现数据的读写,同时利用队列处理器定时将数据写入mysql。同时要注意避免冲突, 在redis启动时去mysql读取所有表键值存入redis中,往redis写数据时,对redis主键自增并进行读取, 若mysql更新失败,则需要及时清除缓存及同步redis主键。这样处理,主要是实时读写redis,而mysql数据则通过队列异步处理, 缓解mysql压力,不过这种方法应用场景主要基于高并发, 而且redis的高可用集群架构相对更复杂,对于数据的保存不是永久的, 一些数据要求不严格的大公司会用,一般不是很推荐。   blackhole: 任何写入到此引擎的数据均会被丢弃掉,    不做实际存储;   Select语句的内容永远是空 过滤数据 记录日志   数据结构区别:     二.数据类型   SQL语法:     一.创建表的完整语法 create table 表名( 字段名1 类型[(宽度) 约束条件], 字段名2 类型[(宽度) 约束条件], 字段名3 类型[(宽度) 约束条件] );    注意:     1.在同一张表中字段名不能相同     2

数据库2

删除回忆录丶 提交于 2019-11-27 22:11:11
存储引擎: innodb: 现在数据库使用的默认引擎 与myisam相比,速度较慢,但是数据安全性更高(数据安全体现在行锁, 事务方面)   使用innodb创建表时,在库下默认创建两个文件,分别是frm和idb, frm表示存储表结构的文件, idb表示存储数据的文件 myisam: 老版本数据库使用的存储引擎   使用myisam创建表时,在库下默认创建三个文件, 分别是frm MYD MYI , frm表示存储表结构的文件, MYD表示存储数据的文件, MYI表示索引文件 blackhole: 黑洞,不管存储什么数据直接丢失   使用blackhole创建表时,在库下默认创建一个文件, frm , frm表示存储表结构的文件 memory: 内存引擎,临时存储在内存,服务重启数据丢失   使用memory创建表时,在库下默认创建一个文件, frm, frm表示存储表结构的文件 如何查询数据库中有哪些的引擎呢? show engines; 创建表的完整性约束: create table 表名( 字段名1 类型[(宽度) 约束条件], 字段名2 类型[(宽度) 约束条件], 字段名3 类型[(宽度) 约束条件] ); 注意:   1.字段名和字段类型是必须的,中括号内的参数都是可选参数   2.同一张表中的字段名不能重复   3.最后一个字段后不能加逗号 宽度:  

8.19MySQL(二)

大兔子大兔子 提交于 2019-11-27 22:10:16
一、存储引擎   不同的数据应该有不同的处理机制 1.mysql存储引擎   Innodb:默认的存储引擎,查询速度较myisam慢,但是更安全   myisam:mysql老版本用的存储引擎   memory:内存引擎(数据全部存在内存中)   blackhole:无论存什么,都立马消失(黑洞) 2.查看所有的存储引擎   show engines; 3.研究一下每个存储引擎存取数据的特点 (1)Innodb:两个文件,一个是表结构文件,一个是真实数据文件 (2)myisam:三个文件,表结构文件,真实数据文件,索引文件(目录) (3)memory:一个文件,表结构文件 (4)blackhole:一个文件,表结构文件 二、创建表的完整性约束 1.创建表的完整语法 create table 表名( 字段名1 类型[(宽度) 约束条件], 字段名2 类型[(宽度) 约束条件], 字段名3 类型[(宽度) 约束条件] ); 注意:   (1)字段名和字段类型是必须的 中括号内的参数都是可选参数   (2)同一张表中字段名不能重复   (3)最后一个字段后面不能加逗号,例如: create table t6( id int, name char, ); # 错误 宽度:   (1)使用数据库的准则:能尽量让它少干活就尽量少干活   (2)对存储数据的限制:char(1),只能存一个字符

数据库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 字段类型[(宽度) 约束条件

MySQL 基本操作语句

大兔子大兔子 提交于 2019-11-27 21:50:03
查看某个进程:    tasklist |findstr 进程名 杀死进程:    taskkill /F /PID 进程号 内容输入:   mysql 中的 sql 语句是 以分号结束的   不敲分号默认你没有输入完,客户端还会让你继续输入    当命令输入错误的时候,可以用 \c 取消前面的命令 (cancel) 客户端登录:    mysql -h 127.0.0.1 -P 3306 -uroot -p     可以简写:        mysql -uroot -p    然后输入密码 客户端退出:    quit;   exit;    两种方法都可,分号可不写 数据库的基本操作: 增查改删    库 :      增: create database 库名;      查: show databases ;              ----> 查所有        show create database 库名 ;              ----> 查单个      改: alter database 库名 charset='gbk' ;              ----> 修改编码      删: drop database 库名 ;    表: 需要先指定库才能对表进行操作      use 库名 ;      增: create table 表名 (字段名

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 )