以下代码返回true或false,但不是存储过程的输出
driver_manager = spark._sc._gateway.jvm.java.sql.DriverManager connection = driver_manager.getConnection(mssql_url, mssql_user, mssql_pass) connection.prepareCall("EXEC sys.sp_tables").execute() connection.close()
cngwdvgl1#
你可以尝试下面的代码,它给予你的每一行表在数组中。
driver_manager = spark._sc._gateway.jvm.java.sql.DriverManager connection = driver_manager.getConnection(mssql_url, mssql_user, mssql_pass) tst = connection.prepareCall("EXEC sys.sp_tables") tst.execute() results = tst.getResultSet() column_count = results.getMetaData().getColumnCount() output_arrays = [] while results.next(): row_array = [] for i in range(1, column_count + 1): column_data = results.getString(i) row_array.append(column_data) output_arrays.append(row_array) output_arrays
您将得到如下结果。
[['master', 'dbo', 'MSreplication_options', 'TABLE', None], ['master', 'dbo', 'spt_fallback_db', 'TABLE', None], ['master', 'dbo', 'spt_fallback_dev', 'TABLE', None], ['master', 'dbo', 'spt_fallback_usg', 'TABLE', None], ['master', 'dbo', 'spt_monitor', 'TABLE', None], ['master', 'sys', 'trace_xe_action_map', 'TABLE', None], ['master', 'sys', 'trace_xe_event_map', 'TABLE', None], ['master', 'dbo', 'spt_values', 'VIEW', None], ['master', 'INFORMATION_SCHEMA', 'CHECK_CONSTRAINTS', 'VIEW', None]
输出:
1条答案
按热度按时间cngwdvgl1#
你可以尝试下面的代码,它给予你的每一行表在数组中。
您将得到如下结果。
输出: