1.建表

create table  表名( 字段一 数据类型 [列属性] , 字段二 数据类型 [列属性], ......... )[表类型][表字符集][注释];

注意:MySQL命令终止符为分号 ; 。

1).表名:

表名可以称被指定为 db_name.tb_name,以便在特定的数据库db_name中创建表,如果是在当前数据库,可以将db_name省略,只是用tbl_name。

如果使用mysql中的转义字符`来避免表名和 mysql 本身的关键字冲突时,则应对数据库和表名称分别加`。例如,`mydb`.`mytbl`是合法的,但`mydb.mytbl` 不合法。MySQL 中的转义字符`

2).常用数据类型

MySQL 数据类型

3).列属性

mysql中的6个列属性:null,not null,default,comment,primary key,unique key,auto_increment

https://blog.csdn.net/csxiaoyaojianxian/article/details/80793561

4).实例解析:

 
 

CREATE TABLE `VTD_RESULT` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`version` varchar(50) NOT NULL,

`date` varchar(50) NOT NULL,

`scene_name` varchar(100) NOT NULL,

`value` varchar(100) DEFAULT NULL,

`createtime` DATETIME DEFAULT CURRENT_TIMESTAMP,

PRIMARY KEY (`id`)

)ENGINE=InnoDB DEFAULT CHARSET=latin1;

  • 如果你不想字段为 NULL 可以设置字段的属性为 NOT NULL, 在操作数据库时如果输入该字段的数据为NULL ,就会报错。
  • AUTO_INCREMENT定义列为自增的属性,一般用于主键,数值会自动加1。
  • DEFAULT 设置默认值。
  • PRIMARY KEY关键字用于定义列为主键。 您可以使用多列来定义主键,列间以逗号分隔。
  • ENGINE 设置存储引擎,CHARSET 设置编码

CREATE TABLE `table_name` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`date` date DEFAULT NULL COMMENT '日期',

`hour` tinyint(2) DEFAULT '0' COMMENT '小时',

PRIMARY KEY (`id`),

UNIQUE KEY `date_hour` (`date`,`hour`)

)ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT='实时订单数'

COMMENT添加注释信息

UNIQUE KEY的用途:主要是用来防止数据插入的时候重复的。相关学习:https://www.cnblogs.com/mianbaoshu/p/11821183.html

2.添加

1.规定列名添加数据

INSERT INTO table_name ( field1, field2,...fieldN ) VALUES ( value11, value12,...value1N ),( value21, value22,...value2N );

知识点:1)同时添加多条记录时,用逗号进行分割。

2)前边的列与后边的值要一一对应。

2.不规定列名进行添加数据:

 INSERT INTO table_name VALUES (value11, value12,...);

知识点:如果第一列是主键自增(PRINARY KEY AUTO_INCREMENT),则第一列在增加数据的时候,可以写为0或者null。对于有默认值的列,添加数据使用默认值时可以使用default来实现。

举栗:

操作
命令
结果
建表

create table test_insert(id int auto_increment,

name varchar(10),

value int,

create_time datetime DEFAULT CURRENT_TIMESTAMP,

primary key (id));

成功
按列名添加数据

insert test_insert (name,value) value('aa','11');

insert test_insert (name,value) value('bb','22'),('cc','33');

不按列名添加数据

insert test_insert value(0,'dd',55,default);

3.更新

命令:update table_name set key1=value1,key2=value2 where 条件;

操作
 
 
更新value值

update test_insert set value=value+1;

更新加替换

update test_insert set name=replace(name,'a','test');

按条件更新

update test_insert set name='test_case',value='22' where id=1;

4.转换

alter 用于修改修改数据表名或者修改数据表字段

 
 
 
 
建表

create table test_alter(id int auto_increment,

name varchar(10),

value int,

create_time datetime DEFAULT CURRENT_TIMESTAMP,

primary key (id));

成功

 
使用alter与drop 删除字段

删除字段value

alter table test_alter drop value;

1.如果数据表中只剩余一个字段则无法使用DROP来删除字段。

 
使用alter与add 增加字段

新增字段value1

alter table test_alter add value1 int(11);

alter table test_alter add value2 int(11) first;

alter table test_alter add value3 int(11) after name;

alter table test_alter add id int(11) NOT NULL AUTO_INCREMENT primary key first;

1.默认增加字段到表字段的末尾

2.使用关键字FIRST (设定位第一列), AFTER 字段名(设定位于某个字段之后)可以指定新增字段的位置。

3.如果你想重置数据表字段的位置就需要先使用 DROP 删除字段然后使用 ADD 来添加字段并设置位置。

 
使用alter与modify修改字段类型

将value1的数据类型由int(11)改为float,并将其放在value3后边

alter table test_alter modify value1 float after value3;

1.FIRST 和 AFTER 关键字也可用于MODIFY与CHANGE 子句
 
使用alter与change修改字段类型及名称

将value3改为value0,数据类型由int(11)改为float,并将其放在value1后边

alter table test_alter change value3 value0 float after value1;

1. 在 CHANGE 关键字之后,紧跟着的是你要修改的字段名,然后指定新字段名及类型

 
修改表名

将表名由test_alter修改为test_alter_1:

alter table test_alter rename to test_alter_1;


 

5.删除

语法

是否删除内容

是否删除定义

是否释放空间

是否删除表结构

注释

drop table table_name

删除

删除

释放

删除

删除后,表不存在

truncate table table_name

删除

不删除

释放

不删除

只清内容,表还存在

delete table table_name

删除

不删除

不释放,用delete删除数据,然后添加,可以看到添加之后id标识不连续

不删除

只清内容,一行一行删数据,效率低

delete table table_name where 条件

根据条件删除数据

不删除

不释放,用delete删除数据,然后添加,可以看到添加之后id标识不连续。

不删除

6.常用操作

  • 1.建数据库   create database db_name;
  • 2.显示创建表的语句  show create table table_name;
  • 3.查看表结构  DESCRIBE/DESC table_name;
  • 4.查看mysql数据库支持的字符集 SHOW character set或show character set like 'gb%';
  • 5.创建数据库时修改字符集create database aa default character set utf8mb4;
  • 6.创建与a表相同结构的b表:CREATE TABLE b LIKE a;
  • 7.插入一个查询结果的数据:insert into table2 select * from table1;
  • 8.根据查询结果集,创建一个包含这些数据的新表,CREATE TABLE new_tbl AS SELECT * FROM orig_tbl;

mysql 的基础操作的更多相关文章

  1. Mysql数据库基础操作

    Mysql数据库基础操作 在mysql数据库中开启使用tab键补全功能 1)修改主配置文件/etc/mysql/my.cnf(mysql和mariadb目录有些不同) vim /etc/mysql/m ...

  2. Mysql常用基础操作(备忘录)

    常常忘记mysql的一些命令行操作,甚至于说,比较复杂的sql格式记不住或忘记了,也可能根本不会考虑去记,因此,做一下汇总,当下次出现恍惚时不至于去百度挨个找,有时就是记不起来,但是只要给点药引子,立 ...

  3. MySQL数据库----基础操作

    一.知识储备 数据库服务器:一台计算机(对内存要求比较高) 数据库管理系统:如mysql,是一个软件 数据库:oldboy_stu,相当于文件夹 表:student,scholl,class_list ...

  4. MySQL 之基础操作及增删改查等

    一:MySQL基础操作 使用方法: 方式一: 通过图型界面工具,如 Navicat,DBeaver等 方式二: 通过在命令行敲命令来操作 SQL ( Structure query language ...

  5. MySQL数据库基础操作语句

    SQL语言主要用于存取数据.查询数据.更新数据和管理关系数据库系统,分为3种类型: 1.DDL语句 数据库定义语言: 数据库.表.视图.索引.存储过程,例如CREATE DROP ALTER 2.DM ...

  6. Mysql学习---基础操作学习2

    基本数据类型 Mysql基本数据类型:二进制,数值[整数,小数].字符串[定长,变长]. 二进制数据.时间和枚举集合 bit[(M)] 二进制位(101001),m表示二进制位的长度(1-64),默认 ...

  7. [php入门] 3、WAMP中的集成MySQL相关基础操作

    前言:本文以小白视角了解WAMP集成开发环境中的MYSQL,涉及的面广而浅,算是导读性质. 1.启动运行熟悉WAMP中的MySQL 先有库.再有表.数据最终以记录的形式插入表中.其中对数据进行操作使用 ...

  8. MySQL之基础操作

    一.安装 Mysql是最流行的关系型数据库管理系统之一,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数 ...

  9. mysql的基础操作

    查看数据库 获取服务器上的数据库列表通常很有用.执行show databases;命令就可以搞定. mysql> show databases; 创建数据库 mysql> create d ...

  10. MySql数据库基础操作——数据库、用户的创建,表的制作、修改等

    MySql 是一款使用便捷.轻量级的数据库.因为他体积小.速度快.安装使用简单.开源等优点,目前是使用最广泛的数据库.目前位于Oracle甲骨文公司旗下.那今天我们就来介绍一下数据库的基本操作.具体介 ...

随机推荐

  1. STM32程序的启动

    普及: 不同位置启动首需要硬件上的配合:BOOT1与BOOT0 引脚电平配合,一般默认使用主闪存存储: 也就是BOOT0 = 0; 启动时将现在起始模式的初始地址映射到了0x0000 0000,内部S ...

  2. IDEA 快速上手指南(全配置)(Day_23)

    Idea快速入门指南 1.安装 1.1.安装 我们使用的是2017.3.4版本: 双击打开, 选择一个目录,最好不要中文和空格: 然后选择桌面快捷方式,请选择64位: 然后选择安装: 开始安装: 然后 ...

  3. wxPython开发之密码管理程序

    不想记密码?密码全设置成一样担心安全?用别人程序担心密码泄露?看完本博客,开发一个属于自己的密码管理程序吧 我们用到的是python的wxPython界面库包 先来看下成果界面:简洁主题明确  要想开 ...

  4. Go语言网络通信---TCP通信上传一个小文件

    server: package main import ( "fmt" "net" "os" ) func SHandleError(err ...

  5. AIFramework基本概念整理

    AIFramework基本概念整理 本文介绍: 对天元 MegEngine 框架中的 Tensor, Operator, GradManager 等基本概念有一定的了解: 对深度学习中的前向传播.反向 ...

  6. 国内操作系统OS分析(上)

    国内操作系统OS分析(上) 一.操作系统(OS)概述 操作系统(OS,Operating System),是管理.控制计算机软硬件资源的计算机程序,并为用户提供一个与系统交互的操作界面.OS是配置在计 ...

  7. Gbps接口面向汽车应用

    Gbps接口面向汽车应用 Gbps interfaces target automotive appications 巴黎--不久前,移动通信行业是一个领着芯片商的领头羊,命令坐着,脚跟着,然后翻身. ...

  8. Django(59)验证和授权

    验证和授权概述   Django有一个内置的授权系统.他用来处理用户.分组.权限以及基于cookie的会话系统.Django的授权系统包括验证和授权两个部分.验证是验证这个用户是否是他声称的人(比如用 ...

  9. 使用IDEA创建Maven项目

    一.创建一个普通的Maven项目 1.启动IDEA 2.创建一个Maven项目 3.Maven的目录结构 二.使用模板创建一个MavenWeb项目 1.启动IDEA 2.创建一个MavenWeb项目 ...

  10. 【NX二次开发】Block UI 选择小平面区域

    属性说明 属性   类型   描述   常规           BlockID    String    控件ID    Enable    Logical    是否可操作    Group    ...