PowerBuilder中使用JDBC连接MYSQL无法使用COUNT(*)MAX()函数的处理_MySQL

WBOY
풀어 주다: 2016-06-01 11:52:31
원래의
1435명이 탐색했습니다.

PowerBuilder中使用JDBC连接MYSQL

遇到的错误:

 

 long ll_count 
// Profile mysql
SQLCA.DBMS = "JDBC"
SQLCA.LogPass = "123"
SQLCA.LogId = "root"
SQLCA.AutoCommit = False
SQLCA.DBParm = "Driver='com.mysql.jdbc.Driver',URL='jdbc:mysql://localhost:3306/his' " 
connect using sqlca; 

select count(*) into :ll_count from yk_cddz;
로그인 후 복사

很简单的一条语句,竟然报错了!

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '*) from yk_cddz' at line 1

找了百度没有人写个贴子,于是查看MYSQL的使用手册,终于在

Function Name Parsing and Resolution小节有说明


如果是用C语言API来操作,可以指定CLIENT_IGNORE_SPACE 参数,ODBC驱动中也有Ignore Space Afrer Function Names 这个选项,但是官方的JDBC中的没有这个选项。所以,要使用MYSQ 语句来设置。

Powerbuilder中的设置

 <span style="font-size:18px;">string sql  
 long ll_count
 sql = "SET sql_mode = &#39;IGNORE_SPACE&#39; "  
EXECUTE IMMEDIATE :sql ; 
select count(*) into :ll_count from yk_cddz;</span>
로그인 후 복사

这样操作就不会有错误了,可以得到正确结果了,在这里写个贴子,希望有同样问题的朋友可以借鉴。

 

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