如何解决Psycopg2 / PostgreSQL 中的硬编码和冗余代码?
我目前正在学习数据工程课程,对数据建模部分提供的示例和练习感到有点傻眼:
一切都是硬编码的,“复制粘贴”统治着这个地方......
这是一个简单的例子:
try:
cur.execute("INSERT INTO music_store2 (transaction_id,customer_name,cashier_name,year,albums_purchased) \
VALUES (%s,%s,%s)",\
(1,"Amanda","Sam",2000,"Rubber Soul"))
except psycopg2.Error as e:
print("Error: Inserting Rows")
print (e)
try:
cur.execute("INSERT INTO music_store2 (transaction_id,"Let it Be"))
except psycopg2.Error as e:
print("Error: Inserting Rows")
print (e)
try:
cur.execute("INSERT INTO music_store2 (transaction_id,\
(2,"Toby","My Generation"))
except psycopg2.Error as e:
print("Error: Inserting Rows")
print (e)
try:
cur.execute("INSERT INTO music_store2 (transaction_id,\
(3,"Max","Bob",2018,"Help!"))
except psycopg2.Error as e:
print("Error: Inserting Rows")
print (e)
try:
cur.execute("INSERT INTO music_store2 (transaction_id,"Meet the Beatles"))
except psycopg2.Error as e:
print("Error: Inserting Rows")
print (e)
我必须承认,乍一看,我不禁认为这真的很糟糕,很难维护代码,而使用变量和循环会更好。
然而,想起我有时会成为一个无知和傲慢的傻瓜,我退后一步,不要急于下结论。
难道这真的是标准做法吗?
所有这些硬编码和复制粘贴在这里有充分的理由吗?
非常感谢您的评论
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。