Mysql学习心得

mysql多表查询:
内连接:join,inner join 数据的交集
外连接:left join,left outer join 数据的交集 并上 左边表的特有数据
right join,right outer join数据的交集 并上 右边表的特有数据
union
交叉连接:cross join

mysql显示字符编码命令:show variables like ‘character%’;
设置密码:set password for ‘root’@‘localhost’ = password(‘mypasswd’);
mysql中engine=innodb与engine=myisam的区别:
myisam强调性能,其执行速度比innodb类型更快,但不提供事务处理等高级处理,myisam类型的二进制文件,可以在不同操作系统中迁移
innodb提供事务支持以及外键等高级数据库功能。
MySql存储引擎MyISAM和InnoDB的区别。
①MyISAM不支持外键,InnoDB支持外键。
②MyISAM不支持事务,InnoDB支持事务。
③MyISAM是表锁,InnoDB是行锁。
④MyISAM支持全文索引,InnoDB不支持。
⑤MyISAM的查询速度比InnoDB快。
mysql推荐使用ALTER USER修改密码:
基本使用
ALTER USER testuser IDENTIFIED BY ‘123456’;
修改当前登录用户
ALTER USER USER() IDENTIFIED BY ‘123456’;
使密码过期
ALTER USER testuser IDENTIFIED BY ‘123456’ PASSWORD EXPIRE;
使密码从不过期
ALTER USER testuser IDENTIFIED BY ‘123456’ PASSWORD EXPIRE NEVER;
按默认设置过期时间
ALTER USER testuser IDENTIFIED BY ‘123456’ PASSWORD EXPIRE DEFAULT;
指定过期间隔
ALTER USER testuser IDENTIFIED BY ‘123456’ PASSWORD EXPIRE INTERVAL 90 DAY;
使用SET PASSWORD的password有两种:
使用默认加密
SET PASSWORD FOR testuser = ‘123456’
使用PASSWORD()函数加密
SET PASSWORD FOR testuser = PASSWORD(“123456”)
mysql(create user)的一些命令:
– 查看系统用户
select Host,User,Password from mysql.user;
– 创建一个远程用户
create user test identified by ‘123456’;
– 分配权限
grant all privileges on . to ‘test’@’%'identified by ‘123456’ with grant option;
– 刷新mysql用户权限
flush privileges ;
– 修改指定用户密码
update mysql.user set password=password(‘新密码’) where User=“test” and Host=“localhost”;
– 删除用户
delete from user where User=‘test’ and Host=‘localhost’;
– 查看mysql支持字符集
show variables like “% character %”;
– 建立数据库并指定编码
create database app_relation character set utf8;
– 修改数据库编码
alter database app_relation character set utf8;
MySQL 中删除账户,出现 ERROR 1046 (3D000): No database selected 问题的解决方法:
delete from user where user=‘用户名’;出现:ERROR 1046 (3D000): No database selected
因为是直接使用 SQL 语句的方式来删除账户,所以必须先选择 mysql 自身的数据库:
mysql>use mysql;
–主键约束(Primary Key constraint):要求主键列的数据唯一,并且不允许为空。
–唯一约束(Unique Constraint):要求该列唯一,允许为空,但只能出现一个空值。
–检查约束(Check Constraint):某列取值范围限制、格式限制等,如有关年龄的约束。
–默认约束(Default Constraint):某列的默认值,如我们的男性同学较多,性别默认为男。
–外键约束(Foreign Key):用于在两表之间建立关系需要制定引用主表的哪一列。
–语法如下
–alter table 表名
–add constraint 约束名 约束类型 具体的约束说明
–示例:
–添加主键约束
alter table stuInfo
add constraint PK_stuNo primary key(stuNo)
–添加唯一键约束
alter table stuInfo
add constraint UQ_stuID unique(stuID)
–添加默认约束
alter table stuInfo
add constraint DF_stuAddress default(‘地址不详’) for stuAddress
–添加检查约束
alter table stuInfo
add constraint CK_stuAge check(stuAge between 15 and 40)
–添加外键约束
alter table stuInfo
add constraint FK_stuNo foreign key(stuNo) references stuInfo(stuNo)
–删除约束
–alter table 表名 drop constraint 约束名

你可能感兴趣的:(Mysql学习心得)