PHPとmssqlライブラリを使用して大きなvarcharフィールドを選択すると、(フィールドタイプをテキストフィールドに変更する以外の)回避策がありますか?たとえば、varchar(500)です。 PHPは本当に文字数を255に制限していますか?それ以上のものを取り戻す方法はありますか?PHPとmssqlライブラリは、varcharカラムから256文字以上を選択できますか?
答えて
PHPページから、この問題は、Windowsプラットフォームの基になるデータベースドライバのようです。 Varcharは<文字を255文字まで返します。回避策は、SQL SELECTステートメント内のテキストにvarcharをキャストすることです。
原因は実際にはPHPではなくMySQLである可能性があります。MySQL 5.0.3より前のバージョンMySQLは、VARCHARで255文字しか格納できませんでした。この制限は、後のバージョンで65535に引き上げられました。
MySQL、MS SQLではありません。私はこれを開発する人ではない - 私のチームメイトはだ。私はちょうど質問をしています。 –
おっと、申し訳ありませんが、私の間違い。 –
キャストについてはわかりませんが、関連するフィールドタイプをVarcharではなくTextに変更します。
これは私たちがやったことですが、既存の機能を破壊するかどうかはわかりませんでした。それはしませんでした。しかし、あなたが実際に作業しているフィールドのタイプを変更できない場合の回避策です。 –
MS SQLのテキストに広いVARCHARをキャストするには:
myWideFieldが列切り捨てされていると、MYTABLEは...よく私のテーブルであるSELECT convert(text,myWideField) FROM myTable
。
結果は256文字を超えるTEXTにキャストされます。
d。
元の列名を使用する場合は、「AS」を追加する必要があります。例:SELECT convert(text、myWideField)AS myWideField from myTable'。 –
私は、php.iniの中の変数の値を変更しようとした:
mssql.textlimit = 2147483647
mssql.textsize = 2147483647
でもない作品...
を私はvarchar型に私の列VARCHAR(2000)のタイプを変更(最大)。 これは私のために働いた!
freetdsの設定を変更してください。サーバーで
、
変更/etc/freetds.conf編集:
tds version = 4.2
へ:
tds version = 8.0
は、Notes、Mssql Functions Referenceに貢献し、ユーザーの詳細情報。
- 1. MySqlは数字のみを選択し、それらをvarcharカラムから注文します
- 2. MySQLテーブルからカラムの最初の文字でCOUNTを選択
- 3. IfステートメントでNA以上の文字列を選択するR
- 4. PostgreSQLのvarcharカラムからのみ整数値を選択する方法
- 5. PHPで文字列から数値以外の文字を選択する方法
- 6. MSSQLでPHPテーブルのデータを選択
- 7. 文字列から数字を選択
- 8. PHP文字列からチェックボックスをあらかじめ選択します。
- 9. MySQL - varcharカラムから数値以外の値のみを選択してください。
- 10. PHP:1文字以上の文字列内の文字を変更することは可能ですか?
- 11. 'int'型のsqliteカラムから選択すると、.net intにキャストできますが、 'integer'カラムから選択できない場合
- 12. varcharから文字列を選ぶMySQL、ストアドプロシージャ
- 13. PHPでは、2つの文字列の間の文字列を選択し、選択した文字列から1つの値を取得します。
- 14. リストから文字(0)を選択
- 15. 選択機能以上のことから
- 16. テーブルから別のカラムを選択JPA
- 17. MSSQL:別のテーブル内の2つの以上の出現との選択行
- 18. MSSQLとSQLのデータ型の選択肢はありますか?
- 19. 私はltrimとrtrimでJavascriptの文字を選択できますか?
- 20. DataAdapterベーステーブルスキーマから文字列を選択しますか?
- 21. SQL Server:文字列からの選択
- 22. jQueryのdatepickerは10年以上前に選択できますか?
- 23. リストから1つ以上の要素を選択する
- 24. PHP文字列内の選択された文字を置き換えます。
- 25. MySQLのVARCHARカラムの制約を設定することはできますか?
- 26. 複数の選択肢の中から1つ以上の正解を選択
- 27. MSSQLストアドプロシージャから複数のレコードセット/カラムがPHPにエコーされる
- 28. MayaからJSONライブラリを選択する
- 29. SQLCMDは、カラムの最初の256文字のみを返します。
- 30. SQL Serverで文字列パラメータを256文字以上大きくするにはどうすればよいですか?
問合せでDISTINCTキーワードを使用する必要がある場合は、VARCHAR(MAX)へのキャストも機能しているようです。 –