Mysql数据库基本操作

Mysql第一阶段:

第一阶段对于新手来说,主要是熟悉mysql中的语句有什么作用,这段时间主要在文本框中敲打mysql语句,然后在MySQL的运行框中运行,以此来检查自己所写的语句是否正确。

Mysql中的一些语句使用方法:

#查看所有的数据库

show databases;

注:Sql语句不区分大小写  但是严重区分中英文符号,不允许使用中文符号

#创建数据库

create database test1227;

#使用数据库

use test1227;

注:使用数据库时,千万不要忘了这句,新手很容易忘记。

#创建表   需要创建主键  主键是唯一的,不能为空  int(10):10代表的是数字长度

#若不定义长度,默认长度为11  primary key为主键(唯一标识) auto_increment:设置自增

#varchar:为字符串  默认长度为255  unique:唯一约束   not null 不为空约束

create table student(

id  int(10)primary key  auto_increment,

name varchar(20) unique,

age int(5) default 16,

sex char(2) not null

);

#查看表设计

desc student;

注:创建表之后,可以通过查看表设计,来检查创建的表是否满足需求

增:

#不按照字段添加   那么就需要按照表设计的字段顺序添加

insert into student values(2,'李四',21,'男');

#按照字段添加   必须主键设置自增,否者必须给主键赋值

insert into student(name,age,sex) values('王五',25,'女');

insert into student(name,sex) values('赵六','男');

insert into student(name,age,sex) values('小凳子',27,'男');

#添加多条数据

insert into student(name,age,sex) values('小红',22,'女'),('小华',26,'男'),('小白',29,'男');

删:

#删除表

drop table student;

#删除数据库

drop database test1227;

#删除 drop  与delete 的区别:

#drop 是删除表,表不存在  delete 是删除表中的数据,表仍然存在

delete from student where id = 1;

delete from student where sex = '男';

delete from student where sex='女' and age = 22;

#删除表中的所有数据,表存在

delete from student;

注:where这里是判断的意思

改:

#修改   切记:修改  set后面使用逗号分隔 而不是用and  只有where 条件语句后使用and  代表 并且

update student set name='小名',age = 26,sex='女' where id = 2;

update  studentset name='光头强' where name = '小红';

update student set age = 30 where name='王五' and sex = '女';

查:

查是数据库中的重点!

# * 代表的是所有字段  查看当前表中的所有数据

select * from student;

#只查询姓名和年龄 select  后为查询的字段  from  表

select name,age from student;

#查询年龄为26的学生信息

select id,name,age,sex from student where age = 26;

#查询年龄不是26的学生信息  != <>

select id,name,age,sex from student where age !=26;

select id,name,age,sex from student where age <>26;

select id,name,age,sex from student where age >=26;

#查询id 为偶数的学生信息

select id,name,age,sex from student where id %2=0;

#查询姓‘小’ 的学生名   %代表多个字符

select name from student where name like '小%';

#  _为一个字符

select name from student where name like '小__';

insert into student(name,age,sex) values('白居易',29,'男');

insert into student(name,age,sex) values('王白石',26,'男');

#like 模糊查询

#代表开头有“白”

select name from student where name like '白%';

#代表结尾有“白”

select name from student where name like '%白';

#代表字符中间有“白”

select name from student where name like '%白%';

#查询年龄在26-29之间(包含26,29)的学生信息

select id,name,age,sex from student where age between26 and 29;

#查询id  包含 4,8,13,14的学生信息

select id,name,age,sex from student where  id in (13,8,4,14);

#分页  第一个参数为索引 ,通过索引得到页数   第二个参数为每次显示的条数

select id,name,age,sex from student limit 4,2;

#将学生的年龄从小到大排序  order by 为排序本身就有从小到大的功能  asc小-大   desc:大-小

select id,name,age,sex from student order by age  desc;

#聚合函数 count(统计总数)  sum (求和) avg (平均值) max(最大值)  min(最小值)

select count(*) from student;

select count(id) from student;

#字段和表都可以定义别名

select count(1) from student; 定义别名  英语不需要定义单引号  中文需要定义单引号

#统计男 女分别的人数

select count(id) as '总数',sex as se fromstudent group by sex;

select count(id) '总数',sex '性别' from student group by sex;

#统计男女人数大于3的人数 having为条件语句必须与group by联合使用 不能单独使用  where删查 改  只有有条件判断都可以使用

select count(id) '总数',sex '性别' from student group by sex having 总数 >3;

select count(id) co ,sex '性别' from student group by sex having co >3;

select sum(age) from student;

select avg(age) from student;

select max(age) from student;

select min(age) from student;

以上就是对数据的增删改查,这些操作都是对数据库中的数据操作,下面,我们来介绍对于表设计的修改

表设计修改:

#添加字段

alter table student add address varchar(50) not null;

#将name修改为username

alter table student change name username varchar(20);

#sex char(2) 改为varchar(2)

alter table student change sex sex varchar(2);

#将age 放到address 后面

alter table student modify age int(5) after address;

#删除address

alter table student drop address;

#将student表名修改为stu

alter table student rename stu;

接下来就来说下多表连接,多张表之间的联系

#表关系:  一对一  一对多   多对多

主键关联主键  等值连接

select t.name,s.username,s.age,s.sex from teachert,stu s where s.id = t.id;

#交叉连接

select t.name,s.username,s.age,s.sex from teachert  cross join stu s on s.id = t.id;

#内连接:避免笛卡尔积,并且在数据量多的情况下 提高查询的效率

