反射技术其实就是动态加载一个指定的类,并获取该类中的所有内容.而且将字节码文件封装成对象,并将字节码文件中的内容都封装成对象,这样便于操作这些成员,简单来说:反射技术可以对一个类进行解剖,反射大大增强了应用程序的可扩展性. 反射技术的原理如下图所示: 但是要想要对字节码文件进行解剖,必须要有字节码文件对象. 如何获取字节码文件对象呢? 要读取的类文件源码: package Reflect; public class Person { /** * @param args */ private St
Sql中获取表结构(字段名称,类型,长度,说明) SELECT TableName = OBJECT_NAME(c.object_id), ColumnsName = c.name, Description = ex.value, ColumnType=t.name, Length=c.max_length FROM sys.columns c LEFT OUTER JOIN sys.extended_properties ex ON ex.major_id = c.object_id AND
可以快速从数据库获取 对象的 指定字段的集合数组 比如有一个users表,要等到user的id数组: select id from users where age > 20; 要实现在如上sql语句,在rails中有以下几种写法: User.where(‘age > 20‘).select(:id).collect(&:id) User.where(‘age > 20‘).select(:id).map(&:id) -> SELECT id FROM `users
获取用户表列表: select * from user_tables; select * from all_tables; select * from dba_tables; 获取表的字段: select * from user_tab_columns where Table_Name='用户表'; select * from all_tab_columns where Table_Name='用户表'; select * from dba_tab_columns where Table_Nam
--()获取所有数据库名: Select Name FROM Master..SysDatabases order by Name --()获取所有表名 --XType=''U'':表示所有用户表; --XType=''S'':表示所有系统表; Select Name FROM SysObjects Where XType='U' orDER BY Name SELECT name FROM sysobjects WHERE type = 'U' orDER BY Name --()获取表里的字
查看获取表内字段注释: > show full columns from tablename; 或是 show full fields from tablename; 或是,在元数据的表里面看 Select COLUMN_NAME 列名, DATA_TYPE 字段类型, COLUMN_COMMENT 字段注释 from INFORMATION_SCHEMA.COLUMNS Where table_name = 'companies'##表名 AND table_schema = 'testhu
PostgreSQL获取数据库中所有table名: SELECT tablename FROM pg_tables WHERE tablename NOT LIKE 'pg%' AND tablename NOT LIKE 'sql_%' ORDER BY tablename; PostgreSQL获取数据库中所有table名及table的注解信息: SELECT tablename, obj_description(relfilenode, 'pg_class') FROM pg_tables