![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
No.2ベストアンサー
- 回答日時:
> COUNT(*)を使う場合は
> Dim lCount as Long
> strSQL = "select count (*) from Table_Main"
> lCount = cnn.Execute (strSQL)
> でいいのでしょうか。
実際に試して見ましたか?
やってみれば、上記では正しくないことはすぐにわかるはずです。
Connection.ExecuteメソッドはRecordsetオブジェクトを返します。
(オブジェクトブラウザやヘルプで確認できます)
正しくは、(一例ですが)下記のようになります。
Dim adoCnn As ADODB.Connection
Dim adoRst As ADODB.Recordset
Dim lCount As Long
Dim strSQL As String
strSQL = "SELECT COUNT (*) FROM Table_Main"
Set adoCnn = New ADODB.Connection
Set adoRst = New ADODB.Recordset
adoCnn.Open
adoRst.Open strSql, adoCnn
lCount = adoRst.Fields(0).Value
※ 省略可能な引数は省略して書いています。実際に使用する場合は適宜変更してください。
なお、通常は、adoRst.Fields(0).Value のように列番号による参照ではなく、adoRst.Fields("Name").Value のように列名による参照が一般的です。
この場合は、SQLの結果セットが1列しかないことと、COUNT (*) にエイリアス
を付けていないため、このような記述にしています。
strSQL = "SELECT COUNT (*) As RecCount FROM Table_Main"
:
(略)
:
lCount = adoRst.Fields("RecCount").Value
のように、列名を付与して記述することもできます。
(コードの可読性の観点ではこの方が無難です。ただし、エイリアスと予約語がぶつからないように注意!)
失礼ですが、SQLやDBの基本的な操作を書籍等で研究された方がよいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) アクセス レポートを開いたときにパラメーターの自動入力がしたい 4 2022/11/30 11:21
- Visual Basic(VBA) ExcelからAccessのテーブルに書き込む時に時間がかかる 1 2022/10/14 20:38
- PHP PostgreSQLからCSV形式でエクスポートする際にカラム内の改行をとる方法 1 2023/02/22 10:05
- Excel(エクセル) EXCELの外部データ取得ができない 1 2023/03/23 09:03
- MySQL 参考書に従って入力したつもりでしたが、最後はエラーがでました。 1 2022/09/28 03:45
- Oracle Oracleですがsqlで質問です。 サブクエリ内で番号というカラムで昇順の1レコード目を取得したい 3 2023/05/22 10:02
- その他(SNS・コミュニケーションサービス) 爆サイやっていたら、下のような文字が出ました! これは何なのでしょうか? nginx error! 1 2023/06/09 12:27
- PostgreSQL ポストグレにあるExcelファイルを開くには 1 2022/12/13 18:07
- BTOパソコン dz60 1 2023/06/11 15:27
- ソフトウェア 移行PCにDockerがインストールされていても各種開発環境のアプリはインストールが必要? 2 2023/05/21 21:53
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelでセルの書式設定を使用し...
-
Excelで、改行がある場合の条件...
-
GROUP BYを使ったSELECT文の総...
-
OracleのSQL*PLUSで、デー...
-
別のテーブルの値でUPDATEした...
-
日本語の表名、列名の利用について
-
LOAD DATE INFILE で Bit(1)型...
-
オラクル:ビューのCREATE文に...
-
DB2で UNION ALL と GROUP BY ...
-
エクセル表でA列が表示されな...
-
GROUP BYを行った後に結合した...
-
Oracleでの文字列連結サイズの上限
-
SQL文で右から1文字だけ削除す...
-
使うべきでない文字。
-
ファイル書込みで一行もしくは...
-
Accessで別テーブルの値をフォ...
-
select句副問い合わせ 値の個...
-
SQL>UPDATEと同時にその件数を...
-
select insertで複数テーブルか...
-
sum()の出力結果順に並び替えを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
GROUP BYを使ったSELECT文の総...
-
Excelでセルの書式設定を使用し...
-
OracleのSQL*PLUSで、デー...
-
Excelで、改行がある場合の条件...
-
日本語の表名、列名の利用について
-
主キーに重複があるレコードの...
-
image型のInsertについて
-
cursor.getString
-
SQLについて質問です。 AVG関数...
-
ADOのRecordCountプロパティに...
-
NULLのみを保持した列を除外し...
-
ACCESSのコンボボックスの右側...
-
LOAD DATE INFILE で Bit(1)型...
-
別のテーブルの値でUPDATEした...
-
MS-ACCESS2000で数万件のデータ...
-
SQLについて質問です。 a表があ...
-
行全体を、決まった文字列があ...
-
oracle12c ユーザのパスワー...
-
SELECT文で列名指定して桁あわ...
-
SQL 条件下の任意文字出力について
おすすめ情報