.net中 SqlConnection的创建

来源:百度知道 编辑:UC知道 时间:2024/05/31 13:59:22
我在做MyQQ项目,其中我用到了 DBHelp.Connection 但是连接数据库的时候
有时就会报错 说数据库已经打开 因为定时扫描的控件 每0.5秒打开扫描1次数据库,期间有别的动作要打开数据库的时候就会报错, 但是定时扫描的控件不用DBHelp.Connection,全部重新声明的话就没这个问题, SqlConnection在NEW的时候 是以什么原理来新建的啊
我用的是 visual studio 2005 我知道关闭, 只是想问一下为什么 用全局变量连接数据库 不能同时打开 但是各自打开的数据库不冲突

我确实是因为 "因为全局共享conncetion。" 全部分开写的话 没有什么坏处吗 有的人说比较吃内存?
我现在用1全局共享的conncetion 可以不报错了 如果2台机器 都用了我写的这个程序 去连接同一个数据库会报错吗 (用全局共享的conncetion 我知道每次new 一个的话不报错)

private SqlConnection myConn;

每次使用都 myConn = new 连接 ,不会出错,因为是分配的新的connection;

若 private static SqlConnection myConn;

则无法并发,出现你所说的问题,因为全局共享conncetion。

在任何程序中,请不要使用 private static SqlConnection myConn

用的是ACCESS吗?记得使用完后关闭连接的好习惯,试试在连接字符串中添加
Persist Security Info=false;试试

扫描数据库的时候,期间有别的动作打开数据库。。。
你是不是定义的都是同一个SqlConnection对象?
不是很清楚你所说的,能再具体点就好了