Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 对于独立的、不同的数据库操作,是否应该使用相同的对象?_Python_Python 2.7 - Fatal编程技术网

Python 对于独立的、不同的数据库操作,是否应该使用相同的对象?

Python 对于独立的、不同的数据库操作,是否应该使用相同的对象?,python,python-2.7,Python,Python 2.7,参考object1,对于一个频繁执行数据库操作的类,只创建一个对象(如self.object1)并在多个方法中重用它(如在Insert_into_Table()、update_the_Table())而不删除它是一个好主意吗? 或者,我应该删除之前创建的对象,并在每次需要时创建一个新对象,调用\uuuu del\uuuu。有一个非常低级别的对象,用于访问数据库,并反复重复使用。事实上,我认为你最好有一个单独的数据库访问,每个会话只创建一次。这里唯一的问题是,您是否应该在DB对象和业务逻辑之间有层

参考
object1
,对于一个频繁执行数据库操作的类,只创建一个对象(如self.object1)并在多个方法中重用它(如在Insert_into_Table()、update_the_Table())而不删除它是一个好主意吗?

或者,我应该删除之前创建的对象,并在每次需要时创建一个新对象,调用
\uuuu del\uuuu

有一个非常低级别的对象,用于访问数据库,并反复重复使用。事实上,我认为你最好有一个单独的数据库访问,每个会话只创建一次。这里唯一的问题是,您是否应该在DB对象和业务逻辑之间有层(答案可能是肯定的)

有一个非常低级的对象是合理的,该对象用于访问数据库,并被反复使用。事实上,我认为你最好有一个单独的数据库访问,每个会话只创建一次。这里唯一的问题是,您是否应该在DB对象和业务逻辑之间有层(答案可能是肯定的)

视情况而定。调用
\uuuu del\uuuuu
可能并不能实现您所期望的(而且您永远也不会显式地调用它)@juanpa.arrivillaga:Class A是一个dbms操作(如选择、插入)类。而且,该应用程序是Tkinter应用程序,它将与一个集中式DBMS进行通信,供大约30个人在自己的pc上使用。我不熟悉Tkinter之类的东西,但我想说,你需要添加更多细节,如果不确切知道你的方法应该做什么以及有什么副作用(需要或不需要),就无法说出他们可能有…@Julien:有,看看更新的代码。这要看情况而定。调用
\uuuu del\uuuuu
可能并不能实现您所期望的(而且您永远也不会显式地调用它)@juanpa.arrivillaga:Class A是一个dbms操作(如选择、插入)类。而且,该应用程序是Tkinter应用程序,它将与一个集中式DBMS进行通信,供大约30个人在自己的pc上使用。我不熟悉Tkinter之类的东西,但我想说,你需要添加更多细节,如果不确切知道你的方法应该做什么以及有什么副作用(需要或不需要),就无法说出他们可能有…@Julien:有,请看更新的代码。非常感谢。你能告诉我在哪里可以找到这些细节吗?非常感谢。你能告诉我在哪里可以找到这些细节吗。
class DB:
  def insert(self, data):
      #connect to database and insert the data into Table.

  def update(self, data):
      #connect to database and update the Table.

class EditInfo:
  def Insert_into_Table(self, data):
      self.object1 = DB() #created the object here
      self.object1.insert()

  def update_the_Table(self, data):
      self.object1.update() #Reusing the same object created before