mysq数据库常用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysq数据库常用相关的知识,希望对你有一定的参考价值。

1、创建数据库表:

       create table table_name(fields_name1 datatype,fields_name2 datatype.....);

2、查看表:  

      show tables;

3、创建带有主健约束的表(包括有单字健和多字健类型)

     1、单字键约束

         字段名 数据类型,primary key[默认值]

      2、定义完所有列之后指定主健

       constraint <约束名>primary key[默认值]

 4、多字段联合主键

    主健同多个字段联合组成

。语法:

   Primary key[字段1,字段2,……]

  5、使用外键约束

     外键用来在两个表的数据之间建立链接,它可以是一列或者多列。一个表可以有一个或多个外键。外键对应的是参照完整性,一个表的外键可以为空值,若不为空值,则每一个外键值必须等于另一个表中主键的某个值。

     外键:首先它是表中的一个字段,它可以不是本表的主键,但对应另外一个表的主键。外键主要作用是保证数据引用的完整性,定义外健后,不允许删除在另一个表中具有关联关系的行。外键的作用是保持数据的一致性,完整性。

    主表(父表):对于两个具有关联关系的表而言,相关联字段中主键所在的那个表即是主表。

    从表(子表):对于两个具有关联关系的表而言,相关联字段中外键所在的那个表即是从表。

    语法:

    Constraint <>foreign key 字段1,【字段2】,references【主表名】主健列1,主键列2……

    外键名为定义的外键约束的名称,一个表中不能有相同名称的外键;字段名表示子表需要添加外键约束的字段列;主表名即被子表外键所依赖的表的名称;主键列表示主表中定义的主键列,或者列组合。

    关联指的是在关系型数据库中,相关表之间的联系。它是通过相容或相同的属性或属性组来表示的。子表的外键必须关联父表的主键,且关联字段的数据类型必须匹配。如果类型不一样,则创建子表时,就会出现错误。

   6、使用非空约束

     非空约束就是字段值不能为空。

      字段名   数据类型 Not null

    7、使用唯一性约束

    使用唯一性约束 unique constraint要求该列唯一。允许为空,但只能出现一个空值。唯一约束可以确保一列或者几列不出现重复值。

(1)       在定义完列之后直接指定唯一约束。

     字段名 数据类型 unique

    (2)在定义完所有列之后指定唯一约束。

     Constraint <约束名>unique <字段名>

    Unique和primary key 的区别:一个表中可以有多个字段声明为unique,但只能有一个primary key 声明;声明为primary key 的列不允许有空值。但是声明为unique的字段允许空值Null的存在。

    8、使用默认约束

     默认约束(default constraint)指定某列的默认值。如男性同学较多,性别就可以默认为男。如果插入一条新的记录时没有为这个字段赋值,那么系统会自动为这个字段赋值为男。

    字段名  数据类型 default 默认值

    9、设置表的属性值自动增加

       在数据库应用中,经常希望在每次插入新记录时,系统自动生成字段的主键值。可以通过为表主键添加auto_increment关键字来实现。默认的,在mysql中auto_incrtement约束。且该字段必须为主键的一部分。Auto_increment.约束的字段可以是任何整数类型(tinyint,smallint,int,bigint)。

    语法规则:

      字段名 数据类型 auto_increment

    4.2 查看数据表结构

    1.查看表基本结构语句describe  table_name 或者desc 表名;

    2.查看表详细结构语句 show create table

     Show create table <表名>\G;

   4.3修改数据表

     1、alter table <旧表名> rename to <新表名>;

   4.4修改字段的数据类型

       Alter table <表名> modify <字段名><数据类型>

   4.5 修改字段名

        Alter table 表名 change 旧字段名 新字段名 新数据类型;

    4.6添加字段

     Alter table 表名 add 新字段名 数据类型 约束条件 first after 已存在字段名

     4.7删除字段

      删除字段是将数据表中的某个字段从表中移除

      Alter table 表名 drop 字段名;

    4.8修心字段的排列位置

       Alter table 表名 modify 字段1 数据类型 first|after字段2

    4.9更改表的存储引擎

      Alter table 表名 engine=更改后的存储引擎名;

    4.10 删除表的外键约束

    Alter table 表名 drop foreign key 外键约束名。

    4.11删除数据表

    Drop table if exist 表1,表2,表3……表n;

    4.12删除被其它表关联的主表

      数据表之间存在外键关联的情况下,如果直接删除父表,结果会显示失败。原因是直接删除,将破坏表的参照完整性。如果必须要删除,可以先删除与它关联的子表,再删除父表,只是这样同时删除了两个表中的数据。但有的情况下可能要保留子表,这时如要单独删除父表,只需将关联的表的外键约束条件取消,然后就可以删除父表。

以上是关于mysq数据库常用的主要内容,如果未能解决你的问题,请参考以下文章

mysq数据库相关操作

mysq 数据库约束入门

连接mysq数据库,创建用户模型

MySQ数据备份

MYSQ养成记-MYSQL基础增强

mysq基础命令