--查看当前日期
select current_date();
--查看当前时间
select current_time();
--查看当前日期、时间
select now();
--查看当前用户
select user();
--验证当前客户端用户
select current_user();
--查看创建表结构的语法
show create table tab_name;
--删除表
drop table tab_name;
--删除数据库
drop database database_name;
--查看当前数据库里所有的表
show tables; --查询所有数据库
show databases;
--使用某一个数据库
use database_name --改变结束符号
delimiter // --使用储存过程
create procedure numx(x int )
begin

  set @x=0;
  set @sum=0;
    repeat
    set @x=@x+1;
    set @sum=@sum+@x;
    until @x=x end repeat;
  end

  create procedure addx(x int)
  begin
  set @x=0;
  set @sum=1;
    repeat
    set @x=@x+1;
      if @x%3=0 && @x%9!=0 then
      set @sum = @x*@sum;
      end if;
    until @x=x end repeat;
  end

--调用存储过程
call numx(100);
--删除存储过程
drop procedure numx; --创一个表(主键,外键,约束,默认,自增长)
create table demo1(
  demo1_id int auto_increment primary key,
  demo1_name varchar(10) not null
)
create table demo(
  demo_id int auto_increment primary key,--主键、自增长
  demo_name varchar(20) not null,
  demo_price float check ( price >= 0 ),
  publish_at datetime,
  created_at datestamp,
  fk_id int foreign key references demo1(demo1_id)--外键设置
)
上面的语法可以使用,
但是从实际情况去考虑,(主外键的设置)应该这么做 主键建立:
alter table demo
  add constraint pk_demo_id(这里是约束名) primary key demo(demo_id)
如果需要删除的话,语法如下
alert table demo
  drop constraint pk_demo_id(这里是约束名哦)
外键建立
alter table demo
  add constraint demo_fk_id(这里是约束名)
  foreign key(fk_id) references demo1(demo1_id)
如果需要删除的话,语法如下
alert table demo
  drop foreign key demo_fk_id(这里是约束名哦)
  
数据类型:
  大致分为6类:
  1. 整数: bit / bool / tinyint / smallint / mediumint / int / bitint
  2. 浮点数: float / double / decimal
  3. 字符串: char / varchar / tinytext / text / mediumtext / longtext
  4. BLOB(Binary Large Object): tinyblob / blob / mediumblob / longblob
  5. 日期: date(2018-9-6) / time (03:33:49) / datetime(2018-9-6 03:34:08) / timestamp
  6. 其他: binary / varbinary / enum / set / geometry / point / LineString …
小提示:
  char(n) 和 varchar(n)中间的n代表字符的个数,不是字节的个数哦。
  char()是固定长度,varchar()是可变长度,
    比如: 存储 字符 “abc” 对于char(10)就相当存储了三个字符(abc)和7个空格字符,而对于varchar(10)就是存储了三个字符(abc) 它是按照内容的实际长度来存储的。

  varchar最大长度:
    根据字符集,字符类型若为gbk,每一个字符占用2个字节,最大长度不能超过32766
    字符类型若为utf8,每个字符最多占用3个字节,最大长度不能超过21845,
    超过这个限制的话,会自动将类型转得更大一些的字符类型。

  

  主键.primary key 从性能和实际出发,应该遵循下面几点:
  1、尽量短,避免占用太多空间
  2、唯一,不能跟其他行的数据重复
  3、不会改变
  4、代理建
  所谓 -代理建- 是指跟业务无关的字段:
  1、因为和业务无关,所以可以使用int等类型尽量短
  2、因为和业务无关,所以可以避免因为业务变动引起的主键变化
  3、不要相信自已的直觉,因为在直觉上感觉不会变的东西,往往都是经不起实践考验的。


