我很难理解dsn和连接字符串之间的区别。我的问题在于,DS可以为您提供数据库名称,数据库驱动程序,名称密码。 DSN无法使用这些详细信息建立与数据库的连接。我需要一个解释,因为这困扰了我很长时间 DSN具有在数据库和客户端之间建立连接的必要详细信息,不是吗?如果可以,为什么会有连接字符串?
请回答,并感谢您抽出宝贵时间来回答!
答案 0 :(得分:0)
DSN代表数据源名称,它作为用户或系统值保留在注册表中。如果存在,则可以仅通过名称来引用连接。这样做似乎很诱人,许多旧样本实际上使用并鼓励使用DSN。
但是,连接字符串是写为字符串的连接信息,不需要保存在注册表中。它可以即时构建,也可以构建并保存(可能是加密的)到开发人员选择的位置(甚至可能是另一个本地数据库)-(在某种意义上,开发人员发明了DSN)。它具有更大的灵活性,并且许多开发人员都喜欢DSN。