php sql 字段名称,PHP&SQL Server – 字段名称被截断

以下是相关代码:

function connect(){

// DB credentials and info defined here....

$connection = odbc_connect("DRIVER={SQL Server Native Client 11.0}; Server=$server; Database=$db;", $loginname, $loginpass);

return $connection;

}

function odbc_fetch_results($stmt, &$results) {

$numrows = odbc_num_rows($stmt);

$row = odbc_fetch_array($stmt);

print_r($row); // Prints: Array ( [MEASUREMENT_UNI] => kg)

if($row){

$results = array ($row);

while( $row = odbc_fetch_array($stmt)){

array_push($results, $row);

}

}

return $numrows;

}

$sql = "select * from measurements where ID=$id";

$stmt = executeSQL($conn,$sql);

$nrows = odbc_fetch_results($stmt, $results);

odbc_free_result($stmt);

print_r($result[0]); // Prints: Array ( [0] => Array ( [MEASUREMENT_UNI] => kg) )

结果应该包含一个名为MEASUREMENT_UNIT的列(当我做一个print_r我可以验证)被截短到MEASUREMENT_UNI,只有15个字符。最后一个字母T被切断。

我也尝试使用SQL Server数据库上不同的表和不同列的查询作为测试,以确保它与我正在使用的特定表或列不是任何奇怪的设置。我验证了与不同的表/列相同的事情:当我运行如上所示的选择查询时,列名称被截断为最多15个字符。

我还尝试了一个select,它指定字段名称,如从ID = $ id而不是select *的测量中选择MEASUREMENT_UNIT,但也不能解决问题。

我在这里看过其他类似的帖子,但他们似乎都表示我应该能够获得至少30个字符,而不是我看到的15个字符的限制。

为什么列名称被截断为15个字符?

编辑:连接到MySQL服务器数据库似乎并没有导致同样的问题。来自MySQL表的DB列名称并没有被截断,这导致我相信这不是ODBC插件的问题。

$connection = odbc_connect("DRIVER={MySQL};Server=$server; Database=$db;", $loginname, $loginpass);

$sql = "select * from measurements where ID=$id";

$stmt = executeSQL($conn,$sql);

$nrows = odbc_fetch_results($stmt, $results);

odbc_free_result($stmt);

print_r($result[0]); // Prints CORRECTLY: Array ( [0] => Array ( [MEASUREMENT_UNIT] => kg) )

请注意,上述两个代码段都在同一个服务器上的相同文件中进行了相同的PHP ODBC安装。

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值