• Access增删改查 (持续更新中)


      

        关于Access数据库(2003)的增删改查,其实和Sql大体差不多,但是还有很多不一样的地方。下面列几个容易犯的错误:

       1、Access数据库的位置:

     conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|/SingleArticle.mdb;Jet OLEDB:Database Password=");

                                                                                                                        ↓

                                                                                                                        ↓

                                                                     这个是数据库的相对路径,要建立个App_Data的文件夹,放在项目的根目录下,专门用来存放Access数据库

       2、对于Access的查询语句

     public SingleArticleData Xiangxi() //查询Access数据库的内容
        {
            SingleArticleData data = null;
            conn.Open();
            cmd.CommandText = "Select * from SingleArticles ";
            OleDbDataReader dr = cmd.ExecuteReader();
            data = new SingleArticleData();
        if(dr.HasRows)
        {   
            dr.Read();
            data.Name = dr["Name"].ToString();
            data.ZhengWen = dr["Zhengwen"].ToString();
            data.Times =Convert.ToDateTime( dr["Times"]);
        }
        conn.Close();
        return data;
        }

    和SQL的一样。

      3、对于Access数据库中时间类型的修改

      

      public void Update(int code,string name,string zhengwen,DateTime Times)
        {
            conn.Open();
            cmd.CommandText = "Update SingleArticles set Name=@name ,ZhengWen=@zhengwen, Times=#"+Times+"# where Code="+code+"";
            cmd.Parameters.Clear();
            cmd.Parameters.Add("@name",name);
            cmd.Parameters.Add("@zhengwen",zhengwen);
        
            cmd.ExecuteNonQuery();
            conn.Close();
        }

          这里 的时间类型 一定要加上##,不然会提示 与数据库的类型不符合!!

    4、对于Access数据库中时间类型的增加,以及自动编号的增加。     

     在Access中,自增长类型要设成"自动编号"的,但是在增加语句中,也要加上这个编号,而且是string类型的,这个编号要通过先查询Access表中编号最大的那条数据,然后新增加的编号便是这个编号+1就行了 ,最好别用占位符!!!  还有时间Insert语句中 不用加'',要加##。

     public void Insert(string code,string name,string zhengwen,DateTime time,string type,string zuozhe) //增加
        { 
          conn.Open();
        
          cmd.CommandText = "Insert into Articles values('"+code+"','"+name+"','"+zhengwen+"',#"+time+"#,'"+type+"','"+zuozhe+"')";;
          cmd.ExecuteNonQuery();
          conn.Close();
        }
     protected void Button2_Click(object sender, EventArgs e)  //获取数据后发布新闻
        {
            string name = TextBox1.Text;
            string zhengwen = WebEditor1.Text;
            string type = TextBox2.Text;
            string zuozhe = TextBox3.Text;
            int code=new ArticlesBF().SelectLast().Code;
            int code1 = code + 1;
            new ArticlesBF().Insert(code1.ToString(),name,zhengwen,DateTime.Now,type,zuozhe);
            Response.Redirect("Articles.aspx");
        }
  • 相关阅读:
    Android ViewTreeObserver的常用技巧
    android 三种动画详解
    mysql binlog2sql闪回数据
    linux 系统时间与硬件时间与中国标准时间
    mysql 远程备份binlog日志
    关于ActivityThread类的深入学习
    android 全屏dialog dialogfragment
    mysql show slave 与 从库复制新的从库
    Android 软键盘的全面解析,让你不再怕控件被遮盖
    Android 隐藏输入法键盘
  • 原文地址:https://www.cnblogs.com/lk-kk/p/4686312.html
Copyright © 2020-2023  润新知