mysql修改字段类型

阿里巴巴开发手册五

蹲街弑〆低调 提交于 2019-12-02 18:18:17
四、安全规约 1、【强制】隶属于用户个人的页面或者功能必须进行权限控制校验。 2、【强制】用户敏感数据禁止直接展示,必须对展示数据进行脱敏。 3、【强制】用户输入的 SQL 参数严格使用参数绑定或者 METADATA 字段值限定,防止 SQL 注入, 禁止字符串拼接 SQL 访问数据库。 4、【强制】用户请求传入的任何参数必须做有效性验证。 忽略参数校验可能导致: page size过大导致内存溢出 恶意order by导致数据库慢查询 任意重定向 SQL注入 反序列化注入 正则输入源串拒绝服务ReDoS 5、【强制】禁止向 HTML 页面输出未经安全过滤或未正确转义的用户数据。 6、【强制】表单、AJAX 交必须执行 CSRF 安全过滤。 CSRF(Cross-site request forgery)跨站请求伪造是一类常见编程漏洞。对于存在 CSRF 漏洞的应用/网站,攻击者可以事先构造好 URL,只要受害者用户一访问,后台便在用户 不知情情况下对数据库中用户参数进行相应修改。 7、【强制】在使用平台资源,譬如短信、邮件、电话、下单、支付,必须实现正确的防重放限制, 如数量限制、疲劳度控制、验证码校验,避免被滥刷、资损。 8、【推荐】发贴、评论、发送即时消息等用户生成内容的场景必须实现防刷、文本内容违禁词过 滤等风控策略。 五、MySQL数据库 (一)建表规约 1、【强制

MySQL命令

时光毁灭记忆、已成空白 提交于 2019-12-02 16:40:57
常见的MySQL使用命令: 创建数据库: create database 数据库名; 创建数据库: create database 数据库名 character set 字符编码 ; 查看数据库mysql服务器中所有的数据库: show databases; 查看某个数据库的定义的信息: show create database 数据库名 ; 删除数据库: drop database 数据库名 ; 使用数据库: use 数据库名; 查看正在使用的数据库: select database (); 创建数据表: create table 表名( id 类型(长度)primary key,(主键约束), 字段名 类型(长度)约束(无) ); 删除主键: alter table 表名 drop primary key; 主键自动增长: 主键字段后加auto_increment (一般不用加); 查看数据库中所有表: show tables; 查看表结构: desc 表名; 删除表: drop table 表名; 修改表结构添加列: alter table 表名 add 列名 类型(长度)约束; 修改列的长度类型及约束: alter table 表名 modify 列名 类型(长度) 约束; 修改列名: alter table 表名 change 就列名 新列名 类型(长度) 约束; 删除列

day41

爱⌒轻易说出口 提交于 2019-12-02 16:28:01
目录 数据库 什么是数据库? 为什么使用数据库?(*************) Excel的缺点: 数据库的分类:(*********) 关系型数据库 非关系型数据库 最大区别: mysql的架构 流程: mysql的安装(windows) windows安装: mysql服务端不会阻塞住 修改mysql的密码: 常用参数:(*********************) 忘记密码,操作方式: 初始mysql 操作数据库(*******************************************************) 操作数据表 操作记录 数据库 什么是数据库? 字面意思:存数据的仓库 为什么使用数据库?(*************) 之前都是使用Excel来进行管理数据, Excel的缺点: 管理不了大量的数据(10w量级的数据) 并发操作同一个数据表格 数据支持高级的操作,比如:分组,连表等 数据库的分类:(*********) 关系型数据库 对每一列的数据类型会有约束,id(整型),name(字符串) maridb,MySQL ——》用的比较多,免费 SqlServer ——》微软,大学,政府(汽车之家) Oracle ——》甲骨文,收费,金融公司,阿里 sqlite ——》小型的文件数据库,自己玩玩 等 非关系型数据库 memcache ——》十年前的产品

数据库标准-mysql

