2011-01-28 14 views
5

this SO question ardından piton ham sql, Python şu ham sql komutları kullanarak belirli django uygulaması ile ilgili tüm tabloları "kesik", çalışıyorum karıştırır :% sorgu

C:\dev\my_project>my_script.py 
Traceback (most recent call last): 
    File "C:\dev\my_project\my_script.py", line 295, in <module> 
    cursor.execute(r"select concat('truncate table ',table_schema,'.',table_name,';') as sql_stmt from information_schema.tables where table_schema = 'my_db' and table_type = 'base table' AND table_name LIKE 'some_prefix%'") 
    File "C:\Python26\lib\site-packages\django\db\backends\util.py", line 18, in execute 
    sql = self.db.ops.last_executed_query(self.cursor, sql, params) 
    File "C:\Python26\lib\site-packages\django\db\backends\__init__.py", line 216, in last_executed_query 
    return smart_unicode(sql) % u_params 
TypeError: not enough arguments for format string 

LIKE yapım belada % mı? Bunu nasıl çözebilirim?

cevap

8

%% Denediniz mi? Bu, Python dizgisi biçimlendirmesinde% bir alıntı yapar.

+2

Eklenen örnekler/eğlence için, bunun ne yaptığını tahmin edin: '%%%% s %% s% s'% 'üç'% 'iki'% 'bir' –

+0

Çok basit ... :) – Jonathan