問題タブ [varbinarymax]
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.
java - ドキュメント ファイルと写真を更新する SQL Update ステートメント - varbinary (max)
DB でドキュメント ファイルと写真ストアを varbinary(max) として更新する SQL UPDATE ステートメントを作成しました。最初に 、データ型 varchar から varbinary(max) への暗黙的な変換は許可されていないというエラーが表示されました。CONVERT 関数を使用してこのクエリを実行します
そこでコードを変更して、このようにしました。
上記のクエリを netbeans で実行すると、正常にアップロードされたことを示す Joption メッセージが表示されます。私はnetbeansに別のjframeを持っています。これには、すべてのドキュメントファイル、画像を選択し、それをjtableに表示するクエリがあります。jtable の行をクリックすると、画像がラベルに表示され、ドキュメントが開かれますが、開こうとすると、ファイルが壊れていると表示され、画像に対してアップロードした png が表示されません。
ステートメントを正しく書きましたか?変更しなければならないことはありますか?
c# - ドキュメントを挿入できません
一度に複数のドキュメントを挿入しようとしています。使用されるデータベースは SQL 2008 です。私のテーブルには Image カラム タイプがあります。
現在、C# で 8 ~ 10 列のデータテーブルを作成しています。列の 1 つは Byte[] 型で、ファイルの内容が保存されています。このデータテーブルを SProc が呼び出されるサービスに渡します。
SProc には、inout パラメータが 1 つしかありません。つまり、テーブル タイプ SessionDetails です。ここで、他の列はデータテーブルの列に従ってマップされます。filecontent は、タイプ Varbinary(max) の FileContent 列に保存されています。
INSERT は正しく機能しますが、保存されたデータを読み込もうとすると、アップロードされた doc/image/pdf を開くことができません。
問題がどこにあるのかわかりません。SPでは、この変数にキャスト/変換を使用している場所はありません.C#またはデータベースレベルで:(
テーブルの詳細
sql - SQL Server 2012 で Varbinary(MAX) としての写真を使用すると、Access 2010 でエラー 502753 が発生する
Access 2010 odbc フロント エンドと SQL Server 2012 バックエンドがあります。私の画像 ( .bmp) は として保存されVarbinary(Max)ます。バインドされたオブジェクト フレームを使用して Access フォームに画像を挿入すると、画像がフォームとレポートに完全に表示されます。SQL に取り込む画像が多数あったため、SQL Server Management Studio で次のコードを使用しました。
これはうまく機能し、600 以上の写真はすべて SQL Server に保存されました。しかし、この方法で追加したものが Access フォームまたはレポートに表示されません。Bound Object Frame をクリックすると、エラー番号 502753「Microsoft Access が OLE サーバーまたは ActiveX コントロールと通信中に問題が発生しました。」が表示されます。
なぜそれは一方の方法で機能し、他方の方法では機能しないのですか? 画像を表示するにはどうすればよいですか?
sql-server - テーブル内の VARBINARY(MAX) 列を使用した IDENTITY 列での PK インデックスの断片化
主キーとして IDENTITY 仕様を持つ BIGINT を持ついくつかのテーブル (テーブル A とテーブル B) があります。これらのテーブルには、2 つの VARBINARY(MAX) 列があります。更新と削除は非常にまれです。
行数はほぼ同じで、テーブル B は少し少ないですが、VARBINARY(MAX) 列にはかなり多くのデータがあります。
表 B の PK が使用するストレージが、表 A の PK が使用するストレージよりもはるかに多いことに驚きました。いくつか読んで、間違っている場合は訂正してください。最大行サイズは約 8k です。そのため、インデックスに含まれるバイト参照でページングが行われます。したがって、表 B の PK によって使用されるストレージが大きくなります。これは、DB の合計サイズの約 30% です。私は、BIGINT のみがインデックスの一部であると想定していました。
私の質問は、その回避策があるかどうかです。これを防ぐことができる設計、技術、またはハックはありますか?
よろしく
ヴィルマ
c# - HttpPostedFileBase から varbinary(最大)
私は見つけた多くのことを試しましたが、結局何も成功しませんでした。
最初に、次のコードがあります。これは、問題なく実行できますが、画像は保存しません。
画像を varbinarymax に保存するにはどうすればよいですか? 次のビューにそれらを表示する方法は?
見る:
コントローラ:
モデル:
sql-server - データ型 varbinary(max) の列に挿入/更新される前にバイト データが切り捨てられる
データ型 varbinary(max) を持つ列を持つテーブルの 1 つにバイナリ データを挿入しています。
挿入するバイナリ データの全長は 610154 文字です。
コードを介して、または SSMS によって手動でデータを挿入した後、その一部のみが挿入されます (43679 文字のみ)。
データを挿入しようとしている列に関連付けられたトリガーまたは制約があるかどうかを確認しましたが、何もありません。
以前の stackoverflow での検索によると、 (max) は 2^31 バイトを挿入できることを意味します。また、完全な情報 (長さ 610154) を送信しているトレースを調べて確認しました。
どんな助けでも大歓迎です。
前もって感謝します。