北战南征 提交于 2019-12-02 15:31:59
作者: 听风,原文地址: https://www.cnblogs.com/huchong/p/10219318.html 。JavaGuide 已获得作者授权。 数据库命令规范 数据库基本设计规范 1. 所有表必须使用 Innodb 存储引擎 2. 数据库和表的字符集统一使用 UTF8 3. 所有表和字段都需要添加注释 4. 尽量控制单表数据量的大小,建议控制在 500 万以内。 5. 谨慎使用 MySQL 分区表 6.尽量做到冷热数据分离,减小表的宽度 7. 禁止在表中建立预留字段 8. 禁止在数据库中存储图片,文件等大的二进制数据 9. 禁止在线上做数据库压力测试 10. 禁止从开发环境,测试环境直接连接生成环境数据库 数据库字段设计规范 1. 优先选择符合存储需要的最小的数据类型 2. 避免使用 TEXT,BLOB 数据类型,最常见的 TEXT 类型可以存储 64k 的数据 3. 避免使用 ENUM 类型 4. 尽可能把所有列定义为 NOT NULL 5. 使用 TIMESTAMP(4 个字节) 或 DATETIME 类型 (8 个字节) 存储时间 6. 同财务相关的金额类数据必须使用 decimal 类型 索引设计规范 1. 限制每张表上的索引数量,建议单张表索引不超过 5 个 2. 禁止给表中的每一列都建立单独的索引 3. 每个 Innodb 表必须有个主键 4.

flask SQLAlchemy连接数据库 ORM SQLAlchemy对数据的增删改查以及常用数据类型 Flask-Migrate Flask-Script Flask-SQLAlchemy

跟風遠走 提交于 2019-12-02 14:46:03
1,SQLAlchemy连接数据库 在Flask中,如果想要操作数据库,我们可以使用ORM来操作数据库,使用ORM操作数据库将变得非常简单。 以 mysql + SQLAlchemy 组合进行学习 SQLAlchemy:SQLAlchemy是一个数据库的ORM框架 安装命令为:pip3 install SQLAlchemy。 通过SQLAlchemy连接数据库 首先来看一段代码: from sqlalchemy import create_engine # 数据库的配置变量 HOSTNAME = '127.0.0.1' PORT = '3306' DATABASE = 'xt_flask' USERNAME = 'root' PASSWORD = 'root' DB_URI = 'mysql+mysqldb://{}:{}@{}:{}/{}'.format(USERNAME,PASSWORD,HOSTNAME,PORT,DATABASE) # 创建数据库引擎 engine = create_engine(DB_URI) #创建连接 with engine.connect() as con: rs = con.execute('SELECT 1') print rs.fetchone() 首先从sqlalchemy中导入create_engine,用这个函数来创建引擎

Dango 常用字段和参数

只愿长相守 提交于 2019-12-02 14:38:01
一、Django ORM 常用字段和参数 1.常用字段 models中所有的字段类型其实本质就那几种,整形varchar什么的,都没有实际的约束作用,虽然在models中没有任何限制作用,但是还是要分门别类,对于校验性组件校验非常有用 就比如说邮箱类型,你在输入邮箱的时候如果不按照邮箱格式输入,瞎鸡儿输入会提示你不合法,虽然输入的是字符串,但是不是规定的邮箱字符串 AutoField()   【int primary key auto_increment)】 int自增列,必须填入参数 primary_key=True。当model中如果没有自增列,则自动会创建一个列名为id的列。 IntegerField()   【int()】一个整数类型,范围在 -2147483648 to 2147483647。(一般不用它来存手机号(位数也不够),直接用字符串存 CharField()   【varchar()】 字符类型,必须提供max_length参数, max_length表示字符长度。 DateField()   【date】日期字段,日期格式 YYYY-MM-DD,相当于Python中的datetime.date()实例。 DateTimeField()   【datetime】日期时间字段,格式 YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ]

MySQL 数据库的基本使用

余生颓废 提交于 2019-12-02 13:52:22
MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,而MySQL AB 公司被 Oracle 公司收购,故 MySQL 现在属于 Oracle 公司。MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。 MySQL 是开源的,所以你可以免费使用它。 MySQL 支持大型的数据库,可以处理拥有上千万条记录的大型数据库。但是根据实际生产经验,当单表的数据量达到三千万之后,数据库性能急剧下降,甚至整个数据库都瘫痪了,登录不上。 MySQL 使用标准的 SQL 数据语言形式,结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。 MySQL 安装好了之后,就可以登录使用了。最主要就是使用 SQL 进行增删改查的操作。 1、查看数据库 \ # mysql -u root -p'P@ssw0rd' mysql> show databases; 2、切换数据库 mysql> use mysql; 注意: 1:information_schema # 这个数据库保存了 MySQL 服务器所有数据库的信息。如数据库名,数据库的表

