Oracle Database üzerinde uzaktan çalıştırma için sunucuya Python 2.7 kullanarak bazı SQL deyimleri ve değişkenler için sözdizimi sözlükleri gönderiyorum.Python 2.7'de Oracle veritabanı için sorgunun dize temsili nasıl elde edilir
Son sorguyu günlüğe kaydetmek istiyorum, bu sunucuda çalıştırılacak, ancak son sorguyu bir dize olarak göstermenin bir yolunu bulamıyorum.
Hazırlanan deyimi örneği:
delete from my_table where col1=:date and col2=:string and col3=:num
Sözlük örnek: I (her ne SQL, bu benim verilerle ve infaz edilmesi) almak istiyorum ne
{'date':datetime.datetime(2016, 3, 25, 0, 0), 'string':'abc', 'num':42}
:
delete from my_table where col1=TO_DATE('25-03-2016 00:00','dd-mm-yyyy hh24:mi') and col2='abc' and col3=42
Hazırlanan ifadelerle Oracle'da "nihai SQL" yoktur - değerler istediğiniz gibi düz metin biçiminde değiştirilmez. Hazırlanan ifade, girdiğiniz parametrelerle gerçekleştirilir. – Mat
Cevabınız için teşekkür ederiz. Hala bu tür bir SQL sorgusu oluşturmanın bir yolu var mı? Sanırım birileri bunun için zaten bir kod yazmıştı. – Rabodaber
Neden bunu istiyorsun? Bu, idam edilen şey olmadığı için ve gerçekçi olması için alıntı yapmaktan endişelenmeniz gerektiğinden, anlamsız görünüyor. Sadece günlük kaydı ise ifadeyi ve parametreleri günlüğe kaydet, sorguyu doğru şekilde yeniden üretmenin tek yolu budur. – Mat