MySQL入门

摘要:这篇文章主要用来记录学习MySQL基础的过程,其中会省略一些比较高阶的知识点,只供自己mark一下整个过程和供以后查询用,内容将根据实际开发而实时更新。

一 . MySQL的使用及常用命令

1.1 MySQL服务在windows上的启动、停止

cmd命令行下
>net start mysql
>net stop mysql

1.2 MySQL 登陆

>mysql -uroot -p -P3306 -h127.0.0.1

其中各个参数的意义:
-D , –database = name //打开指定数据库
-h , –host = name //服务器名称
-p , –password[=name]

1.3 MySQL 常用命令

select version();
select now();
select user();
select database();

1.4 MySQL 语句规范

1) 关键字与函数名全部大写
2) 数据库名、表名、字段名全部小写
3) SQL语句必须";"结尾

二 . 数据库操作

2.1 与操作数据库相关的命令

show databases;
show warnings;
show create database db_name;
show variable like 'character%';

2.2 创建数据库

CREATE DATABASE [IF NOT EXITS] db_name [DEFAULT] CHARACTER SET [=] character_name;

2.3 修改数据库

ALTER DATABASE [db_name] [DEFAULT] CHARACTER SET [=] character_name;

2.4 删除数据库

DROP DATABASE [IF EXISTS] db_name;

三 . 数据类型

3.1 整数类型

整数类型 字节 数字范围(无符号时)
TINYINT 1 -128 到 127 常规。0 到 255 无符号*。
SMALLINT 2 -32768 到 32767 常规。0 到 65535 无符号*。
MEDIUMINT 3 -8388608 到 8388607 普通。0 to 16777215 无符号*。
INT 4 -2147483648 到 2147483647 常规。0 到 4294967295 无符号*。
BIGINT 8



  另外mysql 中 boolean类型是用TINYINT(1)来替换的。
  关于boolean类型可以参考:这篇博客


3.2 浮点数

浮点数类型 说明
FLOAT[(M,D)] M:数字总位数
D:小数位数
可精确到小数7位
DBOUBLE



3.3 日期时间

3.4 字符类型

列类型 存储需求
CHAR(M) 保存固定长度的字符串(可包含字母、数字以及特殊字符)。在括号中指定字符串的长度。最多 255 个字符。
VARCHAR(M) 保存可变长度的字符串(可包含字母、数字以及特殊字符)。在括号中指定字符串的最大长度。最多 255 个字符。
TINYTEXT 存放最大长度为 255 个字符的字符串。
TEXT 存放最大长度为 65,535 个字符的字符串。
MEDIUMTEXT 存放最大长度为 16,777,215 个字符的字符串。
LONGTEXT 存放最大长度为 4,294,967,295 个字符的字符串。
ENUM(‘value1’,’value2’,…) 允许你输入可能值的列表。可以在 ENUM 列表中列出最大 65535 个值。如果列表中不存在插入的值,则插入空值。注释:这些值是按照你输入的顺序存储的。可以按照此格式输入可能的值:ENUM(‘X’,’Y’,’Z’)
set() 与 ENUM 类似,SET 最多只能包含 64 个列表项,不过 SET 可存储一个以上的值。

关于枚举类型的详细说明见这个文章:点这里

四 . 数据表字段操作

4.1 与操作数据表字段相关的命令

use db_name;
SELECT database();
show tables;
show columns from table_name;
DESC table_name;

4.2 创建数据表
行称为记录,列称为字段。

CREATE TABLE [IF NOT EXISTS] tb_name (
    column_name data_type,
    ……
);

4.3 其他
NOT NULL
主键约束(PRIMARY KEY)
唯一约束(UNIQUE KEY)
UNSIGNED
DEFAULT

4.4 修改数据表字段

ALTER TABLE tb_name MODIFY [COLUMN] col_name col_definition [FIRST | AFTER col_name];
ALTER TABLE tb_name CHANGE [COLUMN] old_col_name new_col_name colomn_definition [FIRST | AFTER col_name];

4.5 添加数据表字段

ALTER TABLE tb_name ADD [COLUMN] col_name col_definition [FIRST | AFTER col_name];

4.6 删除数据表字段

ALTER TABLE tb_name DROP [COLUMN] col_name;

4.7 删除数据表

DROP TABLE [IF EXISTS] tb_name;

五 . 数据表记录操作

5.1 增 CREATE(insert)

INSERT [INTO] tb_name[(col_name,…)] {VALUE|VALUES}({expr|DEFAULT},…),(…);

tips:

  • 可以一次性插入多条记录
  • 对于自增主键字段的插入可以填NULL或者DEFAULT
  • 有DEFUALT定义的字段,在赋值时也可以用DEFAULT

    INSERT [INTO] tb_name SET col_name={expr|DEFAULT},…;
    

5.2 改 UPDATE (update)

UPDATE tb_name SET col_name1={expr|DEFAULT}[,col_name2={expr|DEFAULT}]… [WHERE where_condition]

5.3 查 READ (select)

SELECT select_expr[,select_expr…]
    [
        FROM table_references
        [WHERE where_condition]
        [GROUP BY {col_name|position} [ASC|DESC],…]
        [HAVING where_condition]
        [ORDER BY {col_name|expr|position} [AEC|DESC],…]
        [LIMIT {[offset,]row_count|row_count OFFSET offset}]
    ]

5.4 删 DELETE (delete)

DELETE FROM tb_name [WHERE where_condition];

你可能感兴趣的:(mysql)