小编a_h*_*ame的帖子

这个错误表示java.sql.SQLException:列索引超出范围,3> 1

String sess_user = session.getAttribute("userid").toString();
out.println(sess_user);
try{  
      String connectionURL = "jdbc:mysql://localhost:3306/books";// books is the database  
      Connection connection = null;
      Class.forName("com.mysql.jdbc.Driver");  
      connection = DriverManager.getConnection(connectionURL, "root", "bonnysingh");  

      Statement st = connection.createStatement();
      ResultSet rs=st.executeQuery("select email from signup where UserName = '" + sess_user +"'");
          while(rs.next()){
          userEmail = rs.getString(3);
          }
}
    catch(Exception ee){

        out.println(ee);
    }
out.println("Hello");
out.println(userEmail);
Run Code Online (Sandbox Code Playgroud)

userEmail的输出始终为null.我不知道这里有什么问题.但我认为while(rs.next())循环没有正确执行.谁能告诉我这是错误的?

jsp jdbc

-2
推荐指数
1
解决办法
7076
查看次数

HAVING子句或选择列表,以及要聚合的列是外部引用

这段代码

 SELECT * FROM MBR_MST WHERE MBR_JOIN_DT=MIN(MBR_JOIN_DT)
Run Code Online (Sandbox Code Playgroud)

显示以下错误:

消息147,级别15,状态1,行1聚合可能不会出现在WHERE子句中,除非它位于HAVING子句或选择列表中包含的子查询中,并且聚合的列是外部引用.

sql-server

-2
推荐指数
1
解决办法
9848
查看次数

它给我一个错误,说没有找到列

它给我一个错误,说没有找到列

