mysql基础

查看所有数据库 show databases;
创建数据库              create database 数据库名称;
查看数据库详情       show create database 数据库名称;
创建数据库指定字符集 create database 数据库名称 character set utf8/gbk;
删除数据库        drop database 数据库名称;
使用数据库    use 数据库名称;
创建表  create table 表名(字段1名 字段1类型,.....);
查询所有表        show tables;
查看表详情   show create table 表名;
创建表时指定引擎和字符集 create table 表名(字段1名 字段1类型,.....) engine=innodb  charset=utf8/gbk;
查看表字段信息 desc 表名;
删除表  drop table 表名;
修改表名 rename table 原名 to 新名
修改表引擎和字符集 alter table 表名 engine=innodb/myisam charset=utf8/gbk;
添加表字段  alter table 表名 add 字段名称 字段类型;(默认最后,可first或after 字段名)
删除表字段         alter table 表名 drop   字段名称;
修改表字段的名称和类型 alter table 表名 change 原字段名 新字段名 新字段类型;
修改表字段的类型和位置  alter table 表名 modify 字段名 新类型 first/after xxx;
指定字段插入 insert into 表名 (id,name) values(值1,值2);
批量插入数据 insert into person values(10,'悟空',500),(11,'八戒',250);
查询数据    select 字段信息 from 表名 where id<5;
修改数据 update 表名 set age=10 where id=2;
删除数据           

delete from 表名 where id=2;(如果不写条件则删除表内所有数据)

主键约束

- 什么是主键:用于表示数据唯一性的字段称为主键。

- 约束:是给表字段添加的限制条件。

- 主键约束:限制主键字段的值,唯一并且非空。

- 格式: create table t1(id int primary key,name varchar(10));

###主键约束+自增 primary key auto_increment 自增数值只增不减,从历史最大值基础上+1   

###删除表并且创建新表truncate table t2; //自增数值清零

- 外键:用于建立关系的字段称为外键

事务

事务是数据库中执行同一业务多条sql语句的工作单元,可以保证多条sql语句要么全部执行成功,要么全部执行失败。

- 创建用户表:

create table user(id int,name varchar(10),money int,state varchar(5));

- 插入数据:

insert into user values(1,'超人',50,'冻结'),(2,'蝙蝠侠',2000,'正常');

- 蝙蝠侠给超人转账200块钱 无事务保护:

update user set money=money-200 where id=2 and state='正常';

update user set money=money+200 where id=1 and state='正常';

- 有事务保护: 转账失败

begin;     //开启事务

update user set money=money-200 where id=2 and state='正常';                 

update user set money=money+200 where id=1 and state='正常';

rollback;   //回滚

- 有事务保护:转账成功          

insert into user values(3,'海王',10,'正常');

-蝙蝠侠给海王转账500

begin;

update user set money=money-500 where id=2 and state='正常';

update user set money=money+500 where id=3 and state='正常';

commit;  //提交

- 保存回滚点 savepoint 标识;

begin;

update user set money=money-10 where id=2;

savepoint s1;

update user set money=money-50 where id=2;

update user se

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值