mysql添加字段

mysql学习

眉间皱痕 提交于 2019-11-30 04:05:42
数据库操作: 创建一个数据表 CREATE TABLE IF NOT EXISTS 表名( 字段名1 类型(长度) 约束1 约束2 ... 注释, 字段名2 类型(长度) 约束1 约束2 ... 注释, ... 字段名n 类型(长度) 约束1 约束2 ... 注释 )DEFAULT CHARSET = UTF8; 查看数据库的编码方式 SHOW CREATE DATABASE 库名; 写出MySQL常用的数据类型, 至少写4种。 TINYINT INT BIGINT 整型 DATE TIME DATETIME TIMESTAMP 时间日期 CHAR VARCHAR TEXT LONGTEXT 字符串 ENUM("值1","值2","值3",...) 枚举 FLOAT(5,2) 一共5位数,2位小数 DOUBLE(5,2) 一共5位数,2位小数 MySQL约束条件: 1、约束条件的背景 数据表的字段如果没有任何规范和限制, 会产生数据冗余,不方便项目的使用和管理。 2、约束条件 PRIMARY KEY :主键约束, 相当于一个表中的序号,主键的值唯一不重复, 可以用来标志一行数据,一般使用整数。 主键默认不能重复,不需要加UNIQUE KEY; 主键默认不能为空,不需要加NOT NULL; 主键 PRIMARY KEY 加上 AUTO_INCREMENT 之后不需要给值,会自动增长。

django orm中常用字段和参数

前提是你 提交于 2019-11-30 03:42:32
常用字段 AutoField int自增列,必须填入参数 primary_key=True。当model中如果没有自增列,则自动会创建一个列名为id的列。 IntegerField 一个整数类型,范围在 -2147483648 to 2147483647。(一般不用它来存手机号(位数也不够),直接用字符串存,) CharField 字符类型,必须提供max_length参数, max_length表示字符长度。 这里需要知道的是Django中的CharField对应的MySQL数据库中的varchar类型,没有设置对应char类型的字段,但是Django允许我们自定义新的字段,下面我来自定义对应于数据库的char类型 DateField 日期字段,日期格式 YYYY-MM-DD,相当于Python中的datetime.date()实例。 DateTimeField 日期时间字段,格式 YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ],相当于Python中的datetime.datetime()实例。 字段合集 AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField) - bigint自增列,必须填入参数 primary_key=True 注:当model中如果没有自增列

Day55 Django之模型层

谁都会走 提交于 2019-11-30 03:38:20
一.Django ORM中的常用字段和参数 常用字段 AuotoField int自增列,必须填入参数 primary_key=True。当model中如果没有自增列,则自动会创建一个列名为id的列。 InterField 一个整数类型,范围在 -2147483648 to 2147483647。(一般不用它来存手机号(位数也不够),直接用字符串存) CharField 字符类型,必须提供max_length参数, max_length表示字符长度。 这里需要知道的是Django中的CharField对应的MySQL数据库中的varchar类型,没有设置对应char类型的字段,但是Django允许我们自定义新的字段,下面我来自定义对应于数据库的char类型 自定义字段在实际项目应用中可能会经常用到,这里需要对他留个印象! from django.db import models # Create your models here. #Django中没有对应的char类型字段,但是我们可以自己创建 class FixCharField(models.Field): ''' 自定义的char类型的字段类 ''' def __init__(self,max_length,*args,**kwargs): self.max_length=max_length super().__init_

17-Mysql数据库

