设置外键

表和表之间的外键:

注意在设计表的时候,要把选项里面的引擎选为InnoDB,因为InnoDB提供事务支持以及外部键等高级数据库功能。

一边是MyISAM,一边是InnoDB就设置不成功。

字符编码也要对应


使用navcat远程连接linux上的mysql数据库,删除数据库后报错,删除失败,报错

ERROR 1010 (HY000): Error dropping database(can't rmdir './jxc/',errno:342)

找到jxc这个目录(使用putty连接linux后 使用命令 find / -name jxc )发现里面有残留文件,rm -f 删除后,再删除数据库成功。

分析原因:残留的非数据库文件导致删除数据库失败。

使用360强力删除 data目录下对应数据库名称的文件夹
————————————————
版权声明:本文为CSDN博主「追逐时光」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u011630097/article/details/52125824


创建数据库:
CREATE DATABASE IF NOT EXISTS yourdbname DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

删除数据库:
drop database databaseName

CREATE DATABASE IF NOT EXISTS light_sns_redefine DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_unicode_520_ci;

drop database light_sns_redefine

light_sns_redefine-14-修改字符编码之前的备份-56张表-utf8mb4---utf8mb4_unicode_520_ci

light_sns_redefine-14--utf8mb4---utf8mb4_unicode_520_ci


查询某个数据库里面所有的表名

SELECT
table_name tableName,
ENGINE,
table_comment tableComment,
create_time createTime
FROM
information_schema.TABLES
WHERE
table_schema = ( SELECT DATABASE ( ) )


查询某个表里面所有的字段

select COLUMN_NAME,column_comment from INFORMATION_SCHEMA.Columns where table_name='wp_users' and table_schema='light_sns'

如果设置了唯一性约束unique。还把字段设置成empty String。再次插入会导致Duplicate entry 异常。
因为两个空字符串算重复。要设置为null。