oracle:
建表语句:select dbms_metadata.get_ddl('TABLE','ODS_NE_GNB_NG') from dual
查询某张表的所有字段名
select COLUMN_NAME,column_id from user_tab_columns where table_name='SYS_USER‘;
表名必须大写,否则查不出来
2.查询出某张表所有字段名,用 ||','|| 分隔
select max(substr(SYS_CONNECT_BY_PATH(COLUMN_NAME,'||'',''||'),2)) col from (select COLUMN_NAME,column_id from user_tab_columns where table_name='SYS_USER') start with column_id=1 connect by column_id=rownum;
这个用来spool导出数据时,手动定义格式(字段较多时,可以用此语句查出所有字段)
3.spool 导出csv
spool.sql
set colsep ,
set feedback off
set heading off
set trimout on
set termout off
set pagesize 0
spool /home/oracle/spool_data/test.csv
select user_name || ',' || user_pass from sys_user_account;
spool off
exit
sqlplus -s 用户名/密码 @spool.sql
postgresql:
1、通过命令行查询
\d 数据库 —— 得到所有表的名字
\d 表名 —— 得到表结构
2、通过SQL语句查询
"select * from pg_tables" —— 得到当前db中所有表的信息(这里pg_tables是系统视图)
"select tablename from pg_tables where schemaname='public'" —— 得到所有用户自定义表的名字(这里"tablename"字段是表的名字,"schemaname"是schema的名字。用户自定义的表,如果未经特殊处理,默认都是放在名为public的schema下)
网友评论