問題タブ [longtext]

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.

0 投票する
1 に答える
518 参照

mysql - 長いテキストを保存する-mysqlwampserver

MySQLデータベース内に保存する必要のある長いテキストがあります。テキストは次のとおりです。

RS Marks教授は、同僚のMa Jan教授(NTU)とShlomo Magdassi教授(HUJI)と共に、シンガポールにNRFCREATEセンター「エネルギーと水管理のためのナノマテリアル」を設立しました。他の参加している同僚は、イブラヒム・アブドゥルハリム博士です。LeviGheberとArielKushmaro(BGU); 教授 OvadiaLevとDaniCohenと教授。Hua Zhang、Xiaodong Chen、Huo Fengwei、Li Shuzhou(NTU)。

「longtext」と「longblob」を使用しましたが、役に立ちませんでした。私が理解しているように、それは最大64k文字を保持できるはずです。

このような大きなテキストを保存する理由は、コードを入力せずに「ニュース」セクションを更新できるように、自分のWebサイトのユーザー向けに小さなシステムを構築しようとしているためです。小さなCMSのようなもの...

ありがとう

0 投票する
3 に答える
418 参照

iphone - iphoneカスタムテーブルセル、UILabelはスクロール可能である必要があります

UILabel を含むカスタム テーブル セルがあります。私が望むことは、2 つの方法で実行できます。

1- 長いテキストを含む Label の高さを見つけ、rowHeight を設定してテキスト全体を表示します。

2- UILabel をスクロール可能にして、ユーザーが手でテキストを上下に動かして文字列全体を読めるようにします。

どちらをどうすればよいか、アドバイスをいただけないでしょうか。

0 投票する
2 に答える
922 参照

php - php/mysql-長いテキストのフラグメントのみがDBに挿入されます

私のコードでは、変数を使用しています$content。これは、長さが約200000のテキスト文字列です。 $sessionこの場合は関係ありません。次のデータを挿入しようとすると、..。

...新しい行がDBに生成され、、、が書き込まtimeれます。ただし、長さが〜200000の場合、挿入されるテキストは最初の〜1300文字の断片にすぎません。フィールドタイプはに設定され、照合はです。sessionkey_value_$contentlongtextutf8_bin

を選択する$c = strlen(mysql_real_escape_string($content));と、「200000」についての何かがに書き込まれvalue_ます。いずれの場合もmysql_errorはありません。

では、なぜ変数の「短い」フラグメントだけが挿入されるのでしょうか。

編集:

この問題を回避するために、を使用base64_encode()してすべてのデータをエンコードすると、クエリがその役割を果たしました。

0 投票する
4 に答える
2486 参照

mysql - 長いテキストを使用したmysql innodb内部結合が非常に遅い

トランザクションをサポートするために、先週、1 つのプロジェクトのすべての MySQL テーブルを MyISAM から InnoDB に移行しました。これには のコマンドを使用しalter tableました。

ほとんどは正常に動作しますが、特定のクエリの実行が非常に遅く、常にエラーが発生しますIncorrect key file for table '/tmp/#sql_xxxx_x.MYI

user後で、問題をテーブルとテーブルの 2 つのテーブルの内部結合に絞り込みましたagreementuserそして、(ie ) の外部キー フィールドと(ie )agreement_idの主キー フィールドの間で内部結合が行われました。agreementid

userテーブルには 50,000 行のデータしかありませんが、テーブルagreementには 1 行しかありません。そして、ユーザーのインデックスを設定しましたagreement_id

いずれにせよ、これは非常に軽量なクエリのように見えますが、ボトルネック全体であることが判明しました。

の完全なスキーマは次のagreementとおりです。

私が疑問に思っていることの 1 つは、テーブルremark内の longtext フィールドですagreementが、内部結合にフィールドを使用していません。実際、remarkクエリ結果で選択しなくても、クエリは遅くなります。

最後に、 の表をagreementからinnoDBに戻しMyISAM、すべてが正常になるようにしました。クエリは 1 秒未満で終了します。

さて、私の質問は、実際にここで何が起こっているのでしょうか? innoDB テーブルにテキスト フィールドが含まれると、テーブルを内部結合に使用できなくなるということですか?

将来同じ問題を回避できるように、本当の理由を知ることができればいいのにと思います。

どうもありがとう。

0 投票する
2 に答える
840 参照

java - 文字長が制限されたjpaからテーブルを生成する

varchar(700) を使用してデータベースにテキスト フィールドを作成したい (最大 700 文字が必要)。私はそれを次のように定義しようとしました:

...

テーブル生成には次のプロパティがあります。

コメントは varchar(700) にしたいです。長文にする理由ってあるの?varchar にする方法はありますか? これは簡単な質問かもしれませんが、解決策が見つかりません! 代わりに DDL を使用してテーブルを作成する必要がありますか?

ありがとうございました!

0 投票する
0 に答える
3490 参照

php - PHP を使用して Mysql データベース (「テキスト」データ型) に長いテキストを挿入する方法

PHP を使用して mysql データベースに長いテキストを挿入しようとしています。長いテキストを格納するためにデータ型 "Text" を使用していますが、問題は "Text" データ型が値を格納していないことですが、"Text" の代わりに "Blob" を使用すると機能します。

追加したいことの 1 つ: phpmyadmin でクエリを直接実行すると、機能します。そのため、php は「テキスト」データ型のデータベースにデータを挿入できないようです。この問題をグーグルで検索しましたが、まだ解決策が見つかりません。誰でもそれを修正する方法を教えてもらえますか? 前もって感謝します。

テーブルタイプ:MyISAM

0 投票する
10 に答える
61150 参照

hibernate - JPA:「列に対してデータが長すぎます」は変更されません

私のエンティティの 1 つに、MachineryというStringプロパティがありますnotes。JPA 2-Hibernate がスキーマを生成します。私の場合、RDBMS は MySQL です。

notes列として作成されVARCHAR(255)ます。これは正しいです。

ユーザーはレコードの作成を開始し、すべてが完全に機能しますが、悪名高いData too long for column "notes"エラーが発生するユーザーもいます。

そのフィールドには、ユーザーの機械に関するメモを入れるのに十分なスペースがありません! わかりました、問題ありません。スキーマを変更しよう!

そこで、エンティティ クラスを開き、プロパティを次のように変更します。

ちなみに、私のpersistence.xml宣言:

notesアプリケーションの再起動後、Hibernate が私の列を a に変更してくれたことをうれしく思いますLONGTEXT(私には十分です)。

そのため、最初にアプリケーションを使用して新しい「長いメモ」レコードを作成しようとしましたが、今でも「データが長すぎます」というエラーが表示されますLONGTEXT

INSERT次に、 MySQL コマンド ラインからraw を実行してみましたが、うまくいきました。そのフィールドに長いメモを挿入できます!

最後にDROP、ローカル/ステージング DB スキーマを変更hibernate.hbm2ddl.autoするpersistence.xmlcreate、機能します。

JPAはまだそれがであると考えていVARCHARますか? ある種のキャッシュまたはスキーマの情報を格納する場所はありますか?

明らかに、本番データベースを削除できません。では、列の種類をリセットまたは変更するにはどうすればよいでしょうか?

JBossAS7 JPA 2-Hibernate を使用しています。

0 投票する
1 に答える
1887 参照

mysql - MySQL 比較クエリの長​​いテキスト列

LONGTEXTテキストの段落を保存するために使用する列があります。これらの段落内に次のようなものがあるとしましょう。

そのすべてのテキストから小さな文字列「COUNT: 75」を比較クエリすることは可能でしょうか?

私の最初の考えは次のようなものでした

これは可能ですか?

0 投票する
1 に答える
358 参照

mysql - MySQL LONGTEXT ページネーション

を含むテーブル ポストがありますLONGTEXT。私の問題は、特定の投稿の一部を取得したいということです (基本的にページング)

次のクエリを使用します。

これはなんとなくいいのですが、問題は位置と長さです。ほとんどの場合、最初の単語と最後の単語は完全ではありませんが、これは理にかなっています。

長さ y の位置 x から完全な単語を取得するにはどうすればよいですか?

0 投票する
1 に答える
838 参照

performance - 非常に遅いロングテキストフィールドのinnodbテーブルをクエリする

さて、すべての最初の、私の英語で申し訳ありません。ユーザーがブログページなどのテキストを含めることができるテーブルでクエリを実行しようとしています。ユーザーは、HTML形式でコンテンツをデザインできます。私のテーブルでは、次のように保存されています。

私はそのユーザーが望むすべてのコンテンツを検索する必要があります。フィールド'texto'(私が使用している)はロングテキストフィールドであり、テーブルはinnodbです。全文検索はmyisamテーブル専用であるため使用できません。私は次のようにクエリを実行しました:

しかし、クエリは非常に遅く、永遠にかかります。テーブルには849のレコードがありますが、それは大きくありません。phpmyadminで同じクエリを作成すると、非常に長い時間がかかります。しかし、この分野には大きな記録があり、いくつかの記録にはビデオhtml、表、画像がありますが、それは上記のようなテキストです。

私は何ができますか???クエリのパフォーマンスをどのように改善できますか?私はあなたのすべての助けに感謝します。どうもありがとう。そしてまた、私の英語でごめんなさい。