求下列SQL ~ (会的人很简单)(测试正确立刻结)
怎么select出某个table有哪些列???
怎么select 出某个table有哪些Index和FK??
[解决办法]
一般查询sysobjects就OK了,不过MySQL和DB2不太清楚!
[解决办法]
SQLServer中如何取得一个数据表的所有列名
方法如下:先从SYSTEMOBJECT系统表中取得数据表的SYSTEMID,然后再SYSCOLUMN表中取得该数据表的所有列名。
SQL语句如下:
declare @objid int,@objname char(40)
set @objname = 'tablename '
select @objid = id from sysobjects where id = object_id(@objname)
select 'Column_name ' = name from syscolumns where id = @objid order by colid
是不是太简单了? 呵呵 不过经常用阿。
看lz的意思是要用程序实现吧,如果是java就方便了下面有例子:
statement = conn.createStatement();
String selectAllQuery = "select * from " + tableName;
ResultSet results = statement.executeQuery(selectAllQuery
.toString());
ResultSetMetaData meta = results.getMetaData();
for(int i = 1; i < meta.getColumnCount()+1 ; i++){
System.out.println( "catalog name for column "+meta.getColumnName(i)+ "is "+meta.getCatalogName(i));
System.out.println( "column type is: "+meta.getColumnTypeName(i)+ ": "+meta.getColumnType(i));
}