草庐IT

列名称

全部标签

mysql - 如何在 MySql 中强制区分大小写的表名和列名?

问题是我们在windows机器上工作,完成后我们将代码部署到unix机器上。该代码在windows上运行良好,但在unix中,在以正确的大小写更改表名后,我们得到类似“不存在这样的表”的错误,它在unix中也运行良好。实际上,在windows中默认情况下不区分大小写的表名,但在unix中它们确实有(请阅读MySQL表实际上是文件,在unix中我们有区分大小写的文件名,但在windows中没有)。解决方法可能是重新创建所有表,并让表名小写。是的,我们也可以这样做,没关系。但是,我们仍然可以对MySql(windows机器)中的表名强制区分大小写。如果是,请告诉我该怎么做。

php - MySQL 检索数据类型 == X 的列名

我需要编写一些仅适用于我们数据库中某些字段的代码。具体来说,我正在寻找单个数据库的所有表中类型为DECIMAL(12,5)的任何字段;如果有任何帮助,我们所有的小数字段都以dec_为前缀。我可以从所有表中收集所有小数字段,但其中有很多不符合我的特定条件,我只需要限制为12,5的小数值。在使用纯SQL或使用PHP之间我没有偏好。我们目前正在使用CakePHP框架来管理我们的项目,尽管我可以在不使用该框架的情况下轻松地做到这一点。这是收集所需数据的一次性操作,因此我可以继续进行审核。非常感谢任何帮助,感谢您花时间阅读本文。[编辑]在这里得到了一些很好的答案,谢谢大家!我可能应该在我最初的帖

sql - mysql,遍历列名

我想从MySQL表中获取所有列名,遍历每个列名,然后使用这些列名作为变量运行存储过程。大意是:colnames=getcolumnnamesfromtableforeachcolnameifsomethingchangedthendosomethingelsedosomethingelse看起来SHOWCOLUMNSFROMmyTable会给我列名,但是如何将列名放入循环中?我真的很想使用原生SQL在存储过程中运行所有这些。因为我还在学习MySQL的复杂性,这对我的项目很有帮助。感谢您的帮助。 最佳答案 我想你想要这样的东西:DEC

MySQL concat() 创建要在查询中使用的列名?

我想以列名的第一部分是字符串而第二部分是另一个查询结果的数字的方式连接列名。例如:SELECTCONCAT('column',mytable.mycolumn)FROMtable...这可以通过某种方式完成吗?这样它不会给我错误,但我没有得到预期的结果,而且串联似乎不起作用。 最佳答案 我之前说过这做不到,但我错了。我自己最终也需要这样的东西,所以我环顾四周,发现server-sidepreparedstatements让您从字符串构建和执行任意SQL语句。这是我刚刚做的一个例子来证明这个概念:set@query:=(selectc

java - 使 hibernate 反引号所有表/列名

我面临着为使用MySQL5.0而编写的遗留系统,现在需要将其迁移到MySQL5.5(要求)。我发现有一列名为maxvalue,这似乎是MySQL5.5中的系统字。因此,我所有包含此列的Hibernate查询都会出现语法错误:Causedby:java.sql.BatchUpdateException:YouhaveanerrorinyourSQLsyntax;checkthemanualthatcorrespondstoyourMySQLserverversionfortherightsyntaxtousenear'maxvalueHibernate似乎不会自动反引号`围绕字段名称。如

mysql - 如何从 MySQL 数据库中搜索列名?

这个问题在这里已经有了答案:HowcanIfindallthetablesinMySQLwithspecificcolumnnamesinthem?(12个回答)关闭6年前。我正在运行一个巨大的数据库,其中包含如此多的表,并且表具有如此多的列。我的数据库是MySQL,我必须搜索特定的列。在MySQL中有没有一种方法可以从数据库中的所有表中搜索列名? 最佳答案 从INFORMATION_SCHEMACOLUMNSTable中检索它查询selecttable_name,column_namefrominformation_schema.

mysql - 列名中的保留字 - 插入 MySQL

这个问题在这里已经有了答案:SyntaxerrorduetousingareservedwordasatableorcolumnnameinMySQL(1个回答)关闭8年前。我有一个MySQL数据库,其中一个列名称中包含单词“group”。我无法更改此数据库和列的名称;这不是我的。表用户,列:id,name,password,group,等。我需要在这个表中插入一条记录。我尝试了INSERTINTOusers(name,group)VALUES('John','9'),但由于“group”而无法正常工作。你能帮我吗,请问如何向这个表中插入一条记录? 最佳答案

mysql - `date` 是有效的 mysql 列名吗?

我想知道date是否真的是一个有效的mysql列名?根据manualMySQLpermitssomekeywordstobeusedasunquotedidentifiersbecausemanypeoplepreviouslyusedthem.Examplesarethoseinthefollowinglist:ACTIONBITDATEENUMNOTEXTTIMETIMESTAMP因此,据我所知,您允许使用date作为列名,但并不是说不推荐em>。那么,使用date作为列名有什么影响吗? 最佳答案 我能够将名为date的列添加到

mysql - MySQL中列名的最大长度

就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter寻求指导。关闭9年前。我正在使用mysql并有一个长度为70的列名。所以,我收到错误消息,指出列名称太长。现在,我只想知道mysql中列名的最大长度是多少? 最佳答案 下表描述了每种标识符的最大长度。IdentifierMaximumLength(characters)Database64Table64Column64I

sql - 如何在不指定列名的情况下使用 AUTO_INCREMENT 列向数据库中插入新行?

我有一个包含以下列的表格:id-INTUNSIGNEDAUTO_INCREMENT名称-VARCHAR(20)组-VARCHAR(20)我知道我可以像这样添加一行:INSERTINTOtable_name(name,group)VALUES('myname','mygroup')我想知道是否有一种方法可以添加一行不指定列名,比如没有AUTO_INCREMENT列时? 最佳答案 对于某些数据库,您可以在auto_increment列中显式插入NULL:INSERTINTOtable_nameVALUES(NULL,'myname','