如何使用resultset从mysql获取char数据类型

时间:2013-06-07 21:04:38

标签: java api jdbc resultset

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

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

4 个答案:

答案 0 :(得分:16)

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

从结果char中提取Java String,如下所示:

getString(column_name).charAt(0)

答案 1 :(得分:5)

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

摘要: char的映射是String。因此char数据类型

存在getString(String column_name)

答案 2 :(得分:4)

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

答案 3 :(得分:1)

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

char只是一种特殊情况:一个包含一个字符的字符串,因此添加此类型并不是很有用。

不要被像CHAR这样的名字所迷惑。 :)