C#连接数据库特殊方法两则

 我来答
大沈他次苹0B
2022-10-29 · TA获得超过7271个赞
知道大有可为答主
回答量:3059
采纳率:100%
帮助的人:171万
展开全部

  用过VS 和VS 的开发人员肯定知道在安装这个IDE的时候会自动安装了一个精简版的SQL数据库服务SqlExpress 这个数据库系统少了最重要的企业管理器 也就是说不能用它来建数据表和一些可视化操作 如果碰到项目中要用到SQL数据库的时候也不能附加到数据库服务里面去 导致项目在连接数据库的时候会提示找不到数据库文件而读取失败 那么 这个精简版的SQL数据库服务是不是意味着一无是处呢?

  其实未必 只要我们在连接数据库的时候利用好它就可以了~~

  在这里我介绍两种C#中连接数据库的方法 一种需要附加数据库 一种则不要 只需要安装这个精简版的SQL就可以了…

  方法一

  连接代码

string strconn;strconn = Data Source=(local); ;strconn += Initial Catalog=student; ;strconn += User ID=sa; ;strconn += Password=; ; SqlConnection con = new SqlConnection(strconn);//通过用户名和密码连接数据库//SqlConnection con = new SqlConnection( Data Source=(local);Initial Catalog=library;Integrated Security=True ); //通过系统用户验证连接数据库con Open();SqlDataAdapter thisadapter = new SqlDataAdapter( select * from reader where 条形码= + txm + con);SqlCommandBuilder thi *** uilder = new SqlCommandBuilder(thisadapter);DataSet thisdataset = new DataSet();thisadapter Fill(thisdataset reader );…… //接下去就是对数据的操作了

   这种方法必须要附加数据库文件才可以访问…

  优点是可以通过企业管理器直接对数据库进行可视化操作 比如对记录进行全权修改…万一碰到数据有错误 在系统里面不好修改的时候可以进行强制维护 同时 如果后期更新系统 增加新的数据库需求 比如增加字段就可以在里面操作

  当然这也算是缺点 乱改数据可能导致破坏数据库的一些规则和数据一致性 严重的话会导致灾难性的数据崩溃

  方法二

  连接代码

SqlConnectionStringBuilder connectstringbuilder = new SqlConnectionStringBuilder();connectstringbuilder DataSource = @ (local)\sqlexpress ;//指定数据库服务connectstringbuilder AttachDBFilename=@ |DataDirectory|\data\library mdf ;//数据库文件 采用相对地址的方式来指定 注意格式connectstringbuilder IntegratedSecurity = true;   connectstringbuilder UserInstance = true;SqlConnection thisconnection =new SqlConnection(connectstringbuilder ConnectionString);SqlDataAdapter thisadapter =new SqlDataAdapter( select * from reader where 条形码= +txm + thisconnection);DataSet dt = new DataSet();thisadapter Fill(dt info );……//接下去就是对数据的操作了

   这个方法最大的有点就是允许我们不用安装 M(MSSQL )或者 G(MSSQL )的数据库系统 只需要安装SQL精简版的数据库服务( M左右)就可以了 而且不用去附加数据库…

  但是这种优点也带来致命的缺点 就是第一次连接数据库的时候会有点慢 这不要紧 但它会重新格式数据库文件的一些结构 导致一些数据格式发生变化 因此连接之后这样的数据库文件是不能再次被附加到数据库系统中的(会报错) 也就是说后期如果要修改数据库 比如增加字段和表等是不太可能实现的

  不过这也在一定的程度上带来了安全性

  以上这两种数据库连接方式各有千秋 是否要使用就看你的系统实际应用需求了…

lishixinzhi/Article/program/net/201311/15426

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式