首页 > 代码库 > mariadb简单配置

mariadb简单配置



创建缘由就不详细说明了,直奔主题。

记录下需要了解的命令。



首先要了解概念:

MariaDB是基于mysql的,所以命令通用语mysql。

流程大致如下:


如图

登录数据库后,可以用SHOW  DATABASES; 查询数据库[1,2,3]

可以使用use 数据库1;进入该数据库

show tables; #查询该数据所有表。

select * from 表名 #查询表中所有数据

     命令行快捷键编辑

     Ctrl+a: 快速移动光标至行首

     Ctrl+e: 快速移动光标至行尾

     Ctrl+w: 删除光标之前的单词

     Ctrl+u: 删除行首至光标处的所有内容

     Ctrl+y: 粘贴使用Ctrl+w或Ctrl+u删除的内容




讲了太多废话,咱们开始吧!



创建名字为:rexhome的数据库



现在我们已经知道了下面两天命令了:

CREATE DATABASE 数据库名

DROP DATABASE 数据库名



选项                                   说明

AUTO_INCREMENT   定义自增序列

varchar(#)                 定义可变长字符

char(#)                       定义字符长,占用量固定

DEFAULT ‘默认值’        定义列的默认值

INDEX                             定义索引

[NOT]NULL                   允许/禁止NULL值

PRIMARY KEY              定义列主键

UNIQUE                         定义唯一性

CHECK                            定义可以输入值的范围/选项


1、最简单的:

CREATE TABLE t1(
id int not null,
name char(20)
);
2、带主键的:

a:
CREATE TABLE t1(
id int not null primary key,
name char(20)
);
b:复合主键
CREATE TABLE t1(
id int not null,
name char(20),
primary key (id,name)
);
3、带默认值的:

CREATE TABLE t1(
id int not null default 0 primary key,
name char(20) default ‘1‘
);
CREATE TABLE MYHOME (

id int not null default 1,

name varchar(20) not null,

sex  char(50)

);



DESC MYHOME;  #查询该表

CREATE TABLE `test`.`table1` (

##于test数据库中创建table1表

`id` INT(3) NOT NULL ,

#行1 为id 整型(3个字符),not null 非空

`name` VARCHAR(20) NOT NULL ,

#行2为name varchar可变长字符(20个) 非空

`sex` SET(‘man‘,‘women‘) NOT NULL ,

#行3为sex,set(‘man’,‘women‘)只允许添加这两种文本

PRIMARY KEY  (`id`),

#主键为id行

INDEX  `name` (`name`)

#索引为name行

) ENGINE = InnoDB;

#存储引起为innodb


这是从phpmyadmin建立的表数据,咱们可以按照命令来学习对面mysql语句,这里补充点常用的。




 

插入数据

INSERT INTO `test`.`table1` (`id`, `name`, `sex`) VALUES (‘1‘, ‘rex‘, ‘man‘);

 

##于test数据库的table1表中对应(id、name、sex)的值(1、rex、man)

 

SELECT * FROM `table1` WHERE `id` = 1

 

##于table1表中所有类型查询id号为1的数据

 

ALTER TABLE `table1` DROP PRIMARY KEY, ADD PRIMARY KEY(`sex`);

 

##删除table1主机,并更新sex字段为新主键

 

INSERT INTO `test`.`table1` (`id`, `name`, `sex`) VALUES (ASCII(‘2‘), ASCII(‘111‘), ‘women‘);

 

##于test数据库的插入id,name,sex对应数据(ASCII类型为2,1,11,women)

 

UPDATE `test`.`table1` SET `id` = ‘1‘ WHERE `table1`.`sex` = ‘women‘;

 

##于test数据库查找table1表中,sex为women的行,并将id更新为1

 

DELETE FROM `test`.`table1` WHERE `table1`.`sex` = \‘man\‘

 

##于test数据库的table1表中,删除sex=man的行(注意,因为sex字段为主键,固删除行会按照主键来查找删除的)

 

主键是唯一索引的一种,一个表只能有一个主键,但可以有多个唯一索引。唯一索引很好理解,就是唯一性嘛,可以通过身份证查找到你,那身份证就是主键。

 

但除了身份证可以找到你,还可以通过你公司的哪个部门的哪个工号找到你,这个就是唯一索引。

 

唯一索引内容是不可重复的,我的年龄,和你的年龄。

 

一般索引就是没有限制条件,但对于大数据查询时很有帮助。

比如你查11月份你的信用卡消费记录,银行的数据库里有几千万条记录,如果不建索引可能查询一下就花1,2分钟,效率太慢,建了索引数据库根据索引查效率会提高很多,0.几毫秒就能查出来。

 

外键呢,其实用的不多,就是两个表中的某些字段的关联关系、


本文出自 “rExcHow” 博客,请务必保留此出处http://rexchow.blog.51cto.com/11619161/1890042

mariadb简单配置