Форум сайта python.su
Доброго времени суток.
Подскажите.
Есть, очень много строк, что-то вроде:
cr.execute(“select name from spr_module where state = ‘ok’”)
Как поменять таблицу выборки, сделать, чтобы выборка проводилась не с таблицы “spr_module”, а, допустим, с “one_spr_module”, не меняя самой строки приведенной выше?
Есть что-то вроде алиасов, чтобы можно было присвоить в начале программы таблице “old_spr_module” алиас “spr_module” и не менять тысячи строк исходного кода?..
Ситуация такая.
Необходимо разделить в БД таблицы на несколько вариантов(копий):
было Табл_1, Табл_2…. Табл_N ,
стало Табл_1а, Табл_1б, Табл_1в, Табл_2а, Табл_2б, Табл_2в… и т.д.,
Как это сделать без серьезных изменений в исходных кодах и перебираний всех строк запросов?
Офлайн
Есть такая штука - View называется.
Еще как вариант есть очень клевая технология - Find&Replace. =)
Офлайн
To shiza:
К сожалению, нужно запись проводить в таблицы, не только выборки. Есть байт код без исходников(мало, но есть), а что вних - не известно, может тоже, SQL выборки-изменения…
Офлайн
UnnamedНапример, так:
cr.execute(“select name from spr_module where state = ‘ok’”)
Как поменять таблицу выборки, сделать, чтобы выборка проводилась не с таблицы “spr_module”, а, допустим, с “one_spr_module”, не меняя самой строки приведенной выше?
Офлайн
balu, только
…
cr.execute(“select name from %s where state = ‘ok’”, (table, ))
так как бы безопасней и “по правилам” ;)
Офлайн
kovleonХм. В байт-коде SQL запросы должны быть в виде строк.
To shiza:
К сожалению, нужно запись проводить в таблицы, не только выборки. Есть байт код без исходников(мало, но есть), а что вних - не известно, может тоже, SQL выборки-изменения…
Офлайн