概述
[连接数据库]:cmd->cd phpStudyMysqlbinmysql(.exe) -hlocalhost -uroot-proot
[查看已有数据库]:show databasses;
[创建数据库]:create database jingyingba character set utf8;
[删除数据库 ]:drop database jingyingba;
[使用数据库]:use jingyingba;
[查找精英吧数据库里面的user表]:select* from user;
[显示所有的数据库]:show databases:
约束:
constraint [限制输入字符类型]
索引:index [提高数据库访问速度]
主键:primary key [必须有的 一般用id]
外键:foreign key [两个表的连接]
数据类型
int(4)
bigint(8)
浮点型:
float(4)
double(8)
decimal(自定义)
字符串类型
text
varchar()
二进制
bolb
日期和时间类型
date 3 YYYY-MM-DD
time 3 hh:mm:ss
datetime 8 YYYY-MM-DD hh:mm:ss
字段属性:
AUTO_INCREMENT:auto_increment:自增
NULL和NOT NULL:能否为空 null not null
DEFAULT:给定默认值 default
DDL
主键索引:
主键索引是关系型数据路最常见的索引类型
主要作用确定数据表中一条数据的位置
主键是唯一标识
每一个表只有一个主键
主键不能为空
唯一索引
唯一索引与主键索引一样,可以防止创建重复的值
主键只能有一个,唯一索引可以有多个
避免出现重复数据
创建表
create table 表名{
字段1 类型(长度) [索引]
字段2 类型(长度) [索引],
字段3 类型(长度) [索引]
}[表类型][字符集];
例子
create table hello(
id int(10) unsigned not null primary key auto_increment,
username varchar(30),
password varchar(32),
telphone int(11)
)engine=mysam default charset=utf8;
unsigned:没有符号的整形 表示正数
primary key:主键
auto_increment:自动增长
密码32位:是因为密码存储时用md5加密 加完之后就是32位
最后一个字段名后面不可以加符号','否则就要再写一个
engine=myisam 设置表的类型
default 设置字符编码 uft-8;
基本命令:
显示所有的表:show tables;
删除表:drop table hello[表名];
显示单一表结构:desc hello[表名]:
查看所有表:show tables;
添加字段名:laert table [表名] add 字段名 属性(长度);
alter table hello add sex tinyint(1);
修改表的字段属性:alert table [表名] modify [属性名] [类型]
alert table hello modify telphone char(11);
修改表名 (as 可以省略):alert table [旧表名] rename as [新表明];
alert table hello rename as members;
修改列名:alert table [表名] change [旧表名] [新表名] [属性];
alert table hello change phone telphonr int(11)
表的数据操作
添加数据;insert into [表名] (字段1,字段2,字段3) value(值1,值2,值3)
insert into hello (username,password,telphone,sex) value('张三',md5('123456'),'12345678912',0)
修改数据: updata [表名] set [字段名]=[值],[字段名]=[值] where [主键] = [值];
updata hello set username='张山',score = 100 where id=1;
聚合函数 sum count
查看最大值: max();
查看最小值:min();
统计个数:count();
查看平均数:avg();
例子:
select max(score) from hello;
select username,max from hello;
select count (*) from hello;
selct min(score) from hello
select avg(score) from hello
select usernmaem,min(score) from hello;
浏览器查看MYSQL:
浏览器打开 在地址框输入localhost /phpMyAdmin/index
http://localhost/phpMyAdmin/index.php
数据库存储的位置:/phpStudy/MYSQL/data
建立标的时候不可以使用单引号 但是可以使用反引号
使用了数据库才可以创建表
MyISAM和innnoDB的区别
5.5默认为MySAM 不支持事务
innoDB 支持事物 当数据很多的时候
MySAM开始变慢 不够稳定
innoDB 相对比较稳定
但数据比较小的时候 使用MySAM 处理比较快
——————————以下是网上摘抄的
◆1.InnoDB不支持FULLTEXT类型的索引。
◆2.InnoDB 中不保存表的具体行数,也就是说,执行select count(*) from table时,InnoDB要扫描一遍整个表来计算有多少行,但是MyISAM只要简单的读出保存好的行数即可。注意的是,当count(*)语句包含 where条件时,两种表的操作是一样的。
◆3.对于AUTO_INCREMENT类型的字段,InnoDB中必须包含只有该字段的索引,但是在MyISAM表中,可以和其他字段一起建立联合索引。
◆4.DELETE FROM table时,InnoDB不会重新建立表,而是一行一行的删除。
◆5.LOAD TABLE FROM MASTER操作对InnoDB是不起作用的,解决方法是首先把InnoDB表改成MyISAM表,导入数据后再改成InnoDB表,但是对于使用的额外的InnoDB特性(例如外键)的表不适用。
---------------------
作者:席飞剑
来源:CSDN
原文:https://blog.csdn.net/xifeijian/article/details/20316775
版权声明:本文为博主原创文章,转载请附上博文链接!
最后
以上就是昏睡小丸子为你收集整理的mysql 笔记的全部内容,希望文章能够帮你解决mysql 笔记所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复