Skip to content

Commit 5cf0b70

Browse files
committed
Expose column default in information_schema.columns
1 parent 4f2280f commit 5cf0b70

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

core/trino-main/src/main/java/io/trino/connector/informationschema/InformationSchemaPageSource.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -255,7 +255,7 @@ private void addColumnsRecords(QualifiedTablePrefix prefix)
255255
tableName.getTableName(),
256256
column.getName(),
257257
ordinalPosition,
258-
null,
258+
column.getDefaultValue().orElse(null),
259259
column.isNullable() ? "YES" : "NO",
260260
getDisplayLabel(column.getType(), isOmitDateTimeTypePrecision(session)),
261261
column.getComment(),

plugin/trino-memory/src/test/java/io/trino/plugin/memory/TestMemoryDefaultColumnValue.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -194,6 +194,15 @@ void testTimestampWithTimeZone()
194194
assertDefaultValue("TIMESTAMP(12) WITH TIME ZONE", "TIMESTAMP '1970-01-01 00:00:00.999999999999 UTC'");
195195
}
196196

197+
@Test
198+
void testInformationSchema()
199+
{
200+
try (TestTable table = newTrinoTable("test_default_value", "(id int, data int DEFAULT 123)")) {
201+
assertThat((String) computeScalar("SELECT column_default FROM information_schema.columns WHERE table_name = '" + table.getName() + "' AND column_name = 'data'"))
202+
.isEqualTo("123");
203+
}
204+
}
205+
197206
private void assertDefaultValue(@Language("SQL") String columnType, @Language("SQL") String defaultValue)
198207
{
199208
assertDefaultValue(columnType, defaultValue, defaultValue);

0 commit comments

Comments
 (0)