import java.sql.*;
class jdbc_demo
{
    public static void main(String args[])
    {
        try
        {
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            Connection con=DriverManager.getConnection("jdbc:odbc:testc");
            //Class.forName("com.mysql.jdbc.Driver");
            //Connection con=DriverManager.getConnection("jdbc:mysql://localhost/db","root","abc");
            Statement st=con.createStatement();
            //st.execute("create table student(rollno int,name varchar(20),class varchar(10))");
            //st.execute("insert into student values(1,'Raj','Fy')");
            //st.execute("insert into student values(2,'Karan','Sy')");
            //st.execute("insert into student values(3,'sameer','Ty')");
            //st.execute("delete from student where name='xyza'");
            //st.executeUpdate("update student set name='xyza',class='Fy' where rollno=3");
            ResultSet rs=st.executeQuery("select*from student");
            ResultSetMetaData rsmd=rs.getMetaData();
            String c1=rsmd.getColumnName(1);
            String c2=rsmd.getColumnName(2);
            String c3=rsmd.getColumnName(3);
            System.out.println(c1+"\t"+c2+"\t"+c3);
            while(rs.next())
            {
                int r=rs.getInt("roll no");
                String n=rs.getString("name");
                String c=rs.getString(3);
                System.out.println(r+"\t"+n+"\t"+c);
            }
            con.close();
            System.out.println("Connection successfull");
        }
        catch(Exception e) …
Run Code Online (Sandbox Code Playgroud)

java mysql sql jdbc

-2
推荐指数
1
解决办法
65
查看次数

为什么sql server为1/2返回0?

在sql server中,当我选择1/2时,它返回0而不是0.5
为什么?

不应该所有分区都返回小数值吗?我可以设置一个设置让它正常划分吗?

我在c#中注意到了同样的
事情背后的逻辑是什么?

sql sql-server

-2
推荐指数
1
解决办法
1252
查看次数

SQL查询错误'缺少右括号'

当运行以下SQL查询时,我收到消息:

ORA-00907: missing right parenthesis
00907. 00000 -  "missing right parenthesis"
*Cause:    
*Action:
Error at Line: 32 Column: 18
Run Code Online (Sandbox Code Playgroud)

我最近在查询中添加了dv6.long_name toll_system_type,所以我知道它与之有关,因为之前工作正常.

这是SQL:

with t as (SELECT  DISTINCT dv6.long_name toll_system_type,  
  ti.tollsystem_id, 
  ti.toll_id,  
  pp.type,  
  dv.published_value,  
  nvl(dv.long_name, 'N/A') paypoint_type,  
  pp.map_id,  
  pp.map_id_entry,   
  nvl(dv2.long_name, 'N/A') tollpaymentmethod,  
  c.currency, 
  c.accuracy, 


  c.per_distance, 
  nvl(dv3.long_name, 'N/A') currencytype ,  
  COUNT (DISTINCT ti.toll_id) count_Toll_ID, 
  (COUNT (DISTINCT c.cost_id)) count_costid, 
  MIN(asr.subregion) AS region 
FROM  
  WEU_bw_.TC_TOLL_ID ti,   
  WEU_bw_.TC_PAYPOINT pp,  
  WEU_bw_.nt_domain_value dv,  
  WEU_bw_.tc_cost_paymethod cp,  
  WEU_bw_.nt_domain_value dv2,   
  WEU_bw_.tc_cost c,  
  WEU_bw_.nt_domain_value dv3, 
  WEU_bw_.nt_condition con, 
  WEU_bw_.nt_nav_strand ns, 
  WEU_bw_.nt_nav_link nl, …
Run Code Online (Sandbox Code Playgroud)

sql oracle

-2
推荐指数
1
解决办法
727
查看次数

MERGE 语句必须以分号 (;)

我正在使用此代码,但收到上面的错误消息。为什么会这样?我还为第二台 PC 创建了链接服务器,链接名称 = 192.168.1.101,用户名=xxxx 和密码=xxxx

WITH Source AS 
  ( SELECT id, name FROM Tamio.dbo.memberform WHERE active = 1 or active =0) 
MERGE INTO [192.168.1.101].Imatismos.dbo.customermaster AS target 
  USING Source ON target.id = source.id 
  WHEN MATCHED THEN UPDATE SET target.name = source.name 
  WHEN NOT MATCHED THEN INSERT (id, name) VALUES (source.id, source.name)
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server

-2
推荐指数
1
解决办法
2188
查看次数

删除最后一个用于STRING的COMMA

我有一个复选框,当选中字段时,字段将返回到html表.我似乎无法删除最后一个逗号.

    $faultTypesStr = '';
    if(!empty($faultTypeIds)){
    foreach($faultTypeIds as $faultTypeId){
        $faultTypeResult = FaultType::find()->where(['FaultTypeId' => $faultTypeId])->one();
        $faultTypesStr = $faultTypesStr.$faultTypeResult->FaultTypeName.', ';
    }}
Run Code Online (Sandbox Code Playgroud)

这是我在html表中的显示方式.SMTP

        <tr>
            <td class="fields"> <b>Type Of Fault</b></td>
            <td>'.$faultTypesStr.'</td>
        </tr>
Run Code Online (Sandbox Code Playgroud)

php comma

-2
推荐指数
1
解决办法
248
查看次数

添加具有默认值的列?

我在我的数据库表中添加了一列.它是一个简单的Char列,其值为"Y"或"N".

是否可以将列默认为"N"?如果是这样,怎么样?

当前添加列的脚本:

ALTER TABLE PERSON
ADD IS_ACTIVE VARCHAR2(1);
Run Code Online (Sandbox Code Playgroud)

sql oracle ddl column-defaults

-2
推荐指数
1
解决办法
4万
查看次数

将 %rowtype 数据插入另一个表 - plpgsql / Postgres

我有一个名为 empl 的表,还有另一个表 new_empl 与 empl 具有相同的列和定义。是否可以使用以下代码在 new_empl 中从 v_record 插入记录?

DECLARE
   v_record empl%rowtype;
BEGIN 
   Insert into new_empl values v_record;
END;
Run Code Online (Sandbox Code Playgroud)

empl 表中有太多列,我想避免列出它们。

postgresql plpgsql rowtype

-2
推荐指数
1
解决办法
3111
查看次数

我输入的数字是1,3,5,7,0结果应该是8但我只得到7,因为它是第四个元素,我做错了什么?

import java.util.ArrayList;
import java.util.Scanner;

public class ToisenJaKolmannenSumma {

    public static void main(String[] args) {
        Scanner lukija = new Scanner(System.in);

        ArrayList<Integer> numbers = new ArrayList<>();
        while (true) {
            int number = Integer.valueOf(lukija.nextLine());

            if (number == 0) {
                break;
            }

            numbers.add(number);
        }

        System.out.println(numbers.get(1+2));
    }
}
Run Code Online (Sandbox Code Playgroud)

java

-2
推荐指数
1
解决办法
68
查看次数

标签 统计

sql ×4

sql-server ×3

java ×2

jdbc ×2

oracle ×2

column-defaults ×1

comma ×1

ddl ×1

jsp ×1

mysql ×1

php ×1

plpgsql ×1

postgresql ×1

rowtype ×1

t-sql ×1