首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

处女有关问题

2012-04-19 
处女问题本人第一问...............使用access数据库,执行插入,想返回刚插入数据的ID,代码如下sqlstrins

处女问题
本人第一问...............
使用access数据库,执行插入,想返回刚插入数据的ID,代码如下
sqlstr   =   "insert   into   class(name,parentID,leverN,path)   values(@name,@parentID,@leverN,@path)   select   scope_identity() ";

OleDbParameter[]   paras   ={new   OleDbParameter( "@name ",OleDbType.VarChar),
                                                  new   OleDbParameter( "@parentID ",OleDbType.Integer),
                                                  new   OleDbParameter( "@leverN ",OleDbType.Integer),
                                                  new   OleDbParameter( "@path ",OleDbType.VarChar)};
paras[0].Value   =   newsclass.Name;
paras[1].Value   =   newsclass.ParentID;
paras[2].Value   =   newsclass.LeverN;
paras[3].Value   =   newsclass.Path;
int   id   =   DataHelp.AccessHelper.ExeSqlWithParaReturnID(sqlstr,   paras);//调用方法ExeSqlWithParaReturnID()看下面:
------------------------
  public   static   int   ExeSqlWithParaReturnID(string   sqlstr,   OleDbParameter[]   parms)
                {
                        int   id   =   0;
                        using   (OleDbConnection   conn   =   new   OleDbConnection(myconn))
                        {
                                OleDbCommand   cmd   =   conn.CreateCommand();
                                PrepareCmd(cmd,   parms);
                                cmd.CommandText   =   sqlstr;
                                conn.Open();
                                try
                                {
                                        id   =   Convert.ToInt32(cmd.ExecuteScalar());
                                }
                                catch   (OleDbException   e)   {   conn.Close();   throw   new   Exception(e.Message);   }//抛出异常,说   SQL   语句的结束位置缺少分号   (;)。
                                finally
                                {


                                        conn.Close();
                                }
                        }
                        return   id;
                }
各位高手,怎么解决啊.....

[解决办法]
跟踪看看你的SQL语句有没有问题啊
[解决办法]
你在select scope_identity()前加上一个分号;试试
[解决办法]
try catch去掉看到底是哪里错
[解决办法]
你这种SQL的语句我没用过,你把他放到查询分析器里执行下试试
[解决办法]
你用SQL Server 的查询分析器试试
[解决办法]
看不出哪错了.返回值直接select MAX一个最大值返回来吧。
[解决办法]
select scope_identity()
access不支持这个,插入后返回最大值来处理吧
[解决办法]
两条sql语句中以;隔开
[解决办法]
ACCESS有很多语句都容易出问题
[解决办法]
我还以为里面真有敏感的处女问题呢。
[解决办法]
2条语句分开写吧,Access貌似不支持这种格式
[解决办法]
select scope_identity()
access不支持这个,插入后返回最大值来处理吧

热点排行