1

私のウェブサイト(リモート)にSQLサーバーテーブルがあります。テーブルが呼び出さtable1れ、多数のフィールドが含まれています。ここでの私の目標は、すべてのフィールドをtable1配列に読み取って反復することです。

これが私の試みです:

 private static void ShowFields()
    {
        using (SqlConnection connection = new SqlConnection(connectionstring))
        {
            connection.Open();

            SqlCommand command = new SqlCommand("SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='table1'", connection);
            SqlDataReader reader = command.ExecuteReader();

            //connection.Close();

            int colCount = reader.FieldCount;

            while (reader.Read())
            {
                for (int i = 0; i < colCount; i++)
                {
                    Console.WriteLine(reader[i]);
                }
            }
        }
    }

これはほとんど機能しますが、フィールド内のデータではなく、テーブルのすべてのプロパティが表示されます---たとえば、varchar、50 dao、テーブルなど。

http://i.imgur.com/2bsgMBC.png

4

1 に答える 1

1

私が正しく理解している場合、テーブル内の実際のデータが必要ですが、テーブル/列/その他についてのデータを提供する INFORMATION_SCHEMA を照会しています...

したがって、次のようにテーブルをクエリするだけです。

SELECT * FROM table1

テーブルの列名はわかりませんが、一部の列だけを表示したい場合は、* を列リストに置き換えることができます。

SELECT col1, col2, col3 FROM table1

ここで、col1、col2、および col3 は列の名前です。

これはあなたがしようとしていたことですか、それとも私はここで的外れですか?

于 2013-05-20T00:27:26.680 に答える