十、MySQL的应用大全
初步接触MySQL记忆的不是很深刻,所以来记录一下MySQL的基本用法
--------------------------------------------------------------------------------------------------------------------------------
登录:mysql [--host=服务器地址] --user=用户名 --port=端口 --password
退出:quit; 或 exit;
数据库增删改查
增:create database [if not exists ] 数据库名 [charset 字符集] [collate 字符排序规则];
create database z_0222 charset utf8;
删:drop database 数据库名;
改:alter database 数据库名 character set=新字符集 collate=新校对集;
想操作表 进入数据库,关键字用use
表增删改查
增:
drop table login;
create table login(
id int auto_increment primary key,
name varchar(10) comment '这是姓名',
age char(1) default '1',
foreign key (name) references user (name1)
//外键,第一个name是本表的,name1是外键的那个表的
);
drop table user;
create table user(
name1 varchar(10) primary key
);
查:show tables;
删:drop table login;
--------------------------------------------------------------------------------------------------------------------------------------------
基本语法规定
单行注释: #注释内容
单行注释: -- 注释内容(注意,两个“--”之后有一个空格)
多行注释: /*注释内容*/
语句结束符:
默认是分号(英文)
还可以自己设定,设定命令为:delimiter
形式:delimiter 新的符号(可以是多个字符)
然后在此语句之后,就要使用新的设定的符号来结束一条语句。
varchar类型:可变长度字符串类型。最多能存储65532个字节的字符串——也还要考虑字符编码。设定的长度
只是最长长度,但可以不存满,则实际长度以数据长度为准。
Varchart(10)
char类型:定长字符串类型。最多能存储256个字符。如果存储的数据不足设定的长度,则会自动补空格填满。
设定时都需要给定长度,比如:varchar(20), char(6);
mysql,一行的所有内容的总的存储长度也有个限制,约65535个。
-------------------------------------------------------------------------------------------------------------------
创建表:
create table [if not exists] 表名(
字段列表, [约束或索引列表],
字段列表, [约束或索引列表],
索引
约束
) [表选项列表];
说明:列表都是表示“多个”,相互之间用逗号分开。
字段基本形式: 字段名 类型 [字段修饰属性];
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
字段属性设置:
not null: 不为空,表示该字段不能放“null”这个值。不写,则默认是可以为空
auto_increment: 设定int类型字段的值可以“自增长”,即其值无需“写入”,而会自动获得并增加
此属性必须随同 primary key 或 unique key 一起使用。
[primary] key: 设定为主键。是唯一键“加强”:也不能重复并且不能使用null,并且可以作为确定任意一行数据的“关键值”,最常见的类似:where id= 8; 或 where user_name = ‘zhangsan’;
通常,每个表都应该有个主键,而且大多数表,喜欢使用一个id并自增长类型作为主键。
但:一个表只能设定一个主键。
unique [key] : 设定为唯一键:表示该字段的所有行的值不可以重复(唯一性)。
default ‘默认值’: 设定一个字段在没有插入数据的时候自动使用的值。
comment ‘字段注释’:
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
索引:
索引是一个“内置表”,该表的数据是对某个真实表的某个(些)字段的数据做了“排序”之后的存储形式。
其作用是:极大提高表查找数据的速度!——其效率(速度)可以匹敌二分查找。
注意:索引在提供查找速度的同时,降低增删改的速度。
对创建(设计)表来说,建立索引是非常简单的事,形式如下:
索引类型 (字段名1,字段名2, .... ) //可以使用多个字段建立索引,但通常是一个
有以下几种索引:
普通索引:key(字段名1,字段名2, .... ):它只具有索引的基本功能——提速
唯一索引:unique key (字段名1,字段名2, .... )
主键索引:primary key (字段名1,字段名2, .... )
全文索引:fulltext (字段名1,字段名2, .... )