2016-04-11 10 views
0

Belirli bir tarihten sonra oluşturulan satırları almak için yazdığım python kodu İşte.python'da SQL created_date nasıl kullanılır

import csv 
import os 
import cx_Oracle 
con = cx_Oracle.connect('{0}/{1}@{2}'.format('abcd', 'efgh','ijkl')) 
cur=con.cursor() 
cur.execute("select * from dbname.table_name where created_date > to_date('06-APR-16','DD-MON-YY')") 
row = cur.fetchall() 
fp = open('eggs.csv', 'w') 
myFile = csv.writer(fp) 
myFile.writerows(row) 
fp.close() 
cur.close() 

Burada bahsettiğimden başka bir şey ithal etmem gerekiyor mu?

Ama Yani herkes hata burada ne olduğunu bana söyleyebilir

cx_Oracle.DatabaseError: ORA-00904: "CREATED_DATE": invalid identifier gibi bir hata alıyorum?

cevap

0

Hatanız SQL sorgunuzda görünüyor.

Bunun yanlışlıkla dayalı sorguluyorsunuz tabloda "CREATED_DATE" sütunu olarak görünmüyor: uyarınca, "CREATED_DATE": invalid identifier


Ancak, aynı zamanda biraz farklı da Python yazmalı PEP 0008 -- Style Guide for Python Code ve ortak Python kuralları. Örneğin

: hayır satır gibi olduğunda

import csv 
import cx_Oracle 

# connect (cleaned your formatting a bit, I assume you use real data) 
con = cx_Oracle.connect('{0}/{1}@{2}'.format('abcd', 'efgh', 'ijkl')) 

# execute (using the `with` context switch) 
with con.cursor() as cur: 
    cur.execute("select * from dbname.table_name where created_date > to_date('06-APR-16','DD-MON-YY')") 
    row = cur.fetchall() 

# write (using the `with` context switch) also csv module should be used with `rb` and `wb` modes. 
with open('eggs.csv', 'wb') as fp: 
    csv.writer(fp).writerows(row) 
+0

Nasıl uygulamak? Oracle'a satır eklendiğinde izleyen herhangi bir değişken var mı? –

+0

1. Bu, sorunuzu cevapladığında ortaya çıkar ve eğer istersen cevabımı kabul edebilirsin. 2. Başka sorularınız varsa, başka bir soru sormaktan çekinmeyin. 3. Senin sorunun senin SQL ile değil Python ile olduğu gibi görünüyor. Oracle kılavuzlarına başvurmalısınız. –

+0

created_date veya last_modified'i aynı amaçla kullanabileceğimiz bir yer gördüm. Masamda bir sütun olmadığını biliyorum. –

İlgili konular