mysql 学习笔记(入门级)

这篇博客介绍了MySQL的Windows安装步骤,包括下载、解压、配置环境变量和启动服务。接着讲解了如何查看用户名和密码,以及常用数据库命令,如显示数据库、表和命令清单。内容涵盖更新密码、数据库与表的创建与删除,数据类型的概述,完整性约束的总结。还讨论了更改表格操作、常用的SQL运算符,以及INSERT、UPDATE、DELETE语句的用法。博客还涉及了SELECT查询、联表查询(JOIN)、子查询和MySQL的SHOW命令、正则表达式等相关知识。
摘要由CSDN通过智能技术生成

文章目录

1. Windows安装

下载官网:http://dev.mysql.com/downloads/mysql/5.6.html#downloads
选择对应版本的zip包(这里建议选择旧版本):mysql-5.6.47-winx64.zip

  • 解压到本地目录,如:D:\mysql\mysql-5.6.47-winx64

  • 安装后配置环境变量 (path中加入mysql目录\bin)

  • 修改配置文件,设定字符集UTF8
    在安装目录下,拷贝配置文件模板my-default.ini生成my.ini,在my.ini中增加以下内容:
    [client]
    default-character-set=utf8
    [mysqld]
    character-set-server=utf8
    collation-server=utf8_general_ci
    在这里插入图片描述
    注意:如果之前安装过mysql,则需要在后台退出mysql(快捷键Ctrl+Alt+Delete进入任务管理器中退出)

  • 启动Mysql
    进入cmd(注意这里要以管理员的身份运行),然后进入mysql安装目录bin,如:D:\mysql\mysql-5.6.47-winx64\bin;
    mysqld --console开启mysql服务;
    在这里插入图片描述
    如果还是启动不了,可以用管理员的方式打开mysql安装目录bin,输入以下代码

mysqld.exe -install

windows系统下关闭数据库:

mysqladmin -uroot shutdown

关闭后重新打开可以net start mysql启用服务器

  • 连接Mysql数据库
    在命令行输入 mysql -u root -p
    输入密码,可以选择输入你的密码,我这里就不设密码啦,直接回车,就进入了mysql的命令行环境了。在这里插入图片描述

注意:我在安装MySQL过程中用net start mysql 启动失败,报“错误2,系统找不到文件”,原因是服务的路径与安装的路径不一致,之前安装过mysql后卸载重装容易出现这样的问题,解决办法是:
修改windows注册表,windows+r 在运行对话框输入regedit,点击确定,进入注册表编辑器。选择HKEY_LOCAL_MACHINE ->SYSTEM -> CurrentControlSet -> services ->MySQL,修改ImagePath的路径为Mysql安装路径,例如:D:\mysql\mysql-5.6.47-winx64\bin\mysqld MySQL

2.查看用户名和密码,可输入“select * from mysql.user;”

在这里插入图片描述

3.Mysql的常用命令

(1)显示默认数据库:use dbname;

(2)显示所有数据库:show databases;

(3)显示默认数据库中的所有表:show tables;

(4)显示命令清单:\h

在这里插入图片描述

4.更新密码

使用:
update mysql.user set password=password(“新密码”)where user=‘root’;
在这里插入图片描述

5.创建、删除(库、表)的操作

(1)创建库:create database 数据库名

例如:create database student;

(2)创建表:

create table 表名(
» 列名1 列类型 [<列的完整性约束>],
» 列名2 列类型 [<列的完整性约束>],
» … … );

 create  table school(
 school_id int(10) not null auto_increment primary key,
 school_name varchar(20));

(3)删除数据库:drop database [if exists] db_name

例如:drop database student;

(4)删除表:drop table [if exists] tab_name

例如:drop table school;

(5)use student;是使用student库

6.mysql的数据类型有三种

(1)数值型

在这里插入图片描述
在这里插入图片描述

(2)字符串类型

在这里插入图片描述

(3)日期和时间类型

在这里插入图片描述

(4)总结常用的数据类型

在这里插入图片描述

7.常见的完整性约束

(1)not null:Ensures that a column cannot have a NULL value
(2)unique:Ensures that all values in a column are different
(3)primary key :A combination of a NOT NULL and UNIQUE. Uniquely identifies each row in a table
(4)foreign key:Uniquely identifies a row/record in another table
(5)check:Ensures that all values in a column satisfies a specific condition
(6)default:Sets a default value for a column when no value is specified
(7)index:Used to create and retrieve data from the database very quickly

例1:建立一个学生信息表(student)
(1)定义列sno学号,类型为5位定长字符串,非空,主键
(2)定义列sname姓名,类型为8位定长字符串,非空
(3)定义列sgender性别,取值1或0
(4)定义列sage年龄,类型为整型
(5)定义列sdept系名,数据类型为20位变长字符串

create table student(
sno char(5) not null primary key,
sname char(8) not null,
sgender int check(sgender=0 or sgender=1),
sage int,
sdept varchar(20));

例2:建立一个课程信息表(course)
(1)定义列courseid课程号,类型为整型,非空,自动增长,主键
(2)定义列cname课程名,类型为16位变长字符串,非空

create table course(
courseid int not null auto_increment primary key,
cname varchar(16) not null);

例3:建立一个学生考试成绩信息表(score)(1)定义列grade成绩,类型为整型

create table score(
grade int);

8. 更改表格操作

语法:alter table 表名 action;
先创建一个后续会用的表people:

create table people(
address varchar(100),
name char(8));

action:

(1)为表添加一列,如果没指定first或者after,则在列尾添加一列,否则 在指定列添加新列

add 列名 列类型 [first] | [after 列名]
例如:在people 表中增加sgender列

alter table people add sgender int check(sgender=0 or sgender=1); 

(2)为表添加一个主键

add primary key (列名)

(3)为表添加一个外键

add foreign key (列名)references 表名(列名)

(4)更改指定列的默认值

 `alter table 表名 alter 列名 [set default 默认值] | drop default]`  
 例如:在people表中将name 列设置默认值为100
alter table people alter name set default 100;
alter table people alter name drop default;

(5)改变列类型

modify 列名 类型
例如:将people表中的name类型改为varchar(16)

alter table people modify name varchar(16);

(6)改变列名

change 旧列名 新列名[类型]

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值