mysql基础的学习笔记

cmd操作mysql方式:

cmd登录数据库方法:(方法一二实用于在电脑里配置过数据库相关的环境变量,否则必须在cmd里进入到数据库的bin目录):

  1).mysql -u root -p

  显示Enter password输入你登录数据库时的密码。

修改数据库密码

  旧密码:A 新密码 B:

  mysqladmin -uroot -pA password 'B'

刷新权限:

  flush priviliges;

查看数据库(表)的字符集编码:

  show create(表) database 数据库名;

临时修改数据库的字符集:

  SET GLOBAL character_set_server=utf8;

下面是一些创建数据库和表重要的指令。

  (1).创建数据库:creat database 数据库名;

     使用数据库:use 数据库名;

  (2).显示你创建的数据库(已供你选择你要使用的数据库):show databases;

  (3).删除数据库(谨慎使用此指令):drop database 数据库名;

  (4).展示表的内容:show tables;

  (5). 重命表名:alter table 原表名 rename to 新表名;

  (6).添加字段:alter table 表名 add 字段名 字段类型 字段属性;

  (7).修改字段名:alter table 字段名 change 新字段名;

  (8).删除字段: alter table 表名 drop 字段名;

  (9).删除表:drop table 表名;

在navicat下对表的一些操作:

  show create table 表名(可以以代码格式查看你的表);

  在设置time 的时候 想让它默认当前时间,和每个表必须有一个主键,如果你没有什么能设置主键的字段,就用auto_increment自增列为主键。该字段属性也要添加primary key

建表:

  create table 表名(

  字段名 数据类型 约束,

  .............

);

建表重要约束:

 主键: primary key,外键: foreign key,自增字段(适用于主键不确定的情况下):auto_increment,设置唯一(和主键类似):unique,非空:not null,默认值:default.

 一些数据库不支持列级外键,所以建议建表使用行级外键.

 行级外键创建方法:

 foreign key 该表外键字段名 references 表名(主键字段名);

对表添加字段:

    alter table 表名 add column 列名 约束条件;

对表已有字段添加外键约束:

    alter table 表名 add foreign key (字段名) references 外表表名(外表主键名)

向表插入数据:

  insert into 表名(字段名1,字段名2.......) values(数据1,数据2........);

删除表数据:

  delete from 表名

  where 条件;

查询表数据:

  select 字段1,字段2..... from 表名

  where 条件;

修改表数据:

  update 表名

  set 字段名=值

  where 条件;

------创建视图--------------------

  create view 视图名 as

  slelect 列名1,列名2 ...from 表名

-------------------------------------

--------创建函数-----------------

create function 函数名(形参1,形参2......)

returns 返回值类型

begin

  函数体

  retrun 返回值

end

执行:select 函数名(实参1,实参2...........)

--------------------------------------

-----------函数if语句-------------

if(条件块) then 执行体

else if(条件块) then 执行体

......................

else 执行体

end if

--------------------------------------

-------------函数case语句------

case

  when 条件块 then 执行体

  when 条件块 then 执行体

....

end case

--------------------------------------

-----------存储过程---------------
create procedure 存储名(形参1,形参2....)
begin
  程序体
end
参数类型:
in out inout

执行:call 存储名(实参1,实参2..................)

-------------------------------------

mysql数据类型:

char[length] length字节 定长字段,长度为0-255个字节
varchar[length] string  长度+1字节 变长字段,在mysql5.03以前,长度为0-255个字节,在5.0.3以后,最大长度为65535字节。一个utf8字符占3个字节、一个gbk字符占两个字节。
tinytext string  长度+1字节 字符串,长度为0-255个字节
text string  长度+2字节 字符串,最大长度为0-65535个字节
mediumtext string长  度+3字节 字符串,最大长度为16777215个字节
longtext string  长度+4字节 字符串,最大长度为4194967295个字节
tinyint[length] 1字节 范围:-128~127或0~255
smallint[length] 2字节 
mediumint[length] 3字节 
int[length] 4字节 
bigint[length] 8字节 
float 4字节 
double[length,decimals] 8字节 运行固定的小数点
decimal[length,decimals] length+1字节或length+2字节 
date 3字节 采用YYYY-MM-DD格式
datetime 8字节 采用YYYY-MM-DD HH:mm:SS格式
timestamp 4字节 采用YYYYMMDDHHmmSS格式
time 3字节 采用HH:MM:SS格式
enum 1或2字节 枚举类型
set 1、2、3、4或8字节 与enum一样,只不过每一列可以具有多个可能的值
blob   是text的一个变体。允许存储二进制文件,还可用于某些加密数据。

posted @ 2017-05-11 17:53  学习使我快乐Y  阅读(1148)  评论(3编辑  收藏  举报