MySQL基本操作

前言

       ITOO5.0中用到了MySQL数据库,对于从来都没有接触过MySQL的我是一个挑战,也是一个学习的机会。因为了有了sql server的基础,觉得MySQL应该也差不多,但是从中也出了一些问题,建表的sql语句有错,建不上表,添加不了外键,添加不了数据等等一系列问题。下面就总结一下这段时间对MySQL数据库的经验。


数据库


1、创建数据库

在数据库系统系统中创建名为mytest的数据库

<span style="font-size:18px;">create DATABASE mytest;</span>


2、使用数据库

<span style="font-size:18px;">use mysql;</span>


3、检测数据库

     检验数据库库系统中是否存在名为mytest的数据库

<span style="font-size:18px;">show databases;</span>

MySQL基本操作_第1张图片



4、删除数据库

     语法: drop dababase 数据库名;执行语句后,再次检查mytest数据库已被删除。

<span style="font-size:18px;">drop dadabase mytest;</span>
MySQL基本操作_第2张图片


5、查看存储默认存储引擎

      语法:show engines;

       在对数据库操作的时候有些问题是因为必要的存储引擎需要打开,如果创建带有外键的表,或给表添加外键的时候,innodb引擎需要打开。

MySQL基本操作_第3张图片


表的操作


1、创建表

      创建表的时候需要注意,字段的命名如果和数据库里的数据类型一样,需要加引号,如果添加外键的话,需要用到innodb存储引擎。

       语法:

create table 表名(字段名 数据库类型 [完整性约束条件],

……

字段名 数据类型);

    例:创建ta_roleresource 表,主键为RoleResourceId,外键为RoleId和ResourceId,在删除和更新时外键起Cascade(级联)约束。

<span style="font-size:18px;">CREATE TABLE `ta_roleresource` (
  `RoleResourceId` varchar(64) NOT NULL,
  `RoleId` varchar(64) NOT NULL,
  `ResourceId` varchar(64) NOT NULL,
  `TimeSpan` datetime DEFAULT NULL,
  `IsDeleted` varchar(2) DEFAULT NULL,
  PRIMARY KEY (`RoleResourceId`),
  KEY `fkrole` (`RoleId`),
  KEY `ffuserg` (`ResourceId`),
  CONSTRAINT `ffuserg` FOREIGN KEY (`ResourceId`) REFERENCES `ta_resource` (`ResourceId`) ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT `fkrole` FOREIGN KEY (`RoleId`) REFERENCES `ta_role` (`RoleId`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8</span>



2、查看表结构

    语法: describe 表名;

    例:查看ta_roleresource的表结构

<span style="font-size:18px;">describe ta_roleresource;</span>


MySQL基本操作_第4张图片

3、查看表详细结构语句 


      语法:show create table 表名;

      例;查看 ta_roleresource的详细结构:

<span style="font-size:18px;">show create table ta_roleresource;</span>


MySQL基本操作_第5张图片



4、修改表名

     语法:alter table 旧表名 rename 新表名;

      例;修改ta_roleresource的表名为ta_user

<span style="font-size:18px;">alter table ta_roleresource rename ta_user;</span>

执行结果

查询修改后的表结构

MySQL基本操作_第6张图片


字段的操作


1、修改字段的数据类型

     语法:alter table 表名 modify 字段名 数据类型;(数据类型是字段修改后的新数据类型)


     例:修改ta_roleresource中RoleResourceId 的数据类型为char(64);

<span style="font-size:18px;">alter table ta_roleresource modify RoleResourceId char(64);</span>


成功执行语句

再次查询表结构

MySQL基本操作_第7张图片


2、修改字段名

      语法:alter table 表名  change 旧字段名 新字段名 数据类型;

       例:修改ta_roleresource  RoleResourceId 的名称为rrId 数据类型为varchar(64)

<span style="font-size:18px;">alter table ta_roleresource change RoleResourceId rrId varchar(64);</span>


成功执行语句

再次查询执行成功够的ta_roleresource结构

MySQL基本操作_第8张图片


3、添加字段

    语法: alter table 表名 add 新增字段名 数据类型 [完整性约束条件] [first  | after 字段名];中括号括起来的是根据需求来添加的条件,第一个是完整性约束条件,第二个中括号是表名字段的位置,

例:在ta_roleresource中的rrId 字段后面添加testId字段,数据类型为varchar(64),不能为空;

<span style="font-size:18px;">alter table ta_roleresource add restId  varchar(64) not null after rrId;</span>

执行sql语句


再次查询ta_roleresource的表结构

MySQL基本操作_第9张图片


4、删除字段

      语法:alter  table 表名 drop 字段名;


      例;删除ta_roleresource中的restId 字段

<span style="font-size:18px;">alter table  ta_roleresource drop testId;</span>


成功执行sql语句


再次查询ta_roleresource的表结构;

MySQL基本操作_第10张图片


总结

       一路实践过来,发现这些操作也是有很多规律性的东西,MySQL也是一个门语言,它也是有一定的语法的,就像我们平时说话一样,主谓宾是主导,怎么变也离不开这个定律。



你可能感兴趣的:(MySQL基本操作)