MySQL Advanced 4

Source: Internet
Author: User

Cascade Action
     1、cascade :数据级联更新         当主表删除记录或者更改被参考字段的值时,从表会级联更新     2、restrict(默认)         当主表删除或者更新被参考字段的值时,如果从表中有相关联记录则不允许主表删除或更新,必须先删除从表中相关联记录     3、set null         当主表删除或者更新被参考字段值时,从表中相关联记录的外键字段值自动设置为NULL     4、no action(同restrict)         on delete no action on update no action         同restrict,都是立即检查外键限制 6、删除外键     alter table 表名 drop foreign key 外键名;     注意:        1、外键名的查看方式            show create table 表名; 7、在已有表中添加外键     alter table 表名 add foreign key(参考字段名) references 被参考表名(被参考字段名)      on delete 级联动作     on update 级联动作     注意:        在已有表中添加外键时,会收到表中原有数据的限制
Data Backup (mysqldump, operating under Linux terminal)
1、命令格式    mysqldump -u用户名 -p 源库名 > 路径/XXX.sql2、示例    1、备份day03库,放到用户主目录下mydata/day03.sql3、源库名的表示方式    --all-databases 备份所有库    库名            备份单个库    -B 库1 库2 库3  备份多个库    库名 表1 表2    备份指定库的指定表4、练习    1、备份所有库all_mysql.sql    2、备份MOSHOU和day02库为md2.sql    3、备份MOSHOU库下的sanguo、hero两张表sh.sql
Data recovery
1、命令格式    mysql -u用户名 -p 目标库名 < 路径/XXX.sql2、从所有库的备份文件中恢复某一个库    mysql -u用户名 -p --one-database 库名 < all_mysql.sql3、注意    1、恢复库时如果恢复到原库会将表中数据覆盖,新增的表不会删除    2、在数据恢复时如果要恢复的库不存在,则先要创建空库
Transaction and transaction rollback
1、定义    一件事从开始发生到结束的整个过程2、作用    确保数据的一致性3、属性    1、原子性:一个事务是不可分割的工作单位,事务中的各个操作要么都做,要么都不做    2、一致性:事务必须从一个一致性状态到另一个一致性状态    3、隔离性:一个事务的执行不能被其他并发的事务干扰    4、持久性:一个事务一旦提交,它对数据库中数据的改变是持久性的4、事务及事务回滚的应用    1、MySQL中默认的SQL语句结果会自动commit到数据库        show variables like "autocommit";    2、事务应用        1、开启事务            mysql> start transaction;            mysql> ... 一句或多句SQL命令            ##此时autocommit被禁用,SQL命令不会对数据库中数据做修改        2、终止事务            mysql> commit; | rollback;    3、注意        事务和事务回滚只针对于对表记录的操作:增删改有效,对库和表的操作无效5、案例    1、背景        你:建行卡        你朋友:工行卡        你在建行的自动提款机上给你朋友转账5000元    2、过程        表1:CCB            create table CCB(            name char(20),            money int            );            insert into CCB values("转钱",100000);        表2:ICBC            create table ICBC(            name char(20),            money int            );            insert into ICBC values("借钱",0);
Python database programming
1、python数据库接口(Python DB-API)    1、定义        为开发人员提供的数据库应用编程接口    2、支持的数据库服务软件        MySQL、Oracle、SQL_Server、Sybase、MongoDB ...    3、Python提供的操作MySQL的模块        pymysql    4、pymysql的使用流程        1、建立数据库连接        2、创建游标对象        3、使用游标对象的方法和SQL语句操作数据库        4、提交commit        5、关闭游标对象        6、关闭数据库连接    5、建立数据库连接        1、语法            对象名=pymysql.connect            ("主机地址","用户名","密码","库名",charset="utf8",port=3306)        2、connect对象(db)支持的方法            1、cursor() 创建一个游标对象            2、commit() 提交到数据库(增删改)            3、rollback() 回滚            4、close()  关闭数据库连接        3、关于cursor对象支持的方法            1、execute(op)  执行基本SQL命令            2、fetchone() 取得结果集的第一行记录            3、fetchmany(size)取得结果集的size行记录            4、fetchall() 取得结果集的所有行            5、close()    关闭游标对象            属性:                rowcount 返回数据条数或影响行数

MySQL Advanced 4

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.