详情如下:
1、连接数据库,不同数据库python有对应的第三方库,用账号密码ip地址直接连接。
2、执行sql语句,可以用pandas里面的read_sql_query,也可以用数据库第三方库的fetchall。
3、获取结果,read_sql_query直接出来带列名的DataFrame,但fetchall这种还要另外处理成DataFrame,还有其他数据处理的,在这一步加上就是了。
4、保存结果,pandas里面有一个to_pickle的函数,可以把数据序列化保存在本地文件,需要用到的时候再read_pickle反序列拿出来用,比不停地执行sql要方便。
5、将以上四步所有的 *** 作代码封装成函数,作为scheduler的其中一个作业,设置执行周期和执行时间,到点就会自动获取数据保存在本地文件了
all_tables显示用户有权限看到的所有的表,包括系统表
dba_tables是管理员可以看到的数据库中所有的表
user_tables是当前用户的所有表,用这个可以缩小查找的范围
如果知道表所在的用户可以
select from all_tables where owner='用户名'
如果知道字段的名称可以
select from all_tab_columns where owner='用户' and column_name='字段名'
如果用户、表、字段的名称都不知道,最好找下开发人员或者售后支持。
如果技术支持也没有,那就只能根据表或者字段的中文名称的名称猜了
你想法是好的,
不过SQLServer不支持这样 *** 作,
原因是order by 的优先级比 union all要低,所以一旦同时出新order 和 union
会先执行union , 再执行order
以上就是关于数据库间如何自动拿数据全部的内容,包括:数据库间如何自动拿数据、在oracle 数据库中 select * from all_Tables 会出来4000多个表。、mysql数据库多个表union all查询并排序的结果为什么错误等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)