mysql day01

-- 第一个mysql自带有个问题

set @@global.sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';

然后关闭连接重新打开

修改MySQL编码

* 编辑配置文件:```vim /etc/my.cnf``

[client]

default-character-set = utf8mb4

[mysqld]

character-set-server = utf8mb4

collation-server = utf8mb4_general_ci

* 重启MySQL

systemctl restart mysqld

* 登录并查看MySQL编码

  # 123456需替换为自己的密码

  mysql -uroot -p123456

  

  # 需在MySQL的shell中执行

  show variables like "%char%";

-- mysql默认的编码集是latin1,修改成utf8mb

use shujia;

-- 建表语句

-- create table 表名(

--     字段名字 字段类型,

--     字段2,

--      ....

--      字段n

-- )

-- 字段定义属性时,必须给上长度,int比较特殊 不需要给默认长度为11

-- create table students(

-- id int(11),

-- name VARCHAR(255),

-- age int

-- );

-- drop table if exists students;

-- create table 表名(

--     字段名字 字段类型 字段属性,

--     字段2,

--      ....

--      字段n

-- )

-- 如果你不想字段为 NULL 可以设置字段的属性为 NOT NULL, 在操作数据库时如果输入该字段的数据为NULL ,就会报错。

-- AUTO_INCREMENT定义列为自增的属性,一般用于主键,数值会自动加1。

-- PRIMARY KEY关键字用于定义列为主键。 您可以使用多列来定义主键,列间以逗号分隔

-- 自增只能加给数值

-- drop table student;

-- create table student(

-- id int(11) AUTO_INCREMENT,

--   name varchar(255) AUTO_INCREMENT,

-- PRIMARY KEY(id)

-- )ENGINE=INNODB default charset=utf8;

-- sex

-- enum类型 所修饰的字段 有固定的值

-- 字段名字 enum('值1','值2')

-- enum类型 所修饰的字段 有固定的值通常 这些值用数字表示

-- drop table student;

-- create table student(

-- id int AUTO_INCREMENT,

-- name VARCHAR(255) not null,

-- age INT,

-- sex enum('0','1','2'), -- sex 男 女 未知

-- PRIMARY KEY(id)

-- );

-- drop table student;

-- create table student(

-- id int,

-- name varchar(255),

-- age int not null DEFAULT 18

-- );

-- 1500100001,施笑槐,22,女,文科六班

create table students(

    id int(11) not null AUTO_INCREMENT,

    name VARCHAR(255) not null,

    age int DEFAULT 18,

  sex enum('0','1','2') default '2',

    clazz enum('文1','文2','理1','理2'),

  PRIMARY KEY(id)

);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值