首页 > 数据库 >学习MySQL,创建表,数据类型

学习MySQL,创建表,数据类型

时间:2023-07-23 21:45:12浏览次数:56  
标签:comment 10 varchar database 创建 数据库 数据类型 char MySQL

连接本地mysql语句

mysql -hlocalhost -uroot -proot

MySQL通用语法

DDL数据库操作

DDL:数据定义语言,用来定义数据库对象(数据库,表,字段)

查询所有数据库

show databases;

创建数据库

语法:create database [if not exists] 数据库名称 [default charset 字符编码];

create database itdemo1[数据库名称];
ps:如果重复创建数据库名称,会创建失败;

那么我现在有一个想法:
如果某一个特数据库名称存在,则不创建,如果不存在,则创建。
我们可以使用if not exists
命令是:create database if not exists  itdemo1;

在mysql中不不建议将字符编码设置为uft8;
因为uft8存储的最大长度是3个字节;

创建数据库并且设置字符集编码

create database demo02 default charset utf8mb4;

使用数据库

数据库创建成功之后,我们就需要使用数据库;
使用数据库是:
use itdemo1[数据库名称];

查询当前正在使用的数据库

select database();

删除数据库

语法:drop  database [if exists] 数据库名称;
如果删除一个不存在的数据库,会报错;

drop  database demo01; 删除demo01这个数据库
drop  database if exists demo11; 如果存在demo11删除,不存在不删除

查询当前库中的所有表

show tables;

创建表

create  table  表名 (
  字段1 字段1类型 [comment 字段1 注释],
  字段2 字段3类型 [comment 字段2 注释]
)[comment 表注释]
ps:最后一个字段是没有逗号的。特别强调

现在我们来创建一个

查看当前数据库中有哪些表

show tables;

查看创建表的注释描述

show create table tab_user(表名);
你会看见如下:

| tab_user | CREATE TABLE `tab_user` (
  `id` int(11) DEFAULT NULL COMMENT '编号',
  `name` varchar(50) DEFAULT NULL COMMENT '人物姓名',
  `age` int(11) DEFAULT NULL COMMENT '年龄',
  `sex` varchar(1) DEFAULT NULL COMMENT '性别0男,1女'
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='用户表'

其中:ENGINE=MyISAM 表示的存储引擎
CHARSET=utf8 字符编码

查看表的结构

desc 表名;

数据类型

MySQL中数据类型有很多。
主要分为3类:1.数值类型,字符串类型,日期时间类型。



char 与 varchar

在使用 char[定长字符串] 或者 varchar[变长字符创] 的时候,都需要跟上一个参数。
char(10)或者varchar(10) 表示:最大存储长度10个字符,超出报错。
char(10)表示你只存一个字符,也会占用10个字符的空间,未使用的空间使用空格进行补位。
所以我们一般是不会使用char。
varchar(10):如果你只使用了一个字符,那么它就占用一个字符的空间。
你使用2个字符,就占用2个字符的空间。
它会根据你使用的字符计算它所占用的空间。

char 与 varchar 的区别

1.char的性能好一些, varchar性能相对差一些。
因为:varchar会根据我们存储的内容去计算所占用的空间

什么场景使用char,什么场景使用 varchar

如果存储的内容是不固定的使用varchar,如用户名是5-10个长度
如果存储的内容是固定的,使用char,如:性别

创建一个员工信息表

create table personnel(
  id int comment '员工编号',
  workno varchar(10) comment '员工工号',
  name varchar(10) comment '姓名',
  sex char(2) comment '男或者女',
  age tinyint unsigned comment '年龄',
  idcard char(18) comment '身份证',
  intime date comment '入职时间'
) comment '员工表';
关于年龄:我们在数值类型中有一个 tinyint 类型。
它的无符号类型在(0,255)之间,它是小整数值。
年龄使用它tinyint是合适的。

关于入职时间:关于时间有一个 date类型。
它的范围在1000-01-01至9999-12-31.
格式是YYYY-MM-DD,向出生日期,入职时间,都可以使用这份date

尾声

之前一直在说卷后端,都没有怎么行动,现在开始行动起来了。
现在的计划使用60天的时间,去学习MySQL。
希望学完之后,可以做到熟练使用。
加油! 学习的第一天。

标签:comment,10,varchar,database,创建,数据库,数据类型,char,MySQL
From: https://www.cnblogs.com/IwishIcould/p/17575949.html

相关文章

  • 查询mysql 某个表下一个自增id
    查询MySQL某个表下一个自增ID作为一名经验丰富的开发者,你经常需要与数据库打交道。在MySQL中,自增ID是一种常见的使用方式,用于唯一标识每一条记录。当你需要查询某个表的下一个自增ID时,可以按照以下步骤进行操作。步骤概览下面是整个查询MySQL某个表下一个自增ID的流程概览:步......
  • 查询mysql 安装版本,mac
    查询MySQL安装版本在Mac上使用MySQL时,有时候我们需要查看MySQL的安装版本信息。本文将介绍如何通过命令行和MySQL客户端来查询MySQL的安装版本。通过命令行查询MySQL安装版本在终端中执行以下命令可以查询MySQL的安装版本:mysql--version这个命令会返回MySQL的版本信息,例如:m......
  • 查询MySQL公式字段重命名
    查询MySQL公式字段重命名作为一名经验丰富的开发者,你需要教会一位刚入行的小白如何实现“查询MySQL公式字段重命名”。下面将详细介绍整个流程,包括每一步需要做什么以及需要使用的代码及其注释。流程图下表展示了查询MySQL公式字段重命名的流程。步骤动作代码1连接......
  • 查看mysql模式
    查看MySQL模式的流程本文将介绍如何通过命令行和SQL语句查看MySQL数据库的模式。步骤下面是查看MySQL模式的流程表格:步骤描述1连接到MySQL服务器2选择要查看的数据库3查看数据库中的所有表4查看表的结构5查看表的数据6查看表的索引7查看表的......
  • matlab 郭彦甫 4 数据类型与文件读写
    数值类型 numeric   默认为double类型  也可以使用类型转换将其转换为其他类型n=3;class(n)%得到double类型n=int8(30);class(n)%得到int8类型字符类型(char)   %%s1='h'%char类型显示占2个字节a=uint8(s1)%强制将s1......
  • mysql根据现有表创建新表【转】
    1、语法1:CREATETABLEnew_tblLIKEorig_tbl;1、1根据departments表创建新表departments1使用命令:CREATETABLEdepartments1LIKEdepartments;这种语法,将从源表复制列名、数据类型、大小、非空约束以及索引和主键。而表的内容以及其它约束不会复制,新表是一张空表。2、语......
  • C#查询MySQL id=5
    C#查询MySQLid=51.流程图表步骤动作1连接到MySQL数据库2构建SQL查询语句3执行查询4处理查询结果2.代码实现首先,你需要在C#项目中添加MySQL连接库,可以通过NuGet包管理器搜索并安装MySql.Data包。接下来,你需要在代码文件的开头添加一行引用语句:usi......
  • 创建本地yum仓库
    创建本地yum仓库1,将镜像挂载到/mnt如果失败打开虚拟机把设备状态的两个选项打勾2,切换到客户端的指定目录 3,创建文件夹bak存放网络yum创库配置文件 4,将网络源移动到bak减少干扰5,编辑yum仓库6,清理缓存7,重建元数据结构8,安装tree......
  • mysql如何减少主从复制延迟
    如果延迟比较大,就先确认以下几个因素: 从库硬件比主库差,导致复制延迟 主从复制单线程,如果主库写并发太大,来不及传送到从库,就会导致延迟。更高版本的mysql可以支持多线程复制。慢sql语句过多网络延迟master负载(主库读写压力大,导致复制延迟,架构的前端要加buffer及缓存层) ......
  • Ubantu下安装mysql8.0密码重置
    ubantu下安装mysql8.0使用推荐的aptitude来安装,省心省力。sudoaptitudeinstallmysql-server无脑“Y“安装成功。sudomysql-uroot-p会让你输入密码,密码???什么密码,什么时候有密码了。这种方式安装的貌似没有给设置密码的机会。所以需要重新设置。首先编辑sudovim/etc......