try:string strSql="select ID=identity(int,1,1),ltrim(rtrim(convert(char(8),JS1)))+'-'+ltrim(rtrim(convert(char(8),JS2))) jd,convert(char(8),hd) hd,zfz,tzxs,bfbz,jsjl,cjjl into dbo.t4 from "+tablename+" where JH='"+strjh+"'";
      string str="select * from dbo.t4";
      string strDel="drop table dbo.t4";
      m_db=DbConnector.CreateInstance();
      if(m_db.ConnectToOracle())
      {
bool bflag1=m_db.ExecCommand(strSql);
m_ds=m_db.QueryValue(str);
      }
      m_db.Release();
      m_db=DbConnector.CreateInstance();
      if(m_db.ConnectToOracle())
      {
         m_db.ExecCommandSql(strDel);
      }

解决方案 »

  1.   

    to: vivianfdlpw() 
    我在t4前加入了dbo.t4
    还是不行。不是临时表~是永久的。我用sa登陆
      

  2.   

    在string str="select * from dbo.t4";这里和string strDel="drop table dbo.t4";这里分别加断点,用查询分析器查看一下表是否存在
      

  3.   

    存在的~~是存在的。。
    前面两条sql执行都没有问题。
      

  4.   

    估计跟你的DbConnector.CreateInstance()的权限有关,我用sqlcommand是没有问题的,所以不是sql问题,应该是权限问题。打sp3了吗?
    -----------------------
    string tablename="t3";
    string strjh="1";
    string strSql="select ID=identity(int,1,1),ltrim(rtrim(convert(char(8),JS1)))+'-'+ltrim(rtrim(convert(char(8),JS2))) jd,convert(char(8),hd) hd,zfz,tzxs,bfbz,jsjl,cjjl into t4 from "+tablename+" where JH='"+strjh+"'";
    string str="select * from t4";
    string strDel="drop table t4";
    string ConnectionString=System.Configuration .ConfigurationSettings .AppSettings["ConnectionString"];
    SqlConnection conn=new SqlConnection(ConnectionString);

    //
    SqlCommand sqlcom=new SqlCommand(strSql);
    sqlcom.Connection =conn;
    conn.Open();
    sqlcom.ExecuteNonQuery();
    //
    SqlDataAdapter sda =new SqlDataAdapter(str,ConnectionString);
    DataSet ds=new DataSet();
    sda.Fill(ds);
    //
    SqlCommand sqldel=new SqlCommand(strDel);
    sqldel.Connection =conn;
    sqldel.ExecuteNonQuery();
    //m_db=DbConnector.CreateInstance();
    //if(m_db.ConnectToOracle())
    //{
    // bool bflag1=m_db.ExecCommand(strSql);
    // m_ds=m_db.QueryValue(str);
    //}
    //m_db.Release();
    //m_db=DbConnector.CreateInstance();
    //if(m_db.ConnectToOracle())
    //{
    // m_db.ExecCommandSql(strDel);
    //}