2014-03-27 27 views
0

失败我得到一个错误说: “将varchar转换为数据类型为int 当转换失败”当我尝试运行代码如下,但我已经将ASSIGNED_ID转换为int在PHP中?MS SQL转换的VARCHAR值转换为数据类型为int时和连接两个表

$row["ID"]数字很小它的2所以没有,或者类似的东西,我甚至添加了替换代码来删除任何空格,但它仍然不起作用。另外两个表具有相同的ID(数据类型:INT)

我也想知道我怎么可以加入两个表:使用T_ASSIGNEDT_EQ他们ID (int)他们都有它,它总是匹配

// SEND A SELECT QUERY TO MSSQL 
$query = mssql_query('SELECT ID FROM [TestT].[dbo].[T_ASSIGNED] WHERE [A_T_N]=\'$contact_lastname\''); 
$row = mssql_fetch_array($query); 

if (strlen($row["ID"])<>0) { 
// REMOVE ANY SPACES AND CONVERT ID TO INT 
$ASSIGNED_ID = intval(str_replace(" ", "", $row["ID"])); 
}else{ 
// IF NO ID IS FOUND MAKE ID BE ZERO 
$ASSIGNED_ID =intval('0'); 
}; 


// FREE THE QUERY RESULT 
mssql_free_result($query); 

// ECHO THE ID 
ECHO("TEST ID: ".$ASSIGNED_ID); 

// GET THE T NUMBER IN THE T_EQ LOCATION 
$query = mssql_query('SELECT EQ_T_N FROM [TestT].[dbo].[T_EQ] WHERE [ID]=\'$ASSIGNED_ID\''); 
$row = mssql_fetch_array($query); 

// ECHO THE EQ_T_N 
echo(">".$row["EQ_T_N"]."<"); 

// FREE THE QUERY RESULT 
mssql_free_result($query); 

感谢您的帮助。

回答

0

使用本

mssql_query('SELECT EQ_T_N FROM [TestT].[dbo].[T_EQ] WHERE [ID]="' . $ASSIGNED_ID .'"'); 

,您正在使用的$ASSIGNED_ID文中,该变量

不是值用单引号
相关问题