MySql学习day1


一、数据库简介

1.1 概念

管理文件的一种软件,分为数据库---表---行

1.2 分类

关系型数据库:有强限制关系的MySql、Sql Server
非关系型数据库:没有限制关系MongGo、Redis

二、Windows安装

2.1 exe安装(自动)

2.2 zip包安装(手动)

下载:网盘地址https://pan.baidu.com/s/1nwnX3nz
1)初始化:新建data文件夹、cmd:路径\bin\mysqld --initialize-insecure 没有空格!
遇到的错误:mysqld: Could not create or access the registry key needed for the MySQL application to log to the Windows EventLog. Run the application with sufficient privileges once to create the key, add the key manually, or turn off
logging for that application.
解决方法:以管理员身份运行cmd
2)运行服务器端
3)运行客户端,以mysql -u root -p密码为空登陆
4)可以加入环境变量方便使用
5)添加应用服务:路径\bin\mysqld -install
删除应用服务:路径\bin\mysqld -remove
启动:net start MySql
停止:net stop MySql

三、登陆

sql (-h ip地址) -u 用户名 -p 

四、语法

4.1 用户管理

新增:create user 用户名@登陆IP identified by 密码;   
授权:grant 权限 on 数据库.表名 to 用户名@登陆IP;
取消授权:revoke 权限 from 数据库.表名 to 用户名@登陆IP;

公司一般有DBA,专为各员工分配权限

4.2 数据库操作

增:create database 数据库名 default charset utf8;
删:drop database 数据库名;
改:
查:show databases;

4.3 表操作

增:create table 表名(
      列名1 类型1,
      列名2 类型2,
      id int not null auto_increment primary key    
     #auto_increment自增 primary key字典值-加速查找     
      ) engine=innodb default charset=utf8               
     #innodb支持事务,原子性操作
清空:delete from 表名     #自增号继续
    truncate table 表名  #自增号从头开始
删:drop table 表名
改:
查:show tables;

4.4 行操作

增:insert into 表名(列1、列2) values(值1、值2);
删:delete from 表名 where
改:update 表名 set 列1=新值 (where)
查:select 列名 from 表名

五、列支持的数据类型

5.1 数字

tinyint
int
bigint

float
double
decimal

5.2 字符串

char #固定长度,速度快
varchar #变长,节省空间
技巧:定长的列往前放
test

5.3 时间

DATETIME

5.4 其他

enum枚举
set集合---枚举的任意组合

六、外键

1、和别的表指定列的映射关系
2、创建表时:

constraint fk_别名 foreign key (本表列) references 外表名(外表列)

七、作业


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM