今天我们来学习一下MySQL中的经常使用命令(MySQL中的命令keyword是不区分大写和小写的):
(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','软件project',100,'');
insert into student_info
values('1001101620005','张三','男','1982-12-25','100110162','软件project',100,'');
insert into student_info
values('1001101620006','李四','男','1982-1-25','100110162','软件project',100,'');
insert into student_info
values('1001101620007','王五','男','1983-8-25','100110162','软件project',100,'');
insert into student_info
values('1001101620008','赵六','男','1986-9-25','100110162','软件project',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;
那么就当前数据情况而言,会返回给我两条数据‘软件project’和‘电子信息’
(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;