问题描述
- C++多次操作数据库,打开数据库的操作只想执行一次应该放在什么位置
-
小型学生管理系统,有一个类Database专门用于操作数据库,构造函数里有打开数据库的操作,增删改查操作四个类里都建了Database类对象,程序运行时数据库会打开多次,请问打开数据库的操作只想执行一次的话,应该放在什么位置
解决方案
在c++ builder里一般open是用来执行查询,查询几次就要open几次
解决方案二:
其实你走了弯路, 这个不是需要你思考的东西。
数据库连接的打开, 固然需要时间, 但你不关闭, 资源一直被占用, 也是很大的消耗, 如果程序中间有异常怎么办?
数据库连接的消耗, .net已经思虑到了, 只要是同一个连接串, 默认为同一个连接池,连接用完后一般并不会马上销毁,只是放回连接池。
你要做的, 就是打开和关闭要配对, 打开了的连接要及时关闭, 不要觉得麻烦。
解决方案三:
类Database专门用于操作数据库,在此类的构造函数中打开、连接数据库,析构时关闭数据库。或者,不放在 Database类的构造与析构函数中,但可以放在程序初始化与结束时。
增删改查操作四个类里,不再独立定义 Database类对象,而是采用一个全局的 Database类对象代替之。
解决方案四:
数据库打开Open以后,保存一个成员变量,就都用这一个对象去操作数据库
时间: 2025-01-01 15:30:15