問題タブ [freetds]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Pymssql、MSSQL2008 から Unicode データを読み取るために使用する方法
ubuntu-10.10でpymssql-1.0.2とfreetds-0.82.7を使用しました。また、windows-7 に mssql2008 サーバーがあります。pymssql と freetds を使用して、ubuntu から mssql に接続できます。しかし、mssql データベースから Unicode データを取得できません。データベースの照合順序は Cyrillic_General_CI_AS です。
私の freetds.conf ファイルは次のようになります。
私のコードは次のようになります。
期待される結果: "Өмнөговь аймаг" 実際の結果: "ªìíºãîâü àéìàã"
「UTF-8」文字セットを使用すると、fetchall() 呼び出しでエラーがスローされ、utf8 がコード ページの範囲外のデータを読み取れないことを意味します。
mssqlデータベースに保存されているUnicodeデータを取得するには? 手をあげてください!
よろしく、オーギル
php - レンダリングの代わりに PHP ページをダウンロードする成功した結果で odbc_exec を使用すると、
私は非常に奇妙な問題を抱えています。FreeTDS で unixODBC を使用して MSSQL サーバーに接続しています。
PHP をレンダリングする代わりに、odbc_exec を使用して有効なクエリを生成する SQL コマンドを実行すると、php ファイルをダウンロードするように求めるプロンプトが表示されます。
不適切な形式のステートメントで意図的に SQL を中断すると、ページは正常にレンダリングされ、エラー ステートメントが表示されます。
コマンド ライン isql を使用してデータベースに接続し、クエリを実行すると、コマンド ライン レベルで結果を取得できます。
CentOS 5.5 64ビット
MSSQL 2005 SP3
unixODBC 2.3.0
フリーTDS 0.82
PHP5.3.5
bash - Bash スクリプトは、FreeTDS を使用して接続し、対話しますが、終了しません (ハングするだけです)
スクリプトで FreeTDS を使用して、レコードを MSSQL データベースに挿入しています。USE
およびコマンドはINSERT
機能しますが、exit
コマンドは機能せず、ハングします。リダイレクトしようとしましstdout
たが、cat
文句を言います。それ以外の場合は、 Expectを使用すると思います。うーん。ありがとう。
echo -e "USE db\nGO\nINSERT INTO db_table (id, data, meta)\nVALUES (1, 'data', 'meta')\nGO\nexit" > tempfile
cat tempfile - | tsql -H 10.10.10.10 -p 1433 -U user -P pass
python - Cのメモリアドレスのキャストをpython ctypes呼び出しに変換する方法は?
タイトルが正確でない場合は申し訳ありませんが、状況を 100% 正しく説明しているわけではありません。
Python の ctypes モジュールを使用して、FreeTDS C ライブラリとのインターフェイスを試みています。私はいくつかのコードを驚くほどうまく実行していますが、1 つの障害に遭遇しました。以下の dbbind() 呼び出しの最後のパラメーターを ctypes に変換する方法がわかりません。
私がフォローしているCの例は次のとおりです。
では、A) Python で自分の変数をライブラリの変数型として定義する方法と、B) "(BYTE *)&company_name" などを ctypes 呼び出しに変換する方法を教えてください。
ありがとうございました!
解決策: Zuljin のおかげで、次のことがわかりました。
freetds - FreeTDS がサーバーからの予期しない EOF を表示する
OS X Snow Leopard にインストールされた FreeTDS 0.82 を使用して、SQL Server 2005 データベースに接続しています。
tsql に接続しようとすると、次のようになります。
freetds.conf:
ログファイル:
バージョン 7.2、7 などを試しましたが、すべて同じものが表示されます。
c++ - FreeTDSの代替手段?
データベースにMicrosoftSQLServerを使用してLinuxサーバーを実行しています。FreeTDS以外に使用できる優れた(できればオープンソースの)cライブラリはありますか?
ありがとうございました
unicode - FreeTDSとunixODBCでのPyodbc utf-8 bind paramエラー
FreeTDS バージョン 0.82
unixODBC バージョン 2.3.0
pyodbc バージョン 2.1.8
freetds.conf:
odbc.ini で Servername を使用する (何らかの理由で、unixODBC が freetds のクライアント文字セットを認識するのに違いが生じた)
utf8 データを正しく取得でき、文字列をインラインで更新できます。
しかし
次の場合に失敗します。
私が追加した場合:
次のエラーが表示されます。
pyodbc.ProgrammingError: ('42000', '[42000] [FreeTDS][SQL Server]着信表形式データ ストリーム (TDS) プロトコル ストリームが正しくありません。ストリームが予期せず終了しました。(4002) (SQLExecDirectW)')
物事がどこで道に迷ったのかについて何か考えはありますか?
php - サーバーが PHP mssql_connect を使用してリモート MSSQL サーバーに接続しないのはなぜですか?
クライアント用に作成したアプリを新しいサーバーに移動する必要があり、PHP mssql_connect で開始していたリモート接続が機能しなくなりました。PHP が mssql でコンパイルされていないことに気付いたので、サーバー管理者にインストールを依頼しました。PHP情報でインストールされたことを確認できますが、mssql_connectから一貫して「サーバーに接続できません」というエラーが表示されます。
私が実行している非常に単純な PHP スクリプトは次のとおりです。
資格情報がまだ正しいことを確認しましたが、何らかの理由で mssql_connect が機能していないようです。管理者が拡張機能と FreeTDS をインストールするのを忘れてしまったことがあるのではないかと思っています。どんなポインタでも大歓迎です!:)
問題が解決しました!!!
結局、/usr/local/freetds/etc/freetds.conf で指定されている FreeTDS プロトコルのバージョン番号であることが判明したため、13 行目のコメントを外す必要がありました。それだけでした!:)
ruby-on-rails - SQLServerとRailsのトラブル
注:これは再投稿です。この質問は、非公開の理由で以前に削除されました
さて、私はこれを一日中のように機能させるように努めてきました、そして私は始めたときからほとんどそれ以上のことはありません。
RubyOnRailsをSQLServerに接続させようとしています。unixODBCをインストールし、それとFreeTDSを構成して、存在するODBCに関連するほぼすべてのRubygemをインストールしました。
(これは、-vを使用したisqlの出力を表示するように更新されました)
ご覧のとおり、tsqlは機能しますが、isqlは機能しません。それを壊す2つの違いは何ですか?
/etc/odbc.ini
/etc/odbcinst.ini
.so
(はい、ファイルが存在することを確認しました)
freetds.confの関連部分
そして最後に、私のdatabase.yml
私がすべての髪を抜く前に誰かが私を助けてくれますか?
完全に最新の64ビットArchLinuxを使用しています。
isqlが失敗する原因は何ですか。私はこの問題についてこれまでに見たすべての解決策を試しましたが、実際にはどれも私のために働いていません。FreeTDSなどを再コンパイルする必要がありますか?
わかりました。また、次の抜粋に示すように、構成ファイルを検出していることをstraceで確認しました。
perl - DBI::Sybase データ変換でオーバーフローが発生しました
DBI モジュールを使用し、Sybase DB に接続する Perl スクリプトを作成しています。ストアド プロシージャ (アクセスできないため、サンプル コードを投稿できません) を呼び出しています。データを取得すると、「error_handler: データ変換によりオーバーフローが発生しました」というエラーが表示されます。私はまだデータを取得しており、集中的な調査を行った後、列の一部のデータ型 (BigInt、nvarchar など) が原因のようです。問題は、どうすればこれを修正できるかということです。これはクライアント側で修正できますか、それともサーバー側でのみ修正できますか?
問題を説明する FreeTDS 0.82 ログの一部: