当前位置:Gxlcms > mysql > MySQL命令学习(一)_MySQL

MySQL命令学习(一)_MySQL

时间:2021-07-01 10:21:17 帮助过:33人阅读

今天我们来学习一下MySQL中的常用命令(MySQL中的命令关键字是不区分大小写的):

(1)show databases; 显示MySQL中的所有database

(2)create database dbname; 在MySQL中创建database dbname

比如我们创建一个名为student_db的数据库:create database student_db;

(3)use dbname; 使用database dbname

比如我们准备使用student_db这个数据库:use student_db;

(4)drop database if exists dbname; 不带任何提示的删除database dbname

比如我们删除student_db这个数据库:drop database if exists student_db;

(5)show tables; 显示database中所有的table

(6)describe tablename; 显示表tablename的结构

比如我们想知道student_db下面的表student_info的结构:describe student_info;

(7)create table if not exists dbname.tablename(filed1,filed2,……); 创建表tablename

比如我们想在student_db下面创建student_info表:

create table if not exists student_info(
stu_id Char(20) not null primary key,
stu_name VarChar(8) not null,
stu_sex char(2) not null,
stu_birthday date not null,
stu_class varchar(50) not null,
stu_major Char(8) not null,
stu_credit Tinyint default 0,
stu_remark Text null);

在这里插入一点数据类型的介绍

*************************************************************************************************************************

*************************************************************************************************************************

MySQL数据类型

(1)Text类型

CHAR(size) 保存固定长度的字符串(可包含字母、数字及特殊字符),在括号中指定字符串的长度,最多255个字符

VARCHAR(size)保存可变长度的字符串(可包含字母、数字及特殊字符),在括号中指定字符串的最大长度,最多255个字符

TINYTEXT 存放最大长度为255个字符的字符串

TEXT 存放最大长度为65535个字符的字符串

BLOB 用于BLOBS(Binary Large Objects), 最多存放65535个字节的数据

...

(2)Number类型

TINYINT(size)-128到127,无符号0到255,在括号中规定最大数

SMALLINT(size)-32768到32767,无符号0到65535,在括号中规定最大数

MEDIUMINT(size)-8388608到8388607,无符号0到16777215,在括号中规定最大数

INT(size)-2147483648到2147483647,无符号0到4294967295,在括号中规定最大数

FLOAT(size,d)带有浮动小数点的小数字,在括号中规定最大位数,在d参数中规定小数点右侧的最大位数

DOUBLE(size,d)带有浮动小数点的大数字,在括号中规定最大位数,在d参数中规定小数点右侧的最大位数

DECIMAL(size,d)作为字符串存储的double类型,在括号中规定最大位数,在d参数中规定小数点右侧的最大位

...

(3)DATE 类型

DATE 日期格式:YYYY-MM-DD支持的范围是从‘1000-01-01’到‘9999-12-31’

TIME 时间格式:HH:MM:SS支持的范围从‘-838:59:59’到‘838:59:59’

...

*****************************************************************************************************************************

*****************************************************************************************************************************

(8)insert into tablename values(value1,value2,......) ; 向表tablename中插入一行数据

比如向student_info表里面连续插入六条数据:

insert into student_info
values('1001101620004','刘继桧','男','1984-11-25','100110162','软件工程',100,'');

insert into student_info
values('1001101620005','张三','男','1982-12-25','100110162','软件工程',100,'');

insert into student_info
values('1001101620006','李四','男','1982-1-25','100110162','软件工程',100,'');

insert into student_info
values('1001101620007','王五','男','1983-8-25','100110162','软件工程',100,'');

insert into student_info
values('1001101620008','赵六','男','1986-9-25','100110162','软件工程',100,'');

insert into student_info
values('1001101630009','王娟','女','1986-9-18','100110163','电子信息',100,'');

(9)select field1 from tablename; 在表tablename中检索单个列field1

比如我在student_info中检索单个列stu_name:select stu_name from student_info;

select * from tablename; 在表中检索所有的列

比如我想检索student_info表中所有的记录:select * from student_info;

(10)distinct 指示MySQL返回不同的值

比如我想检索student_info中所属专业不同的值的记录:select distinct stu_major from student_info;

那么就当前数据情况而言,会返回给我两条数据‘软件工程’和‘电子信息’

(11)limit 限制MySQL返回的数据的行数不大于n

比如我想检索student_info表中前三行的数据记录:select * from student_info limit 3;

如果我们想让返回结果从行2开始起,可以这样写:select * from student_info limit 2,3;

(12)order by 取一个或多个列的名字,据此对输出进行排序

ASC 表示升序排列,默认情况就采用这种排列

DESC 表示降序排列

比如我想检索结果按生日值从大到小降序排列可以这样写:select * from student_info order by stu_birthday DESC;

人气教程排行