【问题标题】:How to get the char data type from mysql using resultset如何使用结果集从 mysql 获取 char 数据类型
【发布时间】:2013-06-04 06:46:01
【问题描述】:

我一直在对数据库进行CRUD操作,但是我找不到任何直接的方法来获取数据库中的数据类型char

虽然我使用结果集的getString(String column_name)实现了输出,但我想知道为什么不存在像getChar(String column_name)这样的方法,因为String和Character是两种不同的数据类型。

【问题讨论】:

  • 只要取字符串的第一个字符,当然它不为空或空。

标签: java api jdbc resultset


【解决方案1】:

正如 MySQL 所见,都是Strings,因为它没有单个字符的类型。当然,您可以将 CHARVARCHAR 设置为最大 1 的大小,但这是一种特殊情况,当功能已经存在时,您通常不希望为特殊情况创建方法。

只需从生成的String 中提取 Java char,如下所示:

getString(column_name).charAt(0)

【讨论】:

    【解决方案2】:

    参考link并查看表3-1,你就会明白为什么不存在getChar(String column_name)

    总结: char 映射为 String。所以char数据类型存在getString(String column_name)

    【讨论】:

      【解决方案3】:

      这是因为 MySQL 中的 Char 并不真正意味着单个字符值,它实际上意味着一个字符数组。在 java 中,字符数组表示为字符串,因此方法相同。

      【讨论】:

        【解决方案4】:

        数据库通常只有一种类型来表示所有字符串。

        char 只是一种特殊情况:只有一个字符的字符串,所以添加这种类型并没有真正的用处。

        不要被他们的名字所迷惑,比如 CHAR。 :)

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-08-23
          • 1970-01-01
          • 2010-11-14
          相关资源
          最近更新 更多