zoukankan      html  css  js  c++  java
  • 使用Access数据库总结

      一直使用Sql Server数据库,最近使用Access数据库做了一个练习,发现Access和Sql Server数据库的使用还是有些不一样的地方,在做练习的过程中,发现了一些问题,记录在下面。

    1.Access的数据库连接字符串。在Web.config文件中配置Access文件。

    <add key="Conn" value="Provider=Microsoft.Jet.Oledb.4.0;Data Source="/>
    <add key="Source" value="\App_Data\BBS.mdb"/>

    string conString = ConfigurationManager.AppSettings["Conn"]+HttpContext.Current.Server.MapPath("~")+ConfigurationManager.AppSettings["Source"];

    2.Access数据库对关键字敏感,对于Password这样的关键字,需要加括号进行查询,否则会报错。

    string queryString="insert into Users([UserName],[Password],[Gendor],[CreateTime]) values(@userName,@password,@gendor,@createTime)";

    3.对于日期类型的字段,需要先转换为字符串,再转化为日期。

    OleDbParameter par=new OleDbParameter("@createTime",Convert.ToDateTime(userInfo.CreateTime.ToString());

    4.Access数据库的参数有严格的顺序,如果参数的顺序不对的话,执行时不会报错,但是不会做插入或更新操作,对数据库不会产生任何影响。

    string updateString = "update Users set [UserName]=@userName,[Password]=@password,[Gendor]=@gendor where [ID]=@id";
    OleDbParameter[] pars ={
                        new OleDbParameter("@userName",userInfo.UserName),
                        new OleDbParameter("@password",userInfo.Password),
                        new OleDbParameter("@gendor",userInfo.Gendor),
                        new OleDbParameter("@id",userInfo.Id)};//如果将Id参数写在前面,执行不会成功

    对于上面定义参数的顺序必须和sql语句中的参数的顺序一致,否则更新不成功。

  • 相关阅读:
    20110603 本日跌的股票之后一段时间轻易不要碰
    一日三省
    火电排污新标准年内出台 撬动千亿脱硝市场
    20082011大股东增持专题
    收评:5月24日资金流向(摘自益盟)
    2011年中期业绩预增前20家公司
    2011大股东十大增持概念股全景图
    放不下期货
    从众是通向地狱最廉价的门票
    在ASP.NET中获取Get方式和Post方式提交的数据
  • 原文地址:https://www.cnblogs.com/hnsdwhl/p/1996015.html
Copyright © 2011-2022 走看看