エンバカデロでは、これまでユーザーのコミュニケーションを行うフォーラム機能を独自に提供してきました。しかし昨今では、さまざまなオープンフォーラムの利用が普及し、こうした場に世界中の開発者コミュニティのナレッジが蓄積してきています。
そこで弊社でも、独自のフォーラムの提供ではなく、こうしたオープンフォーラムを活用する方向にその方針を転換することにしました(Atanas Popov による2020/08/19の記事 “August 2020 GM Blog”を参照)。
Delphi / C++Builderに関する新しいユーザーコミュニケーションの場は、スタック・オーバーフローへと移ります。そこでこの記事では、スタック・オーバーフローの日本語サイトで質問を投稿する方法を説明しようと思います。
Table of Contents
スタック・オーバーフローとは
スタック・オーバーフローのサイトはコンピュータや情報技術、特にプログラミング技術に関するナレッジコミュニティで、2008年に開設されました。日本語サイトも2014年に開設され、活発な情報交換が行われています。
スタック・オーバーフローは、ユーザー同士でプログラミングに関する具体的な問題を解決するためのQ&Aを作成することを目標としています。幅広いユーザー層のナレッジを活用できるようにするため、第三者が質問内容を把握できるための情報を質問に含めることが重要です。
質問の投稿方法(匿名で質問するか、アカウントを作って質問するか)を決める
スタック・オーバーフロー日本語サイトでは、アカウント登録を行わなくても質問を投稿したり、質問の回答を投稿できます。ただし通常はアカウント登録を行ってサイトを利用することをお勧めします。
スタック・オーバーフローには質問や回答内容を利用者が評価することでユーザーの信用度が算出され、その信用度によって利用できる機能が増えるという仕組みがあります。また、よく利用するタグを設定して質問一覧を見やすくできます。この機能はサイトにアカウント登録してログインした場合だけ利用できます。
アカウントはスタック・オーバーフローのサイトで新規作成するか、または既存の Google/GitHub/Facebookアカウントでログインできます。画面右上の [登録] より登録してください。
アカウント登録せず匿名のまま質問したい場合は「質問する」をクリックして先に進みます。
質問内容を整理して投稿する
[質問する] をクリックすると次の画面が表示され、「タイトル」「本文」「タグ」を記入できます。]
それぞれの記入のポイントは次のとおりです。
タイトル
質問を具体的にまとめた内容を記入します。タイトルだけで質問内容が理解できる内容が好ましいため、本文の記入内容を作成してからタイトルをつけるほうがわかりやすいタイトルになります。
分かりづらいタイトル例: FireDACでパラメータ値をセットするとクエリが正しく実行できない
具体的な内容を含むタイトル例: FierDACのTFDQueryにParamByName()を使用してパラメータ値をセットするとデータベースに格納される値に余計な文字列が含まれてしまう
本文
本文には、具体的な状況(開発環境のバージョン、データベースの種類やバージョン、使用するドライバ、発生手順、現象を再現可能な最小限のソースコード)を記入します。
記入の際はビジュアルエディターを用いて書式を設定したり、HTMLやMarkdown記法を利用できます。今回の質問内容をMarkdown記法で作成すると、次のようになります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
Delphi 10.4.1 と FireDAC で InterBase 2020 Server (開発環境では Delphi 付属の InterBase 2020 Developer を使用)を操作するWindows VCLアプリケーションを作成していますが、 ParamByNameを使用するとデータベースに格納される値に余計な文字列が含まれてしまう現象が発生し、困っています。 InterBase 側ではデータベースの文字コードを UTF8 に設定し、次のDDLでテーブルを作成しています。 ``` CREATE TABLE TABLE1 ( ID INTEGER, NAME VARCHAR(30) ); ``` TFDQuery には INSERT クエリを次のように設定しています。 ```lang-pascal FDQuery1.SQL.Text := 'insert into table1 (name) values (:name)'; ``` このクエリに、ParamByName(‘フィールド名’).AsString で値をセットして実行すると、 データベースに追加されたレコードにはParamByNameでセットした値の後ろに余計な文字列が追加されてしまいます。 実際にこの現象が発生する再現コードは次のとおりですが、 意図したとおりの値をデータベースに正しく格納するには、何をどのように調整すればよいでしょうか? ```lang-pascal FDQuery1.SQL.Text := 'insert into table1 (name) values (:name)'; FDQuery1.ParamByName('name').AsString := 'テスト1'; FDQuery1.ExecSQL(); ``` |
タグ
タグは任意のタグを5つまで設定できます。Delphi/C++Builderに関連する次のようなタグを設定しておくと適切にカテゴライズされ、検索しやすくなります。
言語 | delphi,c++builder |
フレームワーク | vcl, firemonkey |
データアクセス | firedac. dbexpress, bde, ado, odbc |
サーバーサイド開発 | radserver, datasnap, webbroker |
また、ターゲットプラットフォームや、利用するその他のライブラリなどに応じてタグを追加します。
今回の質問の場合は、delphi, vcl, firedac, interbase の4つのタグを設定しておくとタグで検索されやすくなります。
質問に回答する
投稿されている質問に対する情報をお持ちの場合は、ぜひ回答を投稿してください。スタック・オーバーフロー日本語サイトでは、質問への回答もサイトへのアカウント登録の有無によらず投稿できます。
質問への回答は、質問本文と同様にビジュアルエディターを使用したり、HTMLやMarkdown記法で投稿できます。
あなたが困っている問題ことは、他の利用者の皆さんも同様の問題を抱えている可能性があります。ですが、問題を共有することで別の利用者がその問題に対してする回答してくれる可能性があります。製品の保守に付帯するインシデントサポートを利用してテクニカルサポートへ問い合わせて問題解決することもできますが、その情報はクローズドな情報のため質問者以外に回答されず、公開されません。しかしスタック・オーバーフローのような公開されているコミュニティサイトを利用することで、開発者の皆さんが困っている問題を誰でも共有することができます。この2つをうまく使い分けて開発時の問題の解決にお役立てください。
Design. Code. Compile. Deploy.
Start Free Trial Upgrade Today
Free Delphi Community Edition Free C++Builder Community Edition