select t.name,s.username,s.age,s.sex from teachert  inner join stu s on s.id = t.id

#以上三种连接 获取的都为表的交集

#外连接:左连接   右连接

#左连接  查询左边表的所有数据  右边只查询关联id 相同的数据

select t.name,s.username,s.age,s.sex from teachert  left join stu s on s.id = t.id;

select t.name,s.username,s.age,s.sex from stu s rightjoin teacher t on s.id = t.id;

#一张表的外键是另外一张表的主键  外键可以创建多个  但是主键只能创建一个  主键的值为唯一  外键的值可以重复

#设置外键  必须先给主键的表创建了数据才能给外键表进行添加数据   ondelete cascade :级联删除

#设置了级联删除  既可以删除主表数据又可以删除外键表数据,一旦删除主表数据,外键关联的数据一并删除

alter  tablestudent add constraint foreign key(tid) references teacher(id)  on delete cascade;

#创建视图,视图为一张虚拟的表,创建视图的目的是为了提高查询的效率,当一张表中有很多字段时,而在查询过程中不需要那么多的字段,那么可以通过视图创建一张虚拟的表

#表数据与原表的数据完全一致

create view stu_view as select id,name from student;

Mysql的基本操作和注意点相关推荐

  1. 基于linux操作系统Mysql的基本操作(一)

    基于linux操作系统Mysql的基本操作(一) 背景介绍:mysql软连接的建立,ln –s /usr/local/mysql/bin/mysql  /usr/bin 1.本地登录,命令: #mys ...

  2. [JSP暑假实训] 三.MySQL数据库基本操作及Servlet网站连接显示数据库信息

    本系列文章是作者暑假给学生进行实训分享的笔记,主要介绍MyEclipse环境下JSP网站开发,包括JAVA基础.网页布局.数据库基础.Servlet.前端后台数据库交互.DAO等知识. 前一篇文章讲解 ...

  3. mysql数据库基本操作总结与归纳

    mysql数据库基本操作总结与归纳 登录命令 mysql -u 用户名 -p 密码 列如: [root@localhost ~]# mysql -u root -p [root@localhost ~ ...

  4. Linux如何指向mysql_linux的基本操作(mysql 的基本操作)

    Mysql 的基本操作 在前面两个章节中已经介绍过MySQL的安装了,但是光会安装还不够,还需要会一些基本的相关操作.当然了,关于MySQL的内容也是非常多的,只不过对于linux系统管理员来讲,一些 ...

  5. php基础系列:从用户登录处理程序学习mysql扩展基本操作

    用户注册和登录是网站开发最基本的功能模块之一,现在通过登录处理程序代码来学些下php对mysql的基本操作. 本身没有难点,主要是作为开发人员,应该能做到手写这些基本代码,算是自己加强记忆,同时希望能 ...

  6. 1Python全栈之路系列之MySQL数据库基本操作

    Python全栈之路系列之MySQL数据库基本操作 MySQL数据库介绍 MySQL是一种快速易用的关系型数据库管理系统(RDBMS),很多企业都在使用它来构建自己的数据库. MySQL由一家瑞典公司 ...

  7. MySQL数据库——基本操作

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.数据库基本操作 (一).登陆数据库 1.交互登陆 mysql -u root -p 2.免交互登陆 mysql - ...

  8. Linux安装卸载Mysql与基本操作

    一.安装Mysql软件 1.下载rpm包 本文章使用的系统是Linux,所以你需要下载一个mysql的rpm包 https://dev.mysql.com/downloads/ 根据系统版本下载,Ce ...

  9. MYSQL数据库基本操作——DML

    MYSQL数据库基本操作--DML 何为DML 三种基本操作 何为DML DML是数据操作语言,Data Manipulation Language.是对表的数据记录进行更新操作的,包括插入inser ...

最新文章

  1. 「压缩」会是机器学习的下一个杀手级应用吗?
  2. [HAOI2015][loj2127]按位或
  3. 顶级极客技术挑战赛,你敢来挑战吗?| 大神登峰造极
  4. 电脑手写输入法_QQ拼音输入法除了能打字,竟然还有 N 多妙用!
  5. 决策树可视化保姆级教程
  6. 玩转oracle 11g(8):使用profile管理用户口令
  7. SCOM 2012 SP1---安装SCOM 2012 SP1
  8. adobe Director的一些快捷键(direct_Shortcut)
  9. String转为byte[] ,byte[]转为String,byte[]与String的相互转换
  10. 阿里云存储:安防行业背后的赋能者 | 凌云时刻
  11. 14串聚合物锂电池保护板和电路图(带均衡功能)
  12. vue手机号校验,邮箱校验
  13. RSA前端加密,java后端解密
  14. 用FAI制作debian自动安装盘
  15. js 控制字符串长度 区分中英文
  16. C语言端口扫描源码,C语言实现TCP多线程端口扫描
  17. MDWechat(微信美化)
  18. MySQL医疗信息管理系统数据库(源码)
  19. 效率神器工具,看这篇就够了!
  20. 【Python】内存、引用、驻留

热门文章

  1. 2019年度个人计划
  2. SpringBoot之从零搭建博客网站
  3. IdentityServer4系列(05)【授权方式】
  4. memcpy函数与结构体对齐
  5. 2021年总结 2022年展望
  6. linux6.5取消屏保,怎么把wps屏保关掉
  7. 在win20008上运行U890破解提示sorry,this application cannot run under a virtual machine
  8. ubuntu使用xopen软件
  9. dockerfile volume
  10. 冰火两重天----评NBA2009-12-28快船和凯尔特人的比赛