发表于: 2018-02-25 20:33:59
1 527
今天完成的事情:初步了解mysql的知识及其操作流程,数据库数据类型
数据库的操作
首先有些错误要避免mysql中必须以;结尾否则语句无效,因为是用命令行操作,所以一旦错误只能重新输入命令,相关提示符也需注意
创建一个名字为mydatabase数据库: create database mydatabase ;
可以用以下地命令来查看创建的数据库是否成功: show databases ;(这行命令会展示数据库名字及其所拥有的表)
更改数据库名字 : alter databases Hdatabase ;
更改数据库mydatabase的字符集 : alter database mydatabase charset utf8;(这行命令并不起作用,数据库的字符集根本没改变,依然不能输入中文)
进入数据库: use mydatabase ;
用下面的命令来查看该数据库中的表: show tables ;
数据库中表的操作
用下面的命令来创建表:create table student (
xxx xxx xxx,
xxx xxx xxx
);(这行命令一般需要三个部分,第一个是字段名,第二个是字段类型(long在mysql中是bigint,没有string,使用varchar代替,一般只在varchar后面添加字符限定数目),第三个一般输入NOT FULL或者FULL表示是否可以为空,每个字段用,隔开 最后一个字段不必加,)
网上的教程包括菜鸟在内很多都是用字符串举例,导致我产生了一个误解,就是所有都要添加引号,而且网上教程互相抄袭,很多还是用的双引号,这里应该使用单引号
用下面的命令来检查表的创建是否成功: show tables;
查看该表结构,表中字段的信息: desc 表名 ; (效果如下图)
修改表名: rename命令用于修改表名。 rename命令格式:rename table 原表名 to 新表名;
alter table 旧表名 rename 新表名; alter table student rename my_student;
修改字段,字段操作很多:新增(add)、修改(modify)、重名(change)、删除(drop)
下图展示得到是修改字段类型,差别可与上图对比
--给学生表增加ID放到第一个位置。 alter table 表名 add 字段名 数据类型[位置];
alter table my_student add id int first;
---将学生表中的number学号字段变成固定长度,且放到第二位。 alter table 表名 modify 字段名 数据类型 [位置];
alter table my_student modify number char(10) after id;
---修改学生表中的gender字段为sex。 alter table 表名 change 旧字段名 新字段名 数据类型 ; alter table my_student change gender sex varchar(10);
---删除学生表中的字段age。 alter table 表名 drop 字段名;
alter table my_student drop age;
删除数据表: drop table 表名1,表名2,……; 一次性删除多个表(这个慎用)
数据操作:
---新增数据(插入全表字段数据) insert into student values('Jim','female',1106101);
---新增数据(指定字段列表) insert into student(number,sex) values(1106,'male');
---查看所有的数据 select *
from 表名
[where 条件];
明天计划的事情:完成中文数据的插入,添加索引,在今天的基础上对中文的数据进行修改
遇到的问题:
无法插入中文数据,网上百度了方法就两条
其一 。更改数据库mydatabase的字符集 : alter database mydatabase charset utf8;(这行命令并不起作用,数据库的字符集根本没改变,依然不能输入中文)
效果如下图,实际上并没效果
其二 。在上面的基础上添加set names utf8;这行命令和上面一样没有效果
接着在网上找有种去年初的方法是在/usr/local/mysql里面找.cnf文件,这个方法等同于Windows上找my.ini但是根本没有。
我觉得是安装数据库时就没有设置编码格式为utf8所致,如果不行明天换个用压缩包的安装方式修改配置文件,而不是用dmg的方法
收获:学会了数据库,表,字段的创建,修改,删除,移动位置
评论