dataTableSchema.Columns.Add ("BaseColumnName", typeof (string));
dataTableSchema.Columns.Add ("BaseSchemaName", typeof (string));
dataTableSchema.Columns.Add ("BaseTableName", typeof (string));
- dataTableSchema.Columns.Add ("DataType", typeof (string));
+ dataTableSchema.Columns.Add ("DataType", typeof(string));
dataTableSchema.Columns.Add ("AllowDBNull", typeof (bool));
dataTableSchema.Columns.Add ("ProviderType", typeof (string));
dataTableSchema.Columns.Add ("IsAliased", typeof (bool));
DataRow schemaRow;
int oid;
- string pgType;
DbType dbType;
Type typ;
- DataColumn schemaCol;
-
+
for (int i = 0; i < fieldCount; i += 1 )
{
- oid = PostgresLibrary.PQftype (pgResult, i);
-
schemaRow = dataTableSchema.NewRow ();
schemaRow["ColumnName"] = PostgresLibrary.PQfname (pgResult, i);
schemaRow["BaseSchemaName"] = ""; // ? tim
schemaRow["BaseTableName"] = ""; // ? tim
- Console.WriteLine("Calling OidToTypname...");
- pgType = PostgresHelper.OidToTypname (oid, con.Types);
- pgtypes[i] = pgType;
-
- Console.WriteLine("Calling TypnameToSqlDbType...");
- dbType = PostgresHelper.TypnameToSqlDbType (pgType);
-
- Console.WriteLine("Calling DbTypeToSystemType...");
- typ = PostgresHelper.DbTypeToSystemType (dbType);
- schemaRow["DataType"] = typ.ToString();
+ // PostgreSQL type to .NET type stuff
+ oid = PostgresLibrary.PQftype (pgResult, i);
+ pgtypes[i] = PostgresHelper.OidToTypname (oid, con.Types); \r
+ dbType = PostgresHelper.TypnameToSqlDbType (pgtypes[i]);\r
+ \r
+ typ = PostgresHelper.DbTypeToSystemType (dbType);\r
+ string st = typ.ToString();\r
+ schemaRow["DataType"] = st;\r
schemaRow["AllowDBNull"] = false; // ? tim
schemaRow["ProviderType"] = ""; // ? tim
schemaRow["IsHidden"] = false; // ? tim
schemaRow["IsLong"] = false; // ? tim
schemaRow["IsReadOnly"] = false; // ? tim
-
+ schemaRow.AcceptChanges();
dataTableSchema.Rows.Add (schemaRow);
+
+ }
+
+#if DEBUG_SqlCommand
+ Console.WriteLine("********** DEBUG Table Schema BEGIN ************");
+ foreach (DataRow myRow in dataTableSchema.Rows) {\r
+ foreach (DataColumn myCol in dataTableSchema.Columns)\r
+ Console.WriteLine(myCol.ColumnName + " = " + myRow[myCol]);\r
+ Console.WriteLine();\r
}
+ Console.WriteLine("********** DEBUG Table Schema END ************");
+#endif // DEBUG_SqlCommand
+
}
}
}