c# - Using ADO.Net, how do I get the database table name associated with a DataColumn? -


assume have table t1 column c1. when execute 'select c1 t1', can metadata result using datatable/datarow/datacolumn using code snippet below

namespace consoleapplication1 {     internal class program     {         private static void main(string[] args)         {              sqldataadapter adapter;             dataset dataset = new dataset();             using (sqlconnection connection                 = new sqlconnection(@"persist security info=false;trusted_connection=true;"))             {                  sqlcommand command = new sqlcommand(                     @"select c1 t1 1 = 0;", connection);                 connection.open();                  sqldatareader reader = command.executereader();                 datatable schematable = reader.getschematable();                 console.writeline(reader.getname(0)); //name of column                 foreach (datarow row in schematable.rows)                 {                     //console.writeline(row["tablename"]);                     foreach (datacolumn column in schematable.columns)                     {                         console.writeline(string.format("{0} = {1}",                             column.columnname, row[column]));                      }                 }               }         }     } } 

but value returned basetablename blank. there other methods available table 't1' associated column 'c1'?

here output of above code :

columnname = c1 columnordinal = 0 columnsize = 100 numericprecision = 255 numericscale = 255 isunique = false iskey =  baseservername =  basecatalogname =  basecolumnname = c1 baseschemaname =  basetablename =  datatype = system.string allowdbnull = true providertype = 3 isaliased =  isexpression =  isidentity = false isautoincrement = false isrowversion = false ishidden =  islong = false isreadonly = false providerspecificdatatype = system.data.sqltypes.sqlstring datatypename = char xmlschemacollectiondatabase =  xmlschemacollectionowningschema =  xmlschemacollectionname =  udtassemblyqualifiedname =  nonversionedprovidertype = 3 iscolumnset = false 

you can table name using

schematable.tablename

following links provide information looking for:

https://msdn.microsoft.com/en-us/library/system.data.datatable.tablename(v=vs.110).aspx

https://msdn.microsoft.com/en-us/library/system.data.datarow.table(v=vs.110).aspx


Comments

Popular posts from this blog

javascript - Thinglink image not visible until browser resize -

firebird - Error "invalid transaction handle (expecting explicit transaction start)" executing script from Delphi -

mongodb - How to keep track of users making Stripe Payments -