Ubuntu下数据库的操作

链接数据库

mysql -uroot -p

退出数据库

exit/quit

查看所有数据库

show databases;

显示时间

select now();

显示数据库版本

select version();

创建数据库 Mall 为数据库名

create database Mall;

指定格式创建数据库

create database Mallnew charset=utf8;

查看创建数据库的语句

show create database Mall;

查看指定数据的语句

show create database Mallnew;

删除数据

drop database Mall;

查看当前使用的数据库

select database();

使用数据库- use 数据库的名字

use Mallnew;

数据表的操作

查看当前数据库中所有的表

show tables;

创建classes表(id,name) menu是表单名

create table menu(id int,name varchar(30));

查看表结构 desc 数据表的名字

desc menu;

creata table 数据表名字(字段 类型 约束 [,字段 类型 约束]);

create table menu_a(id int primary key not null auto_increment ,name varchar(30));

创建students表(id,name,age,high,gender,cls_id)

create table students(id int unsigned not null auto_increment primary key,name varchar(30),age tinyint unsigned default 0,high decimal(5,2),gender enum("男","女","保密"),cls_id int unsigned);

插入数据

insert into students values(0,"老王",18,175,"男",0);

查看插入是否成功

select * from students;

创建classes表(id,name)

create table classes(id int unsigned not null auto_increment primary key,name varchar(30));

插入数据

insert into classes values(0,"c++班");

查看数据是否成功

select * from classes;

查看表的创建语句

alter table 表名 add 列名 类型:

alter table students add birthday datetime;

修改表-修改字段:不重命名版

alter table 表名 modify 列名 类型及约束;

alter table students modify birthday date;

修改表-修改字段;重命名字段

alter table 表名 change 原名 新名 类型及约束;

alter table students change birthday birth date dafault "2020-01-01";

修改表-删除字段

alter table 表名 drop 列名

alter table studemts drop high;

删除表

drop table 表名;

drop database 数据库;

drop table 数据表;

drop table menu_a;

增删改查

增加

全列插入

insert [into] 表名values(...)

主键字段可以用0 null default 来占位

向classes 表中插入一个班级

insert into classes values(0,"java班");

向students表插入一个学生信息

insert into students values(0,"师哥",20,"男",1,"1990-01-02");

insert into students values(null,"师哥",20,"男",1,"1990-01-02");

insert into students values(default,"师哥",20,"男",1,"1990-01-02");

枚举中的下标从1 开始 1-"男" 2-"女"

insert into students values(default,"钟离眜",20,1,1,"1990-01-02");

部分插入

insert into 表名(列1。。)values(值1。。)

insert into students (name,gender) valuse ("天明",2);

多行插入

 insert into students (name,gender) values ("小月",2),("白凤",2);

insert into students values(default,"大铁锤",20,"女",1,"1990-01-01"),(default,"墨子",20,"男",1,"2020-01-01");

修改

update 表名 set 列1=值1,列2=值2。。where 条件:

update students set gender=1; 全部都改

update students set gender=1 where name="钟离眜"; 只要name是钟离眜的全部都修改

update students set gender=1 where id=3; 只要id为3的进行修改

update students set age=22,gender=1 where id=3; 只要id为3的进行修改

查询基本使用

查询所有列

select * from 表名;

select * from students;

定条件查询

select * from students where name="老王";  查询name为老王的所有信息

select * from students where id>3; 查询name为钟离眜的所有信息

查询指定列

select 列1,列2... from 表名;

select name,gender from students;

字段的顺序

可以使用as为列或表指定别名

select 字段[as 别名],字段[as 别名] from 数据库 where。。。;

select name as 姓名,gender as 性别 from students;

字段的顺序

select id as 序号,gender as 性别,name as 姓名 from students;

删除

物理删除

delete from 表名 where 条件

delete from students; 整个数据表中的所有数据全部删除

delete from students where name="老王";

逻辑删除

用一个字段来表示这条信息是否已经不能在用了

给students表添加一个is_delete字段 bit 类型

alter table students add is_delete bit default 0;

update students set is_delete=1 where id=6; 假性删除

https://www.linuxidc.com/Linux/2018-05/152413.htm

原文地址:https://www.cnblogs.com/laochun/p/13226227.html