╄→尐↘猪︶ㄣ 提交于 2019-11-30 03:29:31
数据库 1.1 概念 数据库:db、database,存储数据的仓库,以文件形式存储数据。 DBMS:Database Manager System 常见的数据库: 1、 MySQL :免费的中小型数据库,Oracle公司的 2、 Oracle :收费的大型数据库,Oracle公司的 3、SQL Server:微软的大型的收费的数据库 4、SQLite:移动端的嵌入式的小型数据库 数据库的分类: 1、关系型(MySQL、Oracle) * 优点:通用的SQL语句、易于理解 * 缺点:大量数据的读写为保证一致性会导致性能降低 2、非关系型(MongDB、Redis) * 优点:读写性能较好,易于扩展 * 缺点:学习、使用成本较高 1.2 结构 类 表 属性 字段、列 对象 记录 1.3 语法 1、一条语句可以分为单行或多行书写 2、语句用分号结尾 3、不区分大小写,但是关键字建议用大写 4、注释: 单行注释:-- 注释内容 或者 # 注释内容(MySQL特有) 多行注释:/* 注释内容 */ 1.4 SQL语言 SQL:结构化查询语言(Structured Query Lanuage) 分类: 1、DDL:数据定义语言 对库、表进行定义,删除 create、drop 2、DML:数据操作语言 对记录进行增、删、改 insert、update、delete 3、DQL:数据查询语言

Django ORM中常用字段和参数

馋奶兔 提交于 2019-11-30 03:24:56
Django ORM中常用字段和参数 说明: 表myapp_person的名称是自动生成的,如果你要自定义表名,需要在model的Meta类中指定 db_table 参数,强烈建议使用小写表名,特别是使用MySQL作为后端数据库时。 id字段是自动添加的,如果你想要指定自定义主键,只需在其中一个字段中指定 primary_key=True 即可。如果Django发现你已经明确地设置了Field.primary_key,它将不会添加自动ID列。 本示例中的CREATE TABLE SQL使用PostgreSQL语法进行格式化,但值得注意的是,Django会根据配置文件中指定的数据库后端类型来生成相应的SQL语句。 Django支持MySQL5.5及更高版本。 Django ORM 常用字段和参数 常用字段 AutoField int自增列,必须填入参数 primary_key=True。当model中如果没有自增列,则自动会创建一个列名为id的列。 IntegerField 一个整数类型,范围在 -2147483648 to 2147483647。(一般不用它来存手机号(位数也不够),直接用字符串存,) CharField 字符类型,必须提供max_length参数, max_length表示字符长度。

MySQL的库表详细操作

旧城冷巷雨未停 提交于 2019-11-30 03:18:05
一 库操作 1、创建数据库      1.1 语法       CREATE DATABASE 数据库名 charset utf8;      1.2 数据库命名规则       可以由字母、数字、下划线、@、#、$       区分大小写       唯一性       不能使用关键字如 create select       不能单独使用数字       最长128位 基本上跟python或者js的命名规则一样 2、数据库相关操作     也是一些基本操作,和我们之前说的差不多。 1 查看数据库 show databases; show create database db1; select database(); 2 选择数据库 USE 数据库名 3 删除数据库 DROP DATABASE 数据库名; 4 修改数据库 alter database db1 charset utf8;   关于库的内容,咱们就说这些吧,哈哈,有点少是吧,不是咱们的重点,来看下面的表操作~~~ 二 表操作 1、存储引擎     存储引擎即表类型,mysql根据不同的表类型会有不同的处理机制,关于存储引擎的介绍看我这篇博客: https://www.cnblogs.com/changxin7/p/11525457.html 2、表介绍     表相当于文件,表中的一条记录就相当于文件的一行内容

高级查询

青春壹個敷衍的年華 提交于 2019-11-30 02:40:29
character_set_server:默认的内部操作字符集 character_set_client:客户端来源数据使用的字符集 character_set_connection:连接层字符集 character_set_results:查询结果字符集 character_set_database:当前选中数据库的默认字符集 character_set_system:系统元数据(字段名等)字符集 ;MySQL常用的注解方式有两种:#..... /*....*/; 修改表 [可选项] #修改表名 ALTER TABLE 旧表名 RENAME [TO]新表名; #添加字段 ALTER TABLE 表名 ADD 字段名 数据类型[属性]; #修改字段 ALTER TABLE 表名 CHANGE 原字段名 新字段名 数据类型 [属性]; #删除字段 ALTER TABLE 表名 DROP 字段名; 添加主键 ALTER TABLE 表名 ADD CONSTRAINT 主键名(一般为PK_表名) PRIMARY KEY 表名(主键字段); 添加外键 ALTER TABLE 表名 ADD CONSTRAINT 外键名(一般为FK_外键表_主表) FOREIGN KEY(外键字段) REFERENCES 关联表名(关联字段); 关联字段一般为关联表中的主键或具有唯一约束的键 DML语句

