@@ -840,3 +840,34 @@ DROP TABLE t1;
840840
841841statement ok
842842DROP TABLE t2;
843+
844+ # Test memory table fields with correct nullable
845+ statement ok
846+ CREATE or replace TABLE table_with_pk (
847+ sn INT PRIMARY KEY NOT NULL,
848+ ts TIMESTAMP WITH TIME ZONE NOT NULL,
849+ currency VARCHAR(3) NOT NULL,
850+ amount FLOAT
851+ ) as VALUES
852+ (0, '2022-01-01 06:00:00Z'::timestamp, 'EUR', 30.0),
853+ (1, '2022-01-01 08:00:00Z'::timestamp, 'EUR', 50.0),
854+ (2, '2022-01-01 11:30:00Z'::timestamp, 'TRY', 75.0),
855+ (3, '2022-01-02 12:00:00Z'::timestamp, 'EUR', 200.0);
856+
857+ statement ok
858+ set datafusion.catalog.information_schema = true;
859+
860+ query TTTTTT
861+ show columns FROM table_with_pk;
862+ ----
863+ datafusion public table_with_pk sn Int32 NO
864+ datafusion public table_with_pk ts Timestamp(Nanosecond, Some("+00:00")) NO
865+ datafusion public table_with_pk currency Utf8 NO
866+ datafusion public table_with_pk amount Float32 YES
867+
868+ statement ok
869+ drop table table_with_pk;
870+
871+ statement ok
872+ set datafusion.catalog.information_schema = false;
873+
0 commit comments