草庐IT

Information_Schema

全部标签

mysql - 如何检查 MySQL 表是否为 UTF-8 且具有 storageEngine InnoDB?

四处搜索只能找到从一种格式更改为另一种格式的说明,但我似乎无法找到确切的方法来确定我首先拥有哪些。我该怎么做:检查表有什么字符编码?检查表使用什么存储引擎?检查所有表是否都是某种编码?检查所有表是否都有特定的存储引擎? 最佳答案 您可以使用information_schema来了解每个表的引擎。selecttable_name,enginefrominformation_schema.tableswheretable_schema='your_database'对于你可以使用的编码showcreatetabletable_name或

mysql - 如何检查 MySQL 表是否为 UTF-8 且具有 storageEngine InnoDB?

四处搜索只能找到从一种格式更改为另一种格式的说明,但我似乎无法找到确切的方法来确定我首先拥有哪些。我该怎么做:检查表有什么字符编码?检查表使用什么存储引擎?检查所有表是否都是某种编码?检查所有表是否都有特定的存储引擎? 最佳答案 您可以使用information_schema来了解每个表的引擎。selecttable_name,enginefrominformation_schema.tableswheretable_schema='your_database'对于你可以使用的编码showcreatetabletable_name或

mysql - JPA @Table 注释 "catalog"和 "schema"变量用于什么?

为什么这些很重要,它们对手头的数据库有什么影响?“模式”不是已经决定了吗,因为它存在于数据库中?究竟什么是“目录”?JPA目录字段期望什么样的变量/输入?此外,“模式”字段的相同问题。 最佳答案 目录和模式是您在数据库服务器端定义的“命名空间”。有些数据库包含模式,有些包含目录,有些则两者都包含。当以特定用户登录时,某些数据库将模式/目录默认为用户的命名空间,导致其他用户看不到该表,因此需要使用“公共(public)”命名空间。因此,根据您用来支持数据的数据库,您可能希望忽略这些设置。对于MySQL,您可能希望忽略这些设置。这是因为

mysql - JPA @Table 注释 "catalog"和 "schema"变量用于什么?

为什么这些很重要,它们对手头的数据库有什么影响?“模式”不是已经决定了吗,因为它存在于数据库中?究竟什么是“目录”?JPA目录字段期望什么样的变量/输入?此外,“模式”字段的相同问题。 最佳答案 目录和模式是您在数据库服务器端定义的“命名空间”。有些数据库包含模式,有些包含目录,有些则两者都包含。当以特定用户登录时,某些数据库将模式/目录默认为用户的命名空间,导致其他用户看不到该表,因此需要使用“公共(public)”命名空间。因此,根据您用来支持数据的数据库,您可能希望忽略这些设置。对于MySQL,您可能希望忽略这些设置。这是因为

mysql - SQL查询查找表的主键?

如何通过查询找到表的主键? 最佳答案 这是重复的question:感谢Lukmdo这个答案:可能不建议这样做,但效果很好:showindexfromTABLEwhereKey_name='PRIMARY';可靠的方法是使用information_schema:SELECTk.COLUMN_NAMEFROMinformation_schema.table_constraintstLEFTJOINinformation_schema.key_column_usagekUSING(constraint_name,table_schema,

mysql - SQL查询查找表的主键?

如何通过查询找到表的主键? 最佳答案 这是重复的question:感谢Lukmdo这个答案:可能不建议这样做,但效果很好:showindexfromTABLEwhereKey_name='PRIMARY';可靠的方法是使用information_schema:SELECTk.COLUMN_NAMEFROMinformation_schema.table_constraintstLEFTJOINinformation_schema.key_column_usagekUSING(constraint_name,table_schema,

mysql - 如果存在则更改表,如果不存在则创建

我需要运行一个安装程序,它也可以是一个更新程序。安装程序需要能够最终拥有mysql数据库的特定方案/结构,而不管某些表是否存在、是否遗漏了一些列,或者不需要更改因为它们的结构是最新的。如何优雅地组合ALTER和CREATE?我在想一定有类似“ADD...IF...Duplicate”之类的东西假设我有表A。在一个客户端中,该表有一个列-A1,而另一个客户端有相同的表,但有A1列和A2列。我希望我的sql命令使两个客户端的表A都包含三列:A1、A2和A3。同样,我的脚本是一个转储到mysql的sql文件。我该怎么做?谢谢:-) 最佳答案

mysql - 如果存在则更改表,如果不存在则创建

我需要运行一个安装程序,它也可以是一个更新程序。安装程序需要能够最终拥有mysql数据库的特定方案/结构,而不管某些表是否存在、是否遗漏了一些列,或者不需要更改因为它们的结构是最新的。如何优雅地组合ALTER和CREATE?我在想一定有类似“ADD...IF...Duplicate”之类的东西假设我有表A。在一个客户端中,该表有一个列-A1,而另一个客户端有相同的表,但有A1列和A2列。我希望我的sql命令使两个客户端的表A都包含三列:A1、A2和A3。同样,我的脚本是一个转储到mysql的sql文件。我该怎么做?谢谢:-) 最佳答案

mysql - 数据库 :schema:load vs db:migrate with capistrano

我有一个Rails应用程序,我正在移动到另一台服务器,我想我应该使用db:schema:load来创建mysql数据库,因为它是推荐的。我的问题是我正在使用capistrano进行部署,它似乎默认为rakedb:migrate。有没有办法改变这个或者capistrano使用db:migrate有充分的理由? 最佳答案 为什么要使用db:schema:load我发现我自己的迁移最终会对数据进行一些混洗(例如,假设我将first_name和last_name列组合成一个full_name列)。只要我做了其中任何一项,我就会开始使用Act

mysql - 数据库 :schema:load vs db:migrate with capistrano

我有一个Rails应用程序,我正在移动到另一台服务器,我想我应该使用db:schema:load来创建mysql数据库,因为它是推荐的。我的问题是我正在使用capistrano进行部署,它似乎默认为rakedb:migrate。有没有办法改变这个或者capistrano使用db:migrate有充分的理由? 最佳答案 为什么要使用db:schema:load我发现我自己的迁移最终会对数据进行一些混洗(例如,假设我将first_name和last_name列组合成一个full_name列)。只要我做了其中任何一项,我就会开始使用Act