MariaDB基本命令的更多相关文章

  1. Linux下python3、virtualenv、Mysql、redis安装配置

    一.在Linux安装python解释器 1.下载python3源码包 cd /opt/ wget https://www.python.org/ftp/python/3.6.2/Python-3.6. ...

  2. mysql/mariadb学习记录——创建删除数据库、表的基本命令

    查看已有的数据库: mysql> show databases; +--------------------+ | Database | +--------------------+ | inf ...

  3. Mysql的基础使用之MariaDB安装

    初学mysql的小白,首次写博客,为了能让自己记得更加深刻,也是以一种小白的角度交代初学者的经历和困难,也算是记录自己成长的步伐吧 我首次用mysql是在ubuntu上 ,现在用的是linux 中的R ...

  4. 关于数据库管理系统DBMS--关系型数据库(MySQL/MariaDB)

    数据库的结构(3种):层次,网状,关系型(用的最多): DBMS的三层模型: 视图层:面向最终用户: 逻辑层:面向程序员或DBA: 物理层:面向系统管理员: 关系型数据库管理系统——RDBMS: 主要 ...

  5. Linux-基础学习(五)-mariadb主从复制以及redis学习

    开始今日份整理 1.mariadb的主从复制 主从复制大致图示: 1.1 mysql基本命令复习 linux下的操作 .启动mysql systemctl start mariadb .linux客户 ...

  6. Mariadb主从复制

    前戏: mysql的基本命令复习 .启动mysql systemctl start mariadb .linux客户端连接自己 mysql -uroot -p -h 127.0.0.1 .远程链接my ...

  7. linux --mariadb/redis数据库篇

    mariadb ---磁盘型数据库 基础安装 配置好yum源后,软件就可以通过配置的yum源进行安装,按理来讲安装mysql直接通过   yum install mariadb  -y  便可安装,但 ...

  8. Linux(5)- MariaDB、mysql主从复制、初识redis

    一.MYSQL(mariadb) MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可. 开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL ...

  9. Linux--5 mariadb和redis的安装

    一.MYSQL(mariadb) MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可. 开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL ...

随机推荐

  1. 2019icpc南京网络赛

    B. super_log(扩展欧拉函数) 题意:求aa...(b个a)模M的值. 思路:递归用欧拉函数求解,我们知道欧拉降幂公式: 如果讨论b和φ(p)的关系会很麻烦,网上证明了一种精妙的方法,只需重 ...

  2. 高并发网络编程之epoll详解(转载)

    高并发网络编程之epoll详解(转载) 转载自:https://blog.csdn.net/shenya1314/article/details/73691088 在linux 没有实现epoll事件 ...

  3. 简单的GCC语法: 弄清gcc test.c 与 gcc -c test.c 的差别

    转载于:http://cache.baiducontent.com/c?m=9d78d513d99610fe4fede5690d60c067690597634dc0d06368d5e31587231b ...

  4. DOS bcp

    C:\>bcp /?用法: bcp {dbtable | query} {in | out | queryout | format} 数据文件  [-m 最大错误数]             [ ...

  5. vue使用axios进行ajax请求

    以前都用resource进行ajax请求,现在官方推荐使用axios,所以现在更换插件.这篇文章主要描写如何在项目中引入axios以及简单地使用axios进行ajax请求. 第一步,需要通过npm安装 ...

  6. Boot-crm管理系统开发教程(一)

    ps:上周就把这个项目写完了,一直忘记记录,现在补上. Boot-crm是书上第十八章的内容,书上提供了前端的代码,所以只需要写后端的代码就可以了,①所以我们先把前端的代码移植到项目中. ②然后在li ...

  7. 第二十五篇 jQuery 学习7 获取并设置 CSS 类

    jQuery 学习7 获取并设置 CSS 类   jQuery动态控制页面,那么什么是动态呢?我们就说一下静态,静态几乎又纯html+css完成,就是刷新页面之后,不会再出现什么变动,一个实打实的静态 ...

  8. 解决 'mvn' 不是内部或外部命令,也不是可运行的程序 或批处理文件。

    'mvn' 不是内部或外部命令,也不是可运行的程序 或批处理文件. 九步完成

  9. 乐观锁之版本号机制和CAS

    ---恢复内容开始--- 乐观锁:每次去拿数据的时候,都认为别人不会修改,不会加锁,但在更新的时候会去判断一下,此期间别人有没有更新数据,版本号机制和CAS算法就用到乐观锁,参考了https://bl ...

  10. Java注解【四、自定义注解】

    语法要求.元注解 元注解: Target-适用范围: Retention-类型:源码注解.编译时注解.运行时注解 Inherited-可继承(只能继承类上的注解,接口.类中的方法都不行) Docume ...