当前位置: 首页 > news >正文

MySQL之数据库及表操作

MySQL之数据库及表操作

文章目录

  • MySQL之数据库及表操作
    • 一、数据库的基本结构
    • 二、数据库的创建和删除
    • 三、数据表的结构定义和操作
    • 四、数据的插入
    • 五、主键和自增长属性
      • 1、什么是主键
      • 2、自增长属性

一、数据库的基本结构

数据库系统由数据库服务器为载体,拥有一个或者多个数据库,一个数据库里又可以拥有众多张表,表里可以存储数据。

数据库服务器
数据库
数据库
数据表
数据表
数据表
数据表
数据
数据
数据
数据
数据
数据
数据
数据

二、数据库的创建和删除

数据库的创建使用SQL语句create database testsql;创建一个名为testsql的数据库。
创建数据库
如果需要查询目前服务器内有哪些数据库,使用show databases;即可。
查询数据库
若要删除数据库,使用drop database <database_name>;删除数据库。删除数据库
最后使用use <database_name>;使用数据库,当回复Database changed即为成功。使用数据库

三、数据表的结构定义和操作

创建数据库之后,需要使用create table <table_name>进行创建数据表。同时在创建表的时候,可以定义表的结构,这里以一个学生信息表(student)为例,创建“ID(学号)”,“Name(姓名)”,“Sex(性别)”字段。

create table student(
      ID int,
      Name char(20),
      Sex char(5)
      );engine=innodb;

当需要新增字段的时候,使用命令alter table student add column tel int;,即为新增名为tel的字段;
需要删除字段的时候,使用命令alter table student drop tel;,即为删除名为tel的字段;
需要修改字段的名字或类型的时候,使用命令alter table student change column tel telephone char(10);,即为将名为tel的字段改为telephone并将类型改为了char(10)。同时还能细分为renamemodify属性,rename是更改字段名称的,modify用于更改字段类型和约束条件。

当需要查询表结构的时候,使用show columns from student;查询字段

当需要查询该数据库中所有数据表的名称时,使用show tables;命令即可。查询表

四、数据的插入

建立好数据表之后,将需要插入数据进入表中。采用命令insert into <table_name>(data_name) values(data);,以插入student表一条数据为例

insert into student(ID,Name,Sex,telephone) values(10001,'张三','男','1384267341');

使用查询语句select * from student;查询数据情况。查询数据库

五、主键和自增长属性

1、什么是主键

数据库主键是一个用于唯一标识关系表中每一行的列或一组列。主键可以用来确保表中的行具有唯一性和禁止重复。主键的值不能为NULL,且必须在表中唯一。

设置主键,可以在创建数据表的时候写入primary key即可。
情况1:

create table student(
      ID int primary key,
      Name char(20),
      Sex char(5)
      );engine=innodb;

情况2:

create table student(
      ID int,
      Name char(20),
      Sex char(5)
      primary key(ID)
      );engine=innodb;

也可以在创建好数据表之后添加主键,方法和修改数据库字段一样。

alter table student change column ID ID int primary key;

再使用查询字段的命令,可以发现ID字段的Key值出现了PRI标识。
主键添加

2、自增长属性

当学生的ID(学号)为顺序增长时,可以使用自增长属性减少数据录入工作量。关键字为auto_increment
同理可以通过创建数据表的时候加入

create table student(
      ID int primary key auto_increment,
      Name char(20),
      Sex char(5)
      );engine=innodb;

或者通过修改字段进行添加

alter table student modify column ID int auto_increment;

添加自增长后,再添加一条不包含ID(学号)信息后,查询表数据

 insert into student(Name,Sex,telephone) values('李四','男',1790997633);

在这里插入图片描述
此处ID(学号)自增长为10002

相关文章:

  • 微信小程序适配方案:rpx(responsive pixel响应式像素单位)
  • Jmeter分布式压力测试详解
  • Flink State 状态原理解析 | 京东物流技术团队
  • C++基础
  • 解决 IIS HTTP 403 错误问题
  • Halcon联合winform显示以及处理
  • 浙政钉SDK安装
  • [架构之路-260]:目标系统 - 设计方法 - 软件工程 - 软件设计 - 架构设计 - 基于Web的软件架构(REST与RESTful)
  • mac苹果笔记本电脑如何强力删除卸载app软件?
  • 【数据结构】顺序表的定义和运算
  • 数据结构:单链表——定义、插入、删除
  • NoSuchColumnFamilyException: org.apache.hadoop.hbase.regionserv
  • 单节点hadoop搭建
  • zookeeper笔记
  • MySQL生成UUID并去除-
  • 智能优化算法应用:基于广义正态分布算法无线传感器网络(WSN)覆盖优化 - 附代码
  • Python-炸弹人【附完整源码】
  • docker常见知识
  • 【LeetCode:1466. 重新规划路线 | DFS + 图 + 树】
  • 今日问题:解决最新Chrome和chromedriver版本对不上的问题
  • 欧洲承诺投资6亿欧元吸引外国科学家
  • 陕西澄城打造“中国樱桃第一县”:从黄土高原走向海外,年产值超30亿
  • 法治日报:商品明细是隐私,外卖员快递员不应知晓
  • 美联储主席:美联储工作方式不会受特朗普影响,从未寻求与总统会面
  • 金融监管总局:力争实现全国普惠型小微企业贷款增速不低于各项贷款增速
  • 轿车追尾半挂车致3死1伤,事故调查报告:司机过分依赖巡航系统