MySQL基础操作

无人久伴 提交于 2019-11-29 22:15:56
启动/关闭服务: net start mysql net stop mysql 登陆 mysql -u root -p 创建/删除数据库 create database name; drop database name; 查询数据库 show databases; 查看当前数据库 select database(); 查看数据库下的表 show tables; 创建表 create table name( -> id int primary key auto_increment,--主键约束:primary key,被主键修饰过的字段,唯一非空。一张表只能有一个主键,但是主键可以包含多个字段;auto_increment自增。 -> name varchar(20),--数据类型varchar为可变长度的字符串。 -> chinese double(5,2),--该参数长度为5,小数位占两个,最大值:999.99 -> english double(5,2), -> math double(5,2) ) 查看表的结构 desc name; 修改表 alter table 表名 change 字段名称 新的字段描述; alter table 表名 modify 字段名称 字段类型; 添加数据 insert into scores value(字段值1,字段值2,字段值3...);

MySQL表的完整性约束

前提是你 提交于 2019-11-29 21:46:06
一 介绍   约束条件与数据类型的宽度一样,都是可选参数   作用:用于保证数据的完整性和一致性   主要分为: PRIMARY KEY (PK) 标识该字段为该表的主键,可以唯一的标识记录 FOREIGN KEY (FK) 标识该字段为该表的外键 NOT NULL 标识该字段不能为空 UNIQUE KEY (UK) 标识该字段的值是唯一的 AUTO_INCREMENT 标识该字段的值自动增长(整数类型,而且为主键) DEFAULT 为该字段设置默认值 UNSIGNED 无符号 ZEROFILL 使用0填充   说明:    1. 是否允许为空,默认NULL,可设置NOT NULL,字段不允许为空,必须赋值 2. 字段是否有默认值,缺省的默认值是NULL,如果插入记录时不给字段赋值,此字段使用默认值 sex enum('male','female') not null default 'male' age int unsigned NOT NULL default 20 必须为正值(无符号) 不允许为空 默认是20 3. 是否是key 主键 primary key 外键 foreign key 索引 (index,unique...) 二 not null与default   是否可空,null表示空,非字符串   not null - 不可空   null - 可空    ​  

day10数据库

旧城冷巷雨未停 提交于 2019-11-29 21:10:39
存储引擎 mysql5.6支持的存储引擎包括InnoDB、MyISAM、MEMORY、CSV、BLACKHOLE、FEDERATED、MRG_MYISAM、ARCHIVE、PERFORMANCE_SCHEMA。其中NDB和InnoDB提供事务安全表,其他存储引擎都是非事务安全表。 InnoDB 用于事务处理应用程序,支持外键和行级锁。如果应用对事物的完整性有比较高的要求,在并发条件下要求数据的一致性,数据操作除了插入和查询之外,还包括很多更新和删除操作,那么InnoDB存储引擎是比较合适的。InnoDB除了有效的降低由删除和更新导致的锁定,还可以确保事务的完整提交和回滚,对于类似计费系统或者财务系统等对数据准确要求性比较高的系统都是合适的选择。 MyISAM 如果应用是以读操作和插入操作为主,只有很少的更新和删除操作,并且对事务的完整性、并发性要求不高,那么可以选择这个存储引擎。 Memory 将所有的数据保存在内存中,在需要快速定位记录和其他类似数据的环境下,可以提供极快的访问。Memory的缺陷是对表的大小有限制,虽然数据库因为异常终止的话数据可以正常恢复,但是一旦数据库关闭,存储在内存中的数据都会丢失。 mysql中的数据类型 数字类型 int # 创建表一个是默认宽度的int,一个是指定宽度的int(5) mysql> create table t1 (id1 int