2020-08-31

linux 上 單引號Single Quotes 中的文字要使用 單引號時 Single Quotes ,要用 ' \ ' ' 來實現

 linux 上 單引號Single Quotes 中的文字要使用 單引號時 Single Quotes ,要用 ' \ ' '  來實現

例如 要 echo  出 don't do it

不能使用 

echo 'don\'t do it' 

要使用

echo 'don'\''t do it'

其它參考

$ echo 'abc'\''abc'

abc'abc

$ echo "abc"\""abc" 

abc"abc 

$ echo 'abc'"'"'abc'

abc'abc

$ echo "abc"'"'"abc"

abc"abc

2020-04-16

ubuntu 18.4 上使用 php7 透過 FreeTDS , ODBC 連 mssql 2000

1.安裝 FreeTDS ,ODBC
sudo apt-get install freetds-bin freetds-common tdsodbc odbcinst unixodbc unixodbc-dev
sudo mv /etc/odbcinst.ini /etc/odbcinst.ini.bak
sudo cp /usr/share/tdsodbc/odbcinst.ini /etc/
2.測試 是否可連 mssql
tsql -H my_server_host -p 1433 -U my_user -P my_password -D my_database
3.安裝 php7.x odbc 如 7.2 時
sudo apt-get install php7.2-odbc
4. php 上測試
try {

//connection params
$dbCon = new PDO('odbc:Driver=FreeTDS; Server=my_server_host; Port=1433; Database=my_database; TDS_Version=8.0; ClientCharset=UTF-8', 'my_login', 'my_pass');

//test query
$result = $dbCon->query('SELECT TOP 10 * FROM dbo.my_table');

//show the results
foreach ($result as $row)
{
print_r( $row );
}

//close the connection
$dbCon = null;

} catch (PDOException $e) {

//show exception
echo $e->getMessage();
}
其它問題: 如有 SQLSTATE[01000] SQLDriverConnect: 0 [unixODBC][Driver Manager]Can't open cursor lib '/etc/libodbccr.so' : file not found
cd /usr/lib/x86_64-linux-gnu
sudo ln -s libodbccr.so.2 libodbccr.so