SQL, чтобы Excel Generation Generation Application не работает с серверным соединениемPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 SQL, чтобы Excel Generation Generation Application не работает с серверным соединением

Сообщение Anonymous »

Я работаю над SQL, чтобы Excel Report Generator. Frondend -это ручья, и как он работает, вы вставляете свой запрос в коробку запроса на потоковом листе с заголовком -листы, он выполняет запрос и генерирует рабочую книгу Excel с листом. Вы можете иметь несколько запросов в нескольких -листовых блоках, но проблема в том, что я работаю со сложными запросами, и запросы обычно включают в себя кучу сделанных таблиц температуры, а затем данные из этих временных таблиц извлекаются в электронную таблицу Excel. Мой код работает на Localhost в Microsoft SQL Server Management Studio 18, но как только я подключаюсь к серверу, мое приложение возвращает ошибку с надписью: < /p>

Отчет об генерировании ошибок: этот объект результата не возвращает строки. Он был закрыт автоматически.

Это может быть проблема с подключением, я устраняю устранение с помощью CHATGPT и говорит, что это, вероятно, проблема с подключением, потому что SSMS строго с тем, как температурные таблицы обрабатываются в соединении при использовании SQLalchemy и Pandas Read.sql () , но я не уверен. ```
import pandas as pd
from sqlalchemy import create_engine, text
import time
import re
from pyexcelerate import Workbook

def parse_query_blocks(query):

parts = re.split(r"--\s*sheet:\s*(.+)", query)
blocks = []
for i in range(1, len(parts), 2):
sheet_name = parts.strip()
sql_block = parts[i + 1].strip()
queries = [q.strip() for q in sql_block.split(";") if q.strip()]
blocks.append((sheet_name, queries))
return blocks

def generate_dynamic_reports(engine, sheet_query_blocks, output_file):
start_time = time.time()

all_setup_queries = []
sheet_selects = []

for sheet_name, queries in sheet_query_blocks:
final_select = None
for q in reversed(queries):
if q.strip().lower().startswith("select"):
final_select = q
break
if not final_select:
raise ValueError(f"No SELECT query found for sheet: {sheet_name}")

non_selects = [q for q in queries if q != final_select]
all_setup_queries.extend(non_selects)
sheet_selects.append((sheet_name, final_select))

wb = Workbook()

with engine.connect() as conn:

try:

if all_setup_queries:
for q in all_setup_queries:
conn.execute(text(q))

print(f"[{round(time.time() - start_time, 2)}s] ✅ Executed all setup queries")

for sheet_name, select_query in sheet_selects:
print(f"[{round(time.time() - start_time, 2)}s] 🔍 Running SELECT for: {sheet_name}")
df = pd.read_sql(text(select_query), conn)
df.fillna("NULL", inplace=True)

data = [df.columns.tolist()] + df.values.tolist()
wb.new_sheet(sheet_name[:31], data=data)
print(f"[{round(time.time() - start_time, 2)}s] 📄 Wrote sheet: {sheet_name} ({len(df)} rows)")

except Exception as e:
print(f"❌ Error generating report: {e}")
raise e

wb.save(output_file)
print(f"[{round(time.time() - start_time, 2)}s] ✅ All sheets exported to {output_file}")
```


Подробнее здесь: https://stackoverflow.com/questions/796 ... connection
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • SQL, чтобы Excel Generation Generation Application не работает с серверным соединением
    Anonymous » » в форуме Python
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • Как сделать System.text.json Generation Generation Dynamic
    Anonymous » » в форуме C#
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Поддерживает ли Mapstruct Generation Kotlin Generation?
    Anonymous » » в форуме JAVA
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • System.text.json Generation Generation Calling Gettypeinfo чрезмерно, медленнее, чем Newtonsoft.json в Unity 6
    Anonymous » » в форуме C#
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • System.text.json Generation Generation Calling Gettypeinfo чрезмерно, медленнее, чем Newtonsoft.json в Unity 6
    Anonymous » » в форуме C#
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»