MySQL命令学习(一)

来源:互联网 发布:隐身侠软件下载 编辑:程序博客网 时间:2024/05/21 17:26

今天我们来学习一下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)-128127,无符号0255,在括号中规定最大数

SMALLINT(size)-3276832767,无符号065535,在括号中规定最大数

MEDIUMINT(size)-83886088388607,无符号016777215,在括号中规定最大数

INT(size)-21474836482147483647,无符号04294967295,在括号中规定最大数

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;


0 0
原创粉丝点击