SQL サーバーの OPENQUERY 関数を使用して、Mysql サーバーからデータを取得しようとしています。クエリを実行して、mysql サーバーにあるレコードをカウントすると、問題なく値が取得されます
-this query works and it return the total records found
SELECT count(*) AS total FROM OPENQUERY(LinkedServer, 'SELECT * FROM mydb_name.users')
しかし、私がするとき
SELECT login_user FROM OPENQUERY(LinkedServer, 'SELECT * FROM mydb_name.users')
このエラーが発生します
Msg 7347, Level 16, State 1, Line 1
OLE DB provider 'MSDASQL' for linked server 'LinkedServer' returned data that does not match expected data length for column '[MSDASQL].login_user'. The (maximum) expected data length is 60, while the returned data length is 16.
試してみましたがうまくいきませんでした
SELECT CONVERT(CHAR(60), login_user) AS name FROM OPENQUERY(LASWEB, 'SELECT * FROM mydb_name.users')
データ型の問題だと思いますが、どうすれば回避できますか? 必要なデータを取得するにはどうすればよいですか?
ありがとう