CHAR和VARCHAR的区别
存储方式和检索方式不同:
1、CHAR固定长度字符类型。CHAR存储定长数据,CHAR字段上的索引效率高,比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间。 缺点是浪费空间,检索时CHAR列删除尾部空格,若果要保留程序需要对行尾空格进行处理,对于那些长度变化不大并且对查询速度有较高要求的数据可以使用CHAR类型;
 2、VARCHAR可变长度字符类型。存储变长数据,但存储效率没有CHAR高。如果一个字段可能的值是不固定长度的,我们只知道它不可能超过10个字符,把它定义为 VARCHAR(10)是最合算的。VARCHAR类型的实际长度是它的值的实际长度+1。为什么“+1”呢?这一个字节用于保存实际使用了多大的长度。  
从空间上考虑,用varchar合适;从效率上考虑,用char合适。

import MySQLdb as mdb
db_host = 'localhost'

db_user = 'root'

db_pass = 'zjh'

db_name = 'databasename'

con = mdb.connect(db_host, db_user, db_pass, db_name)

从数据库中读取数据:
with con: 

cur = con.cursor()

cur.execute("SELECT id, ticker FROM symbol")

data = cur.fetchall() #返回一个元组组成的列表, 每个元组对应数据库表中的一行
con.close()

mysql中从一个表复制到另一个表
1. 复制数据到一个已经存在的表:
INSERT INTO table1 (***)
SELECT ***
FROM table2;
2. 复制旧表数据到另一张新表(未创建)可以用于实现表数据的备份:
CREATE TABLE newtable AS
SELECT * FROM oldtable;

复杂表结构的更改一般需要手动删除过程:
1.用新的列布局创建一个新表;
2.使用INSERT INTO SELECT 语句从旧表复制数据到新表
3.检验包含所需数据的新表
4.重命名旧表(如果确定,可以删除它)
5.用旧表原来的名字命名新表
6.根据需要,重新创建触发器,存储过程,外键和 索引

InnoDB的提供怎样的事务安全(数据库事务四个特性),为什么事务能保证失败回滚,
事务机制可以确保数据一致性。
事务应该具有4个属性:原子性、一致性、隔离性、持久性。这四个属性通常称为ACID特性。
  • 原子性(atomicity)。一个事务是一个不可分割的工作单位,事务中包括的诸操作要么都做,要么都不做。
  • 一致性(consistency)。事务必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。
  • 隔离性(isolation)。一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。
  • 持久性(durability)。持续性也称永久性(permanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其有任何影响。

MySQL问题总结(持续更新)的更多相关文章

  1. mysql问题汇总——持续更新

    1.this is incompatible with sql_mode=only_full_group_by set @@sql_mode='STRICT_TRANS_TABLES,NO_ZERO_ ...

  2. mysql日常笔记(持续更新)

    常用场景 sql_mode问题:http://blog.csdn.net/ccccalculator/article/details/70432123 连续日期补全/数据补零操作 在不使用存储过程和函 ...

  3. MySql报错(持续更新)

    目录 MySql报错 1. 重复键报错1062- duplicate entry '0' for key 'xxx' 1.1 报错场景 1.2 报错原因 1.3 解决方法 1.4 具体举例 2. VS ...

  4. MySQL问题汇总(持续更新)

    1.This function has none of DETERMINISTIC, NO SQL 原因: Mysql如果开启了bin-log, 我们就必须指定我们的函数是否是 1 DETERMINI ...

  5. Mysql操作笔记(持续更新)

    1.mysqldump备份导出 备份成sql mysqldump -hlocalIp -uuserName -p --opt --default-character-set=utf8 --hex-bl ...

  6. Mysql注入小tips --持续更新中

    学习Web安全好几年了,接触最多的是Sql注入,一直最不熟悉的也是Sql注入.OWASP中,Sql注入危害绝对是Top1.花了一点时间研究了下Mysql类型的注入. 文章中的tips将会持续更新,先说 ...

  7. RedHat 和 Mirantis OpenStack 产品的版本和功能汇总和对比(持续更新)

    Mirantis 和 Red Hat 作为 OpenStack 商业化产品领域的两大领军企业,在行业内有重要的地位.因此,研究其产品版本发布周期和所支持的功能,对制定 OpenStack 产品的版本和 ...

  8. java视频教程 Java自学视频整理(持续更新中...)

    视频教程,马士兵java视频教程,java视频 1.Java基础视频 <张孝祥JAVA视频教程>完整版[RMVB](东西网) 历经5年锤炼(史上最适合初学者入门的Java基础视频)(传智播 ...

  9. java 学习必备的软件,持续更新中

    小编会持续更新在学习Java过程中需要的软件以及各种文件: 话不多说,看行动! 一:JDK (1)JDK1.8(*64): 链接:https://pan.baidu.com/s/1vM0jNXn2CT ...

随机推荐

  1. 【css】圆角 +文本阴影

    1.  css3 圆角 http://www.cnblogs.com/lhb25/archive/2013/01/30/css3-border-radius.html 2. text shawdow ...

  2. vue-axios配置token,上传图片

    vue1.0用 vue-resource 目前不维护了 vue2.0用 axios 使用 1.安装axios, npm install axios 2.在main.js中配置 import axios ...

  3. 花了一年时间开发的TTF2FNT字库转换软件

    TTF(True Type Font)字库是微软定义的基于windows的标准字库格式.但其由于专利保护以及无法跨平台导致TTF字库在实际应用中无法有效使用. 为此我开发了TTF2FNT字库转换软件, ...

  4. 蓝桥杯比赛java 练习《立方变自身》

    立方变自身 观察下面的现象,某个数字的立方,按位累加仍然等于自身.1^3 = 1 8^3  = 512    5+1+2=817^3 = 4913   4+9+1+3=17... 请你计算包括1,8, ...

  5. LNMP环境的安装

    一.LNMP的安装 1.准备工作 #清理已经安装包 rpm -e httpd rpm -e mysql rpm -e php yum -y remove httpd yum -y remove mys ...

  6. 如何快速查看github代码库中第一次commit的记录

    发现一个别人推荐的代码库用来学习源码, star星还不少,别人推荐从第一次commit开始阅读,于是试着去找commits的第一次 问题来了,这个代码库commits7855次,点击进入commits ...

  7. Android -- 从源码的角度一步步打造自己的TextView

    1,自定义控件一直是我们的痛点,今天就和大家一点点去了解了解,首先一般的自定义控件都是继承于View类,所以我们先来看看view的一些重要的方法,这是官方文档,大家想了解更多也可以去看看,这里我展示对 ...

  8. 强密码和弱密码并没有什么区别?NIST密码安全标准更新:不再建议密码要求混合大写字母、字符和数字

    作为一名认真负责的小编,每次注册账号设置密码的时候都是最痛苦的,太简单的怕被破解,太难的又记不住. 等你好不容易记住密码,三个月后IT同学过来拍拍你的肩膀,"你的密码到期了,记得改啊--&q ...

  9. python web环境相关

    一. apache配置与支持cgi 1. 配置文件 Apache是一个后台运行的程序,没有界面.所有的配置,都包含在配置文件里.主配置文件是: ~\Apache\conf\httpd.conf 如果要 ...

  10. JavaScript正则表达式检验与递归函数实际应用

    JS递归函数(菲波那切数列) 实例解析: 一组数字:0  1  1  2  3  5  8  13                 0  1  2  3  4  5  6  7 sl(0)=0; sl ...