如何优化MySQL千万级大表

风格不统一 提交于 2019-12-02 13:05:53
很好的一篇博客,转载 如何优化MySQL千万级大表 原文链接:: https://blog.csdn.net/yangjianrong1985/article/details/102675334 千万级大表如何优化,这是一个很有技术含量的问题,通常我们的直觉思维都会跳转到拆分或者数据分区,在此我想做一些补充和梳理,想和大家做一些这方面的经验总结,也欢迎大家提出建议。 从一开始脑海里开始也是火光四现,到不断的自我批评,后来也参考了一些团队的经验,我整理了下面的大纲内容。 既然要吃透这个问题,我们势必要回到本源,我把这个问题分为三部分: “千万级”,“大表”,“优化”, 也分别对应我们在图中标识的 “数据量”,“对象”和“目标”。 我来逐步展开说明一下,从而给出一系列的解决方案。 1.数据量:千万级 千万级其实只是一个感官的数字,就是我们印象中的数据量大。 这里我们需要把这个概念细化,因为随着业务和时间的变化,数据量也会有变化,我们应该是带着一种动态思维来审视这个指标,从而对于不同的场景我们应该有不同的处理策略。 1) 数据量为千万级,可能达到亿级或者更高 通常是一些数据流水,日志记录的业务,里面的数据随着时间的增长会逐步增多,超过千万门槛是很容易的一件事情。 2) 数据量为千万级,是一个相对稳定的数据量 如果数据量相对稳定,通常是在一些偏向于状态的数据,比如有1000万用户

MySQL基本用法

杀马特。学长 韩版系。学妹 提交于 2019-12-02 11:38:18
以下内容的一些总结 create,alter,drop,show, 用于 表/数据库 DDL CRUD后都要加database/databases/table/tables select database(); -DOS窗口中查询当前正在使用的数据库,使用用use。 表中数据的增加用insert into,修改update,删除delete这两个一般加上限定条件WHERE DQL中NULL不能用“==” 等运算符判读,需要使用IS/IS NOT where与hanving限定的区别,在分组查询中,where限定是在分组之前,不满足条件不参与分组,having限定是在分组之后,不满足条件不会被查询出来。 where 后不能进行聚合函数的判断,having可以 修改表,进行数据项约束: alter table 表名 modify 列名 数据类型 NOT NULL; mysql中,唯一约束限定的列的值可以有多个null 删除特例 删除主键约束:ALTER TABLE stu DROP PRIMARY KEY; 删除唯一约束:ALTER TABLE stu DROP INDEX 列名; MySQL数据库软件安装与卸载 卸载 去mysql的安装目录找到my.ini文件 复制 datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/"

多表关系和查询

空扰寡人 提交于 2019-12-02 11:32:32
多表关系 社会中存储需要可以构建成表的数据, 它们形成的表,往往之间存储某种或某些社会关系, mysql数据库建立表结构就是社会中产生的各种数据, 分门别类管理 但mysql建立的(代码层次的)表之间, 同样需要处理表与表之间的关系 形成了 多对一 | 多对多 | 一对一 三种关系 """ 一对一:丈夫-妻子,用户-身份证,作者-作者详情 一对多:部门-员工,班级-学生,书-出版社 多对多:老师-班级,课程-学生,出版社-作者 """ # 书 - 出版社 - 作者 - 作者详情 外键分布 # 外键是 建立表与表关联 的字段,通常 一个表的外键 是 另一个表的主键(唯一键也可以) # 一对一:外键在任何一方都可以,此时外键要设置 唯一键 """ 作者(author):id,name,sex,age,mobile 作者详情(author_detail): id,info,address,author_id ---------------------------------------------------- 作者(author):id,name,sex,age,mobile, detail_id 1 Tom 1 2 Bom 2 3 Bob 3 作者详情(author_detail): id,info,address 1 Tom_info 2 Bom_info """ # 一对多