要加入的动态SQL语句为一个插入操作,要插入的表名为一变量,该如何写代码?

解决方案 »

  1.   

    Connection c = null;
            PreparedStatement ps = null;
            ResultSet rs = null;
            
            String sql = "select * form ?";
            ps = c.prepareStatement(sql);
            ps.setString(1, tableName);
            rs = ps.getResultSet();你试试吧,手头没有数据库,没法验证
    上面的代码里没写数据库连接的具体内容,你自己添加一下吧
      

  2.   

    动态SQL语句都貌似这样的 楼上的怎么一点都不象
         String s
         declare @TableName varchar(20) 
         set @TableName=s 
         exec('Insert ' + @TableName + '(columnList) values(' + 值列表 + ')')   我在往代码中加的时候(我用的是Jbuilderx和Access)老是对“@”抱错,搞不明白,需要申明什么东西还是要写点别的什么东西啊
      

  3.   

    SMALL_M()  你写的动态sql 我看没什么大问题, 过少了一个 into 啊  是insert into TableName(columNameList) value (columValueList);   我想是语法的问题!
      

  4.   

    在做这些操作之前都得建个表么 像 create **** 然后还有一个 as 之后才是declare****    
        来一个高手来指点指点吧
      

  5.   

    MS那个exec的参数应该是Nvarchar
    坐板凳的那位办法是可以的,但是这样的sql语句prepare是没有用处的。
    直接用MessageFormat.format()吧。