mysql mariadb

客户端连接
mysql -uroot -p;

客户端退出
exit 或 \q

显示所有数据库
show databases;
show schemas;

创建数据库
create database db1
charset utf8;

删除数据库
drop database db1;
drop database if exists db1;

查看表
show tables;
desc tb1;-------查看tb1的表结构
show create table tb1\G; -- 查看建表语句

表的增删改查

创建
create table tb1(

id int primary key auto_increment,
name varchar(20) not null,
num int not null unique,
xid int,
foreign key(xid) references tb2(id),
)engine=innodb charset=utf8;

修改
alter table tb1 add gender char(1) after name;

alter table tb1 modify num int null;

alter table tb1 modify id int;

alter table tb1 modify id int auto_increment;

alter table tb1 drop primary key;

alter table tb1 drop foreign key(外键约束名);

alter table tb1 drop index 约束名;
alter table tb1 modify id int;

删除表
drop table if exists tb1;

约束

主健 非空 唯一 外健 检查

默认值

num int default 1;

mysql 的一个sql_mod变量

linux 中安装mysql,sql_mod变量默认是空值,表示运行在‘不严格’模式,非空字段会插入,
字符段超长会被截断

。。。。。。。。。。。。。。。。。。

可以修改这个变量使mysql运行在严格模式

-- 查看 sql_mode 变量的值
show variables like 'sql_mode';

-- 修改
set global sql_mode='STRICT_TRANS_TABLES';

------退出,重新进入mysql,再查看变量
show variables like 'sql_mode';

* * structured query language
结构化查询语言

* sql标准语法
*各数据库厂商都有自己的扩展语法
*)mysql 扩展
*)oracle plsql
*)sql server t-sql

*sql分类
*)DDL -----定义语言,建库建表修改表
*)DML -----数据操作语言,增删改
*)DQL ----- 数据查询语言,select
插入数据insert

*insert into tb1 values(5,'abc');
全部字段按字段顺序插入值

* * insert into tb1(gender, name) values('M', '张三');
向指定的字段插入值

** * insert into tb1(gender, name)
values('M', '张三'),
('F', '李四'),
('M', '王五');
向表中一次插入多条数据(非标准sql)

* insert into tb1 select * from tb2
insert into tb1(name, gender) select name, gender from tb2
向tb1插入tb2表中的数据

修改数据update
===========================================================
*)update tb1 set name='abc',age=23,gender=null
where id=43;

删除数据delete
===========================================================
*)delete from tb1 where .........

查询数据
=========================================================
* where 子句
=等于
<>不等于
>大于
<小于
>=大于等于
<=小于等于

between 小值 and 大值范围
in 指定几个固定取值

like 模糊查询 通常只查字符串
% -匹配0 到多个任意字符
_ -匹配单个任意字符

escape '\' : 指定转移运算符

\_普通下划线
\%普通%字符

is null

not
------------------------------
not between and
not in
is not null

and
or

mysql 数据库基本命令语句的更多相关文章

  1. 第二百八十七节,MySQL数据库-条件语句、循环语句、动态执行SQL语句

    MySQL数据库-条件语句.循环语句.动态执行SQL语句 1.if条件语句 delimiter \\ CREATE PROCEDURE proc_if () BEGIN ; THEN ; ELSEIF ...

  2. (转载)常用的Mysql数据库操作语句大全

    打开CMD,进入数据库命令:mysql -hlocalhost -uroot -p 退出数据库:exit 用户管理: 1.新建用户: >CREATE USER name IDENTIFIED B ...

  3. MySQL 数据库SQL语句——高阶版本2

    MySQL 数据库SQL语句--高阶版本2 实验准备 数据库表配置: mysql -uroot -p show databases; create database train_ticket; use ...

  4. MySQL 数据库SQL语句——高阶版本1

    MySQL 数据库SQL语句--高阶版本 实验准备,数据表配置 mysql -uroot -p show databases; create database train_ticket; use tr ...

  5. mysql数据库常用语句3

    一:查询指定数据库中所有的表名 数据库名:test select table_name from information_schema.tables where table_schema='test' ...

  6. mysql数据库常用语句

    关于mysql数据库常用命令的整理: 一:对于数据库的操作 show databases;显示当前用户下所有的数据库名称 use database_name;进入当前数据库 create databa ...

  7. Mysql 数据库 操作语句

    mysql 格式语句规范 如何登陆你的数据库? 举例! 如果你的是 编译安装的花 那就得去编译安装后的那个目录中去,我的是安装到/usr/local/mysql 下登陆数据库:cd /usr/loca ...

  8. MySQL数据库SQL语句基本操作

    一.用户管理: 创建用户: create user '用户名'@'IP地址' identified by '密码'; 删除用户: drop user '用户名'@'IP地址'; 修改用户: renam ...

  9. MySQL数据库基本命令-1

    第一章:数据库概述1.数据(data) 数据库(DB) 数据库管理系统(DBMS) 数据库系统(DBS)2.数据库管理系统提供的功能: (1)数据定义语言:DDL (2)数据操作语言:DML 基本的数 ...

随机推荐

  1. selenium+chrome抓取淘宝搜索抓娃娃关键页面

    最近迷上了抓娃娃,去富国海底世界抓了不少,完全停不下来,还下各种抓娃娃的软件,梦想着有一天买个抓娃娃的机器存家里~.~ 今天顺便抓了下马爸爸家抓娃娃机器的信息,晚辈只是觉得翻得手酸,本来100页的数据 ...

  2. haproxy配置文件详解和ACL功能

    */ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...

  3. hihoCoder1310 岛屿 (dfs)

    思路:首先dfs求得所有联通块,再搜索的同时把每个联通块的坐标都保存下来,然后把每个联通块处理一下–首先得到某个联通块的最小横坐标和纵坐标,然后让每个坐标去减去这个横坐标和纵坐标.相当于使得所有联通块 ...

  4. spring 配置文件无法加载,junit找不到xml配置文件java.lang.IllegalStateException: Failed to load ApplicationContext

    最近遇到一个奇怪的问题.maven项目再进行junit单元测试的时候发现无法加载配置文件.一会能加载一会又不能加载.然后试了在src/main/resource下面的配置文件放到src/test/re ...

  5. B+索引、Hash索引、数据类型长度

    1.为什么在数据库中要用B树索引而不是Hash索引? Mysql Hash索引结构的特殊性,其检索效率非常高,索引的检索可以一次定位,不像B-Tree 索引需要从根节点到枝节点,最后才能访问到页节点这 ...

  6. ORACLE关于段的HEADER_BLOCK的一点浅析

    在学习段(segment).区间(extent)时,对段的HEADER_BLOCK有一些疑问,本文记录一下探究的实验过程以及相关总结,,如有不对的地方,敬请指出.以SCOTT.EMP表为例(下面测试环 ...

  7. TensorFlow与主流深度学习框架对比

    引言:AlphaGo在2017年年初化身Master,在弈城和野狐等平台上横扫中日韩围棋高手,取得60连胜,未尝败绩.AlphaGo背后神秘的推动力就是TensorFlow--Google于2015年 ...

  8. DM6446的Bootloader

    RBL(ARM ROM Boot Loader)在芯片出厂的时候就已经烧写到ROM里了,这不需要大家关心,上电后,RBL会自动从EMIFA EM_CS2 memory space (0x0200 00 ...

  9. 一句python,一句R︱python中的字符串操作、中文乱码

    先学了R,最近刚刚上手python,所以想着将python和R结合起来互相对比来更好理解python.最好就是一句python,对应写一句R. pandas可谓如雷贯耳,数据处理神器. 以下符号: = ...

  10. VC获取并修改计算机屏幕分辨率

    //获取分辨率 int m_nWindwMetricsX   =   ::GetSystemMetrics(SM_CXSCREEN);     int m_nWindwMetricsY   =   : ...