1樓:匿名使用者
會被當成字串的,所以是不行的,但sql可以即時拼湊起來的呀。
2樓:網友
testpublic void t() throws exception{
testt("emp");
世逗塵/testt();
string tablename
public void testt(string tablename) throws exception{
string url=":1521:orcl";
string user="scott";
string password="tiger";
string sql="select * from ?"
connection conn=, user, password);
preparedstatement ps=;
tablename);
這樣的效果會提示表指掘明無效搜禪。
用preparedstatement時,sql語句中的表名可以作為引數嗎
3樓:
這個基本上是不可以的。能作為引數的都是變數,而目前的標準sql和各廠商的擴充套件中(不管sql server, oracle, postgresql),都支援變數作為表名。故這是不可以的。
乙個變通的方法是使用動態sql, 但是那已經失去preparestatement的意義了。
preparedstatement insert into表名可以是變數麼
4樓:網友
想法不錯。 但是從preparedstatement的原理來說,是不可能的。 動態繫結不可能變化表名的。
因為資料要插入到同種結構的不同表中。
所以才希望可以這樣用批處理以提高效率。
5樓:馬克
把錯誤截圖附加上, 否則無法分析。
j**a裡能不能將表名作為引數寫到sql語句
6樓:匿名使用者
這樣可行嗎?你查詢後返回個記錄集的吧?
mysql中能用preparedstatement建立表嗎
7樓:網友
建立mysql資料表需要以下資訊:表名 表欄位名 定義每個表欄位 語法:以下為建立mysql資料表的sql
preparedstatement在sql語句中間的?怎麼不能這樣用,
8樓:鬼谷子教主
你是要給pstmt中的引數(uid)賦值,為何用sql啊?
那不是成了:
select *
from tb_location1
where 1
and uid = select * from tb_location1 where 1 and uid = ? order by id desc limit 0,1
order by id desc limit 0,1