Hirdetés
- Android alkalmazások - szoftver kibeszélő topik
- MIUI / HyperOS topik
- Samsung Galaxy A56 - megbízható középszerűség
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Ismét az alsó polcot bővíti a Tecno
- Fontos frissítés érkezik a OnePlus 13-ra
- Yettel topik
- Apple iPhone 13 Pro Max - őnagysága
- Megjöttek Magyarországra a Redmi Note 15-ök, január 22-től ennyiért kaphatók
- iPhone topik
Új hozzászólás Aktív témák
-
van egy olyan kínom, hogy 3.5-6 alatt a csv modul kényszeresen konvertál minden intet floatba, és mögétesz egy .0 taget.
van ötlet, hogy lehet erről lebeszélni? a doksija azt írja, hogy csak a writerquoting=csv.QUOTE_NONNUMERICmegadásánál kéne csinálnia, énquoting=csv.QUOTE_ALL-t használok, delimiterrel, aszt mégis csinálja...a kód:
try:
snames=['db_1', 'db_2', 'db_3']
for i in range(len(snames)):
tnames=['table_1']
for j in range(len(tnames)):
export_all = export_2_file(servicename=snames[i])
export_all.csv_init('2018_07_31', snames[i] + '_' + tnames[j])
export_all.export_2_csv(tnames[j])a használt függvények:
import csv
import time
from connect_2_db import connect_2_db
class export_2_file():
def __init__(self, servicename=False):
#instancing db connection
if servicename:
self.cdb = connect_2_db(servicename)
if not servicename:
self.cdb = connect_2_db()
self.cdb_brdb = self.cdb.brdb()
def csv_init(self, csvdir, csvname, master=False):
self.timestr = time.strftime("%d-%m-%Y_%H_%M_%S")
filename = str(csvdir)+'\\'+str(csvname)+'_'+self.timestr+'.csv'
self.filename_act = filename
self.resultcsv = open(filename, "w", encoding="iso-8859-15", newline='')
self.output = csv.writer(self.resultcsv, delimiter=';', quotechar='"', quoting=csv.QUOTE_ALL)
def export_2_csv(self, tablename):
#create and execute query sql
self.sql = u"SELECT column_name FROM all_tab_cols WHERE table_name ='"+tablename+"' AND column_name NOT IN ( 'REFERENCE_TUPLE_ID', 'INSERTDATE' ) order by column_id asc"
self.cdb.exec_one(self.sql)
self.preselect = self.cdb.cursor.fetchall()
self.preselect_str = str([' '.join(item) for item in self.preselect]).strip('[]').replace("'", "")
#using the previous query result to create the select
#to query target table without having the fixed cells like sysdate, sequences, etc.
try:
self.sql_select = u"select "+self.preselect_str+" from "+tablename+" order by "+self.preselect_str
except:
pass
else:
self.result = self.cdb.exec_one(self.sql_select)
for row in self.result:
self.output.writerow(row)
print("\nExport "+tablename+" table succcess")
self.cdb.db_disc()
self.resultcsv.close()anonimizált részlet az eredményfileból
"customer_1";"customer_network";"2018-07-30 00:00:00";"31.0";"random error message'";"000000000000001"a konvertált mező number típusú az oracleben.
Új hozzászólás Aktív témák
- Milyen monitort vegyek?
- Vicces képek
- Túra és kirándulás topic
- Otthoni hálózat és internet megosztás
- Samsung kuponkunyeráló
- SONY LCD és LED TV-k
- Android alkalmazások - szoftver kibeszélő topik
- Renault, Dacia topik
- AMD Navi Radeon™ RX 9xxx sorozat
- joghurt: Megtarthatod a jogsid?
- További aktív témák...
- ÁRCSÖKKENTÉS MacBook Pro 17" i7 2.6 GHz 8GB RAM 8 ciklus az akkuban!
- Xiaomi 13T Dobozzal Töltővel
- PC konfig /Ryzen 7 9800X3D, 32GB RAM, 1TB SSD/ akciós áron eladó!
- HIBÁTLAN iPhone 12 Mini 128GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS4166, 100% Akksi
- LG 83B4 - 83" OLED - 4K 120Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDMI 2.1 - PS5 és Xbox Ready
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs


