ResultSet res
ResultSetMetaData rsmds= res.getMetaData();
int size = rsmds.getColumnDisplaySize(i);
给出列的宽度,我希望以字节为单位获取列的大小。我怎么能这样做?
查询结果集:
SELECT * FROM LevelOne ORDER BY (SELECT NULL) OFFSET 0 ROWS FETCH NEXT 50000 ROWS ONLY;
创建表查询:
CREATE TABLE Q_680_6([Id] INT, [Title] NVARCHAR(MAX) DEFAULT '', [Description] VARCHAR(MAX) Dta_db.dbo.Q_680_6([Id] INT, [Title] NVARCHAR(MAX) DEFAULT '', [Description] VARCHAR(MAX) DEFAULT '', [StartDate] DATETIME DEFAULT NULL, [EndDate] DATETIME DEFAULT NULL, [Lead] NVARCHAR(MAX) DEFAULT '', [CreatedOn] DATETIME DEFAULT NULL, [CreatedBy] INT, [ModifiedOn] DATETIME DEFAULT NULL, [ModifiedBy] INT) END
答案 0 :(得分:1)
您无法从结果集元数据中派生此内容。您可以使用DatabaseMetaData.getColumns(...)
,列CHAR_OCTET_LENGTH
,但可能不会为char
/ varchar
以外的数据类型填充此内容。
答案 1 :(得分:0)
getColumnDisplaySize
与结果集有关。它与列规范无关。
您可能会发现this相关讨论很有用。