当前位置: 技术问答>java相关
如何得到数据库中数据的位数呢?高手快来,散分了!!!!
来源: 互联网 发布时间:2015-08-22
本文导语: 我用jdbc取出了数据,在我的项目里,需要把不足的位补上空格,要达到这一点,我必须:第一,得到数据的长度的。二,得到数据库中字段定义的长度。三,比较两者。四,不足的位置补空格。五,把得到的新数据...
我用jdbc取出了数据,在我的项目里,需要把不足的位补上空格,要达到这一点,我必须:第一,得到数据的长度的。二,得到数据库中字段定义的长度。三,比较两者。四,不足的位置补空格。五,把得到的新数据(数据加空格)生成到文本文件里去。
我是个新手,这个怎么做啊?
我是个新手,这个怎么做啊?
|
不知道你用的什么数据库,我用的是SQL SERVER 2000,它里面有两个系统函数:COL_LENGTH(返回指定列的定义长度)和DATALENGTH(返回表达式数据的实际长度)(书上挪下来的)
例子:
select COL_LENGTH('Employees','LastName') as Col_length,DATALENGTH(LastName) as Datalength from Employees where EmployeeID>6
go
执行结果
Col_length Datalength
-------------------------
40 8
40 16
例子:
select COL_LENGTH('Employees','LastName') as Col_length,DATALENGTH(LastName) as Datalength from Employees where EmployeeID>6
go
执行结果
Col_length Datalength
-------------------------
40 8
40 16
|
use char(N) or nchar(N) to define your column when you create tables.
and DO NOT use varchar/ nvarchar to define that column.
then nothing to do, and it works well.
haha
and DO NOT use varchar/ nvarchar to define that column.
then nothing to do, and it works well.
haha
|
Please try the ResultSetMetaData's getColumnDisplaySize method, please read the jdk api for detail.
Ex:
ResultSet rs = stmt.executeQuery("SELECT a, b, c FROM TABLE2");
ResultSetMetaData rsmd = rs.getMetaData();
System.out.println(rsmd.getColumnDisplaySize(1));
System.out.println(rsmd.getColumnDisplaySize(2));
System.out.println(rsmd.getColumnDisplaySize(3));
Ex:
ResultSet rs = stmt.executeQuery("SELECT a, b, c FROM TABLE2");
ResultSetMetaData rsmd = rs.getMetaData();
System.out.println(rsmd.getColumnDisplaySize(1));
System.out.println(rsmd.getColumnDisplaySize(2));
System.out.println(rsmd.getColumnDisplaySize(3));
|
还有java里面
String a;
a.length()得到字符穿的长度。
String a;
a.length()得到字符穿的长度。
|
大概是用DatabaseMetaData的getMaxColumnNameLength()方法,具体方法清参阅java.sql.DatabaseMetaData类的文档。