String[] columns = [NAME,CLASS_ID];
String[] columnsType=[VARCHAR2,INT];
sqlEndbBuffer.append("create or replace table "+tableN+"( ");
labela:
for(int i=0;i<columns.length;i++){
sqlEndbBuffer.append(columns[i]+" ");
for(int j=0;j<columnsType.length;j++){
sqlEndbBuffer.append(columnsType[j]);
break labela;
}
if (i == columnsType.length - 1) {
sqlEndbBuffer.append("");
} else {
sqlEndbBuffer.append(",");
}
}
sqlEndbBuffer.append(" )");
System.out.println("New SQL==="+sqlEndbBuffer.toString());
我要输出下面的语句,
New SQL===create or replace table dffdfdf( NAME VARCHAR2 ,CLASS_ID INT)
代码有点问题,帮看看,那个break好些没起作用?谢谢
String[] columnsType=[VARCHAR2,INT];
sqlEndbBuffer.append("create or replace table "+tableN+"( ");
labela:
for(int i=0;i<columns.length;i++){
sqlEndbBuffer.append(columns[i]+" ");
for(int j=0;j<columnsType.length;j++){
sqlEndbBuffer.append(columnsType[j]);
break labela;
}
if (i == columnsType.length - 1) {
sqlEndbBuffer.append("");
} else {
sqlEndbBuffer.append(",");
}
}
sqlEndbBuffer.append(" )");
System.out.println("New SQL==="+sqlEndbBuffer.toString());
我要输出下面的语句,
New SQL===create or replace table dffdfdf( NAME VARCHAR2 ,CLASS_ID INT)
代码有点问题,帮看看,那个break好些没起作用?谢谢
解决方案 »
- java连接mysqlserver问题
- 这些错误提示是什么意思
- 那位大大能幫我看看這個遊戲怎判斷輸羸!!
- web应用部署后连不上数据库的问题
- 为什么编译时为出现"package aa does not exist"呢?哪位大哥能告诉我
- 请问这个程序会有错误,请大家看一下,这到底错在哪里啊,急...
- [50分赠一人]关于JComboBox的Listener
- 为何connection中的ResultSet.HOLD_CURSORS_OVER_COMMIT无法使用
- JAVA的socket通讯有没有限制通信字节数啊?
- 请问这段代码有什么问题??????????????????
- 编写一个程序,读取键盘输入的26个英文字符,并按照逆序输出。
- 求解
String[] columnsType=[VARCHAR2,INT];
sqlEndbBuffer.append("create or replace table "+tableN+"( ");
labela:
for(int i=0;i<columns.length;i++){
sqlEndbBuffer.append(columns[i]+" "+columnsType[i]);
if (i == columns.length - 1) {
sqlEndbBuffer.append("");
} else {
sqlEndbBuffer.append(",");
}
}
sqlEndbBuffer.append(" )");
System.out.println("New SQL==="+sqlEndbBuffer.toString());
前提 两个数组长度一致
String[] columnsType={"VARCHAR2","INT"};
String tableN = null;
StringBuilder sqlEndbBuffer = new StringBuilder("create or replace table "+tableN+"( ");
int j=0;
labela:
for(int i=0;i<columns.length;i++){
sqlEndbBuffer.append(columns[i]+" ");
labelb:
for(int a=j;a<columnsType.length;a++){
sqlEndbBuffer.append(columnsType[a]);
j=a;
break labelb;
}
if (i == columnsType.length - 1) {
sqlEndbBuffer.append("");
} else {
sqlEndbBuffer.append(",");
}
}
sqlEndbBuffer.append(" )");
System.out.println("New SQL==="+sqlEndbBuffer.toString());
输出的语句有点问题?
create or replace table sdsdsd( NAME VARCHAR2,CLASS_ID VARCHAR2 )
labela:
for(int i=0;i<columns.length;i++){
sqlEndbBuffer.append(columns[i]+" ");
labelb:
for(int a=j;a<columnsType.length;a++){
sqlEndbBuffer.append(columnsType[a]);
j++;
break labelb;
}
if (i == columnsType.length - 1) {
sqlEndbBuffer.append("");
} else {
sqlEndbBuffer.append(",");
}
}
String[] columns = [NAME,CLASS_ID];
String[] columnsType=[VARCHAR2,INT];
sqlEndbBuffer.append("create or replace table "+tableN+"( ");
for(int i=0;i<columns.length;i++){
sqlEndbBuffer.append(columns[i]+" ");
for(int j=0;j<columnsType.length;j++){
sqlEndbBuffer.append(columnsType[j]);
break;
}
break;
if (i == columnsType.length - 1) {
sqlEndbBuffer.append("");
} else {
sqlEndbBuffer.append(",");
}
}
sqlEndbBuffer.append(" )");
System.out.println("New SQL==="+sqlEndbBuffer.toString());
continue 跳过本次循环 继续下次循环
你break加的不对
外层循环 开始 运行 sqlEndbBuffer.append(columns[i]+" ");
内层循环 开始 运行 sqlEndbBuffer.append(columnsType[j]);
然后break 标签 --->直接结束外层循环
逻辑不对 内层循环永远从0开始....