MySql教程

MySQL数据库基础

本文主要是介绍MySQL数据库基础,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

目录

    • 注意事项
    • 库的操作
        • 进入数据库
        • 显示数据库
        • 创建数据库
        • 使用数据库
        • 删除数据库
    • 常用数据类型
        • 整型与浮点型
        • 字符串类型
        • 日期类型
    • 表的操作
        • 创建表
        • 查看表
        • 删除表
        • 修改表

注意事项

  1. SQL 语句中,每条语句都应该以;结尾;
  2. SQL 语句中,并不区分大小写,也不区分单引号双引号,都是一样的;
  3. SQL 语句中,数据库名称、表名称、字段名称并不能直接使用 SQL 中的关键字,如果非要使用,则需要将冲突的名字使用 “ ` ”(反引号)括起来;

库的操作

进入数据库

  • mysql -u用户名 -p:输入指令后敲回车,此时如果设置了密码,则需要输入密码,如果没有设置密码,则直接敲回车即可登入;

显示数据库

  • show databases;:查看所有已创建的数据库;
  • select database();:查看当前所操作的数据库;
    • show create database 库名称:查看创建数据库的 SQL 语句;

创建数据库

  • create database 库名称;:创建数据库,如果该数据库已存在,则会报错;
  • create database if not exists 库名称;:创建数据库,如果该数据库已存在,则不会报错;

使用数据库

  • use 库名称;:当你需要使用数据库时,你需要选择一个数据库来操作;

删除数据库

  • drop database 库名称;:删除数据库,如果该数据库不存在则报错,数据库中的内容也将会被全部删除,所以谨慎操作;
  • drop database if not exists 库名称;:删除数据库,如果该数据库不存在并不会报错,数据库中的内容也将会被全部删除,所以谨慎操作;

常用数据类型

整型与浮点型

数据类型大小说明对应 C 类型
BIT[ (M) ]M指定位数,默认为1二进制数,M 范围从 1 到 64,存储数值范围从 0 到 2^M - 1char[]
TINYINT1 字节signed char
SMALLINT2 字节short int
INT4 字节int
BIGINT8 字节long long int
FLOAT(M, D)4 字节单精度,M 指定长度,D 指定小数位数,会发生精度丢失float
DOUBLE(M, D)8 字节double
DECIMAL(M, D)M / D 最大值 + 2双精度,M 指定长度,D 表示小数点位数,精确数值char[]
NUMERIC(M, D)M / D 最大值 + 2双精度,M 指定长度,D 表示小数点位数,精确数值char[]

字符串类型

数据类型大小说明对应 C 类型
VARCHAR (SIZE)0 - 65535 字节可变长度的字符类型,m 代表了最多可以存储的字符个数,而不是字节个数,可变长的意思是,当 m 为 255,但你只存了 5 个字符,那么这个变量的大小就是 5 * 字符大小;char[]
TEXT0 - 65535 字节长文本数据char[]
MEDIUMTEXT0 -16777215 字节中等长度文本数据char[]
BLOB0 - 65535 字节二进制形式的长文本数据char[]

日期类型

数据类型大小说明对应 C 类型
DATETIME8 字节范围从 1000 到 9999 年,不会进行时区的检索及转换,常用MYSQL_TIME
TIMESTAMP4 字节范围从 1970 到 2038 年,自动检索当前时区并进行转换MYSQL_TIME
  • now():获取系统时间

表的操作

创建表

  • create table 表名称(变量名称1 变量类型, 变量名称2 变量类型, 变量名称3 变量类型...);在当前数据库中创建一张表,表中的字段为后面括号中所设置的,且顺序固定,如果表存在,则报错;
  • create table if not exists 表名称(变量名称1 变量类型, 变量名称2 变量类型, 变量名称3 变量类型...);在当前数据库中创建一张表,表中的字段为后面括号中所设置的,且顺序固定,如果表存在并不报错;
  • comment:可以为表中字段添加说明信息,示例如下:
create table stu_test (
	id int,
	name varchar(20) comment '姓名',
	password varchar(50) comment '密码',
	age int,
	sex varchar(1),
	birthday timestamp,
	amout decimal(13,2)
);

查看表

  • show tables;:查看当前所操作的数据库中的所有表;
  • describe / desc 表名称;:查看指定表的结构,也就是存放了什么变量、变量有什么属性等等;
  • show create table 表名称:查看创建表的 SQL 语句;

删除表

  • drop table 表名称;:删除指定的表;

修改表

  • alter table 表名称 rename 新名称;:将指定表的名称修改为新名称;
  • rename table 表名称 to 新名称;:将指定表的名称修改为新名称;
  • alter table 表名称 add 字段名称 字段属性 after 表中字段;:在表中某一字段后面添加新的字段;
  • alter table 表名称 drop 表中字段;:删除表中指定字段的那一列;
  • alter table 表名称 change 字段名称 新名称 字段属性;:重命名表中的某一列;
  • alter table 表名称 change 字段名称 字段名称 字段属性 after 表中字段;:将表中的某一字段移动到表中的另一字段后面,也就是调整字段顺序;
  • alter table 表名称 change 字段名 字段名 要修改的属性;:对表中字段的属性进行修改;
这篇关于MySQL数据库基础的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!