1

これは、パラメータ値を変数に格納してクエリで使用する単純なコードですが、AS / 400に接続していないと思われるため、エラーメッセージ「INVALIDObjectname"DTA010.DFDR00"」が表示されます。

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        //string strQuery;

        string order_no = Request.QueryString["order"];
        if (order_no != null)
        {
            Response.Write("\n");
            Response.Write("Order No is ");
            Response.Write(order_no);
        }
        else
        {
            Response.Write("You Order number is not correct");
        }

        Response.Write("Your Order Status is");
        Response.Write(niceMethod1());
        Response.Write("\n");

    }

    public string niceMethod1()
    {
        string tDate = "";

        string nOrder = (Request.QueryString["order"] ?? "0").ToString();

        using (SqlConnection connection = new SqlConnection("Data Source=*****;User ID=web;Password=****;Initial Catalog=WEBSTATUS;Integrated Security=False;"))
        {

            string commandtext = "SELECT A.STAT01 FROM DTA010.DFDR00 AS A WHERE A.ORDE01 = @nOrder"; //@nOrder Is a parameter

            SqlCommand command = new SqlCommand(commandtext, connection);

            //command.Parameters.AddWithValue("@nPhone", nPhone); //Adds the ID we got before to the SQL command
            command.Parameters.AddWithValue("@nOrder", nOrder);
            connection.Open();
            tDate = (string)command.ExecuteScalar();
        } //Connection will automaticly get Closed becuase of "using";
        return tDate;
    }
}

.NETアプリケーションからAS/400に接続するために必要なドライバーが正しくインストールされている。

4

3 に答える 3

3

スキーマ(別名ライブラリ)とテーブル(別名ファイル)の名前のスペルが正しい場合は、ピリオドをスラッシュに置き換えてみてください/。これは、「標準」の命名構文ではなく、「システム」の命名構文に使用されます。

于 2012-11-09T22:15:48.763 に答える
0

あなたは間違いなくつながっています。問題は、受け取ったエラーにあると思います。接続しているオブジェクトが存在することを確認してください。WRKOBJ OBJ(BTGDTA010/DF01HDR00)それが存在するかどうかを確認します。すべてのスペルが正しいことを確認してください。タイプミスの可能性があります。

于 2012-11-09T19:09:08.817 に答える
0

これが私が見つけた最も簡単な方法です誰かのために役立つかもしれません..!!

最初にアセンブリIBMライブラリを追加する必要があります

IBM.Data.DB2.iSeriesを使用します。

それから

 iDB2Connection connDB2 = new iDB2Connection(
            "DataSource=158.7.1.78;" +
            "userid=*****;password=*****;DefaultCollection=MYTEST;");
于 2012-11-19T16:15:10.617 に答える