首页 新闻 会员 周边

webservice代码为何不能更新数据库?

0
悬赏园豆:30 [已解决问题] 解决于 2012-05-22 11:02
[WebMethod(Description = "接收日志记录")]
    
    public DataSet GetDataset(string SQL)
    {
        #region 将UserLog复制并改为带当前日期的MDB
        string NowDate = DateTime.Now.ToString("yyyy-MM-dd");
        string[] jie = NowDate.Split('-');
        string sourceFile = AppDomain.CurrentDomain.BaseDirectory + "\\App_Data\\UserLog.mdb";
        string targetFile = AppDomain.CurrentDomain.BaseDirectory + "\\App_Data\\UserLog" + jie[0] + jie[1] + jie[2] + ".mdb";
        if (File.Exists(targetFile) == false)
        {
            File.Copy(sourceFile, targetFile);
        }
        #endregion
        Connstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+targetFile+";Persist Security Info=False";
        OleDbConnection MyConn = new OleDbConnection(Connstr);
        try
        {
            MyConn.Open();
            OleDbDataAdapter MyCommand = new OleDbDataAdapter(SQL, MyConn);
            OleDbCommand Mycmd = new OleDbCommand(SQL, MyConn);
            Mycmd.ExecuteNonQuery();            
            DataSet ds = new DataSet();
            MyCommand.Fill(ds);
            MyConn.Close();
            return ds;
        }
        catch (Exception ex)
        {
            throw ex;
        }

    }

以上webservice代码为何不能更新数据库?我用的是winform端调用的websevice,SQL的值为"insert into user_log(类型,用户名) values ('" + lx + "','" + yhm + "') "; 

大宝81的主页 大宝81 | 初学一级 | 园豆:17
提问于:2012-05-21 11:43
< >
分享
最佳答案
0

用SQL Server Profiler监测一下最终执行的SQL语句是什么?

收获园豆:30
dudu | 高人七级 |园豆:31003 | 2012-05-21 14:31
其他回答(2)
0

有什么错误提示吗?

artwl | 园豆:16736 (专家六级) | 2012-05-21 11:55

没有提示,就是数据不能添加到webservice端的数据库中

支持(0) 反对(0) 大宝81 | 园豆:17 (初学一级) | 2012-05-21 12:03
string sqlText1 = "select * from user_log ";
            OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + textBoxRizhi.Text + ";Persist Security Info=False");
            OleDbDataAdapter oledb = new OleDbDataAdapter(sqlText1, conn);
            DataTable dtyuan = new DataTable();
            oledb.Fill(dtyuan);             

            string lx=dtyuan.Columns["类型"].ToString();
            string yhm = dtyuan.Columns["用户名"].ToString();   
            string sqlSer = "update user_log set 类型='" + lx + "',用户名='" + yhm + "'";
            DataSet ds = ts.GetDataset(sqlSer);
            oledb.Fill(ds);
            dataGridView1.DataSource=ds.Tables[0]; 

这是winform客户端的代码,这样写可以吗?运行了一下,webservice端的数据库不能更新.

支持(0) 反对(0) 大宝81 | 园豆:17 (初学一级) | 2012-05-21 16:23
0

你是否调到了webserivce?

webservice和数据库是没什么直接关系的。

太平洋的风 | 园豆:239 (菜鸟二级) | 2012-05-21 12:45
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册