mysql基础

连接数据库

host :主机 -h
username :用户名 -u
password :密码 -p
port:端口 -P
例:
//连接本地 -h 可以省略,如果连接3306端口可以省略 
mysql -h127.0.0.1 -P3306 -uroot -proot;

创建表

create table [if not exists] 表名(
字段名 数据类型 [null | not null] [auto_increment] [primary key] [comment]
字段名 数据类型 [default]
)engine = 存储引擎

例:
set names gbk;
create table if not exists stu(
    id int auto_increment primary key comment `主键`,
    name varchar(20) not null,
    address varchar(100) default `地址不详`
    ) engine = innodb;
  • 查看创建表
show create table 表名;
  • 查看表结构
desc 表名;
  • 删除表
drop table [if exists] 表1 ,表2...;
  • 修改表
alter table 表名;
1.添加字段
//[位置] 有两个关键字 first 或者 after 表名
alter table 表名 add [column] 字段名 数据类型 [位置];

2.删除字段
alter table 表名 drop [column] 字段名;

3.修改字段
//既改字段名 又改字段类型
alter table 表名 change 原字段名 新字段名 数据类型;
//仅改字段类型
alter table 表名 modify 字段名 数据类型;
  • 插入数据
//1.数据库中没有字符串概念 不能出现双引号
//2.字段顺序可以任意调整 但是values中必须要和字段对应
//3.可以插入部分字段 但是非空字段必须插入
//4.自动增长字段可以不插入
//5.如果插入所有字段,并且值和表的字段一一对应,那么字段可以省略
//5.如果省略字段,那么自动增长值可以插入null
//6.如果想插入某个字段的默认值,值可以使用defaule关键字
//7.一次性插入多条数据时,values后面跟多个()用逗号隔开
insert into 表名 [(字段名 , 字段名...)] values (值1,值2...),(值1,值2...);
  • 更新数据
//1.修改多个字段时,set 字段=值,字段=值
//2.如果不加where时,会更新所有数据
update 表名 set 字段 = 值 [where 条件];
  • 删除数据
delete from 表名  [where 条件];
  • 清空表
//1.delete from 表名;是一条条遍历,一条条删除,新插入的数据自动增长字段继续累加
//2. truncate是删除表,重新重建表,新插入的数据自动增长字段从1开始
truncate table 表名 ;
  • 查询数据
//星号代表所有列
select 列名 from 表名;
  • 复制表
//从表名2复制数据到表1 不复制表信息(例如主键)
create table 表名1 select 列名 from 表名2; 
//按照表2的表信息创建表1,不复制数据
create table 表名1 like 表名2; 
  • 数据类型
整型 字节
tinyint [unsigned] 1
smallint [unsigned] 2
mediumint [unsigned] 3
int [unsigned] 4
bigint [unsigned] 8
create table stu (
id int(5),
age int(5) zerofill #如果age没超过5位,填充前导0
);
浮点型 字节
float [unsigned] 4
double [unsigned] 8
浮点数在数据库内保存的近似值
浮点数声明:float(M,D) ,double(M,D)
M:总位数
D:小数位数
定点型 字节
decimal [unsigned] 不知道(拆分为两个数存储)
定点数会将小数拆分为两个数存储
浮点数声明:decimal(M,D)
M:总位数
D:小数位数
字符型 描述
char(长度) 定长
varchar(长度) 变长
tinytext 大段文本
text 大段文本
mediumtext 大段文本
longtext 大段文本
char(长度),varchar(长度) 定长和变长都不能超过后面的长度
枚举型 描述
enum 只能插入列举的值
create table stu(
name varchar(20),
sex enum('男','女')
);
  • 时间
时间类型型 描述
datetime 占用8字节
范围:1~9999
格式:年-月-日 时:分:秒
date 占用3字节
time 时间, 占用3字节
格式:天 时:分:秒时:分:秒
范围:-838:59:59 ~ 838:59:59
timestamp 时间戳,占用4字节
范围:1970-1-1 0:0:0 ~ 2038-1-19 11:14:07
year 年份,占用1字节
  • 列表属性
关键字 描述
null / not null
default
auto_increment 1.从1开始增长,自动增长都是无符号整数
2.auto_increment的必须是主键,但是主键不一定自动增长
primary key 1.主键不允许重复,不能为null
2.一个表还能有一个主键,主键可以由多个字段组成
unique [key] 1.不能重复可以为空
2.一个表可以有多个唯一键
comment 注释

主键添加方式:

1.方法1
create table stu (
    id int primary key,
    name varchar(20)
);
方法2
create table stu (
    id int ,
    name varchar(20),
    primary key(id)//这里可以添加多个字段形成组合主键盘
);
方法3
alter table stu add primary key(id);

主键的作用:
1.保证数据完整性
2.加快查询速度

唯一键添加方式:

1.方法1
create table stu (
    id int primary key,
    name varchar(20) unique
);
方法2
alter table stu add unique (name);

唯一键和主键的区别:
1.主键不能为空,唯一键可以为空
2.主键只能有一个,唯一键可以有多个

唯一键的删除

alter table 表名 drop index 唯一键名;
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,014评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,796评论 3 386
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,484评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,830评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,946评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,114评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,182评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,927评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,369评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,678评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,832评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,533评论 4 335
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,166评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,885评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,128评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,659评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,738评论 2 351

推荐阅读更多精彩内容

  • MySQL基础操作 使用方法:​ 方式一: 通过图型界面工具,如 Navicat 等( 高级课使用 )​ 方式二:...
    羋学僧阅读 397评论 0 0
  • MYSQL 基础知识 1 MySQL数据库概要 2 简单MySQL环境 3 数据的存储和获取 4 MySQL基本操...
    Kingtester阅读 7,790评论 5 116
  • MySql基础 1、初识Mysql 1.1 什么是数据库 数据库(DataBase):长期存放在计算机内,有组织,...
    渣渣殇阅读 161评论 0 0
  • 数据库基础知识 数据库客户端MySQL作为数据库服务器来运行,任何满足mysql通信规范的软件都可以作为客户端来连...
    littlexjing阅读 897评论 0 2
  • 一、安装及配置 二、基础操作 三、MySQL开发规范总结 (一)、设计规范 【推荐】字段允许适当冗余,以提高查询性...
    乡下程序员阅读 114评论 0 0