• 締切済み

「[Microsoft][ODBC SQL Server Driver]COUNT フィールドが正しくありません。」えらーについて

おせわになります、 JavaからMSDEに対してSELECT UPDATE等の処理を行っているのですが。以下のSQLエラーが出てしまいます。 どのような意味なのでしょうか? 雰囲気としてはUPDATE文でおこっているような感じなのですが… ----エラーメッセージ------ [Microsoft][ODBC SQL Server Driver]COUNT フィールドが正しくありません。 よろしくお願いします。

noname#1752
noname#1752

みんなの回答

  • oribeyaki
  • ベストアンサー率45% (18/40)
回答No.2

こんな情報がありましたという報告です。 「COUNT フィールドが正しくありません。」 で、検索をしたら同じような事例がありました。 2件ほどヒットしたのですが、どちらもテーブルのフィールド名を英数字にすることで解決しているようでした。 何故かというのは私にもわかりません。 お役に立つと良いのですが・・・ ちなみにヒットしたのは、「Goo」と「Google」です。 一度調べてみてください。(個人の情報っぽいのでURLは載せません。)

  • Haizy
  • ベストアンサー率40% (404/988)
回答No.1

SQL文の誤りでは? SQL文出したほうが良いと思いますよ。 (テーブル名等は、*** @@@ 等で隠してくださいね。) でわまた。

関連するQ&A

  • ODBC SQLサーバーでSQLを使いたい・・・

    ODBC SQLサーバーでSQLを使いたい・・・ SET NOCOUNT ON DECLARE @EDATE DATETIME DECLARE @CUNT INT SET @COUNT = 0 WHILE ( @I <> -7 ) BEGIN IF ( DATANAME( WEEKDAY, DATEADD( DD, -1, GETDATE()))) = "金曜" BREAK ELSE SELECT @CUNT = @CUNT + 1 END SET @EDATE = CONVERT( CHAR, CONVERT( VARCHAR, DATEADD(DD, @COUNT, GETDATE()), 112) SELECT @EDATE 実行日からさかのぼり、金曜日の日付を表示したいSQLを作成しています。 なぜか"金曜"がおかしいとエラーが出てしまいます。 どなたかわかる方いましたらご教授お願い致します。

  • SQL Serverで文字コードUTF-8

    こんにちわ。 いつも拝見しております。 PHPでODBC接続によるSQL Serverへの問い合わせを行う部分でエラーが出て困っております。 odbc_exec()[function.odbc-exec]:SQL error:[Microsoft][ODBC SQL Server Driver][SQL Server][文字化けしたSQL文]SQL state 37000 in SQLExecDirect in C://....... SJISの時は問題なかったのですがcharsetや保存形式をUTF-8に統一してから出るようになりました。 SQL文は下記のように日本語となっております。 $str = "select 担務,部課 from group by id"; 解決策がありましたらご教示下さい。 よろしくお願い致します。

    • ベストアンサー
    • PHP
  • ODBCドライバが使えない

    Oracle8.1.5のクライアントをインストールしたのですが、ODBCドライバで[Oralce ODBC Driver],[Microsoft ODBC For Oracle]の両方ともが使用できません。 (ODBCデータソースアドミニストレータで追加ができない) SQL*Plusでは、接続可能なんですが.... OSはWIN98です。 NTじゃないとダメなんでしょうか? どーしたらODBCドライバが使えるようになるのでしょう。助けてください。お願いします。

  • ODBCドライバの再インストール方法

    SQL Server用のODBCドライバを再インストールする方法を教えてください。 データベースエンジンにMSDE2000(SP2)、フロントエンドにAccess2000を使って開発したアプリケーションがあるのですが、MSDEへのアクセス時にエラーになります。OSはWin98SEです。 ODBCではsaでログインするように設定しているのですが、エラーメッセージではユーザーは”null”で接続しようとしているようです。 ODBCの構成を確認すると、ちゃんとsaでログインするようになっており、構成後にデータソースのテストを実施するとちゃんと接続しています。 しかし、構成をせずにデータソースのテストを行うと、上記のようにnullで接続しようとします。 別の名称でデータソースを作成しなおしても同じです。 しかし、リモートにSQL Server7.0があるのですが、そちらのDBへの接続はOKです。 ODBCドライバを入れなおして試したいのですが、その方法がわかりません。 ご存知の方教えてください。 よろしくお願いします。

  • SQLサーバー接続について

    DB初心者です。 ODBCからSQLサーバーへのアクセスを設定したく、奮闘しておりますが うまくいかず困っております。 先方から支給されたのは、 DB名、ID、パスワード、ホスト名、ポート番号、MySQLのバージョン5.0.90で、 その通り設定したつもりが、以下のようなエラーが出てソース作成できません。 --- 接続できませんでした。: SQLState: '01000' SQL Server エラー: 11001 [Microsoft][ODBC SQL Server Driver][TCP/IP Sockets]ConnectionOpen(Connect()). 接続できませんでした。: SQLState: '08001' SQL Server エラー: 6 [Microsoft][ODBC SQL Server Driver][TCP/IPSockets]指定された SQL Server が見つかりません。 --- エラー番号で検索してみても原因がわからず・・・ 詳しい方いらっしゃいましたらお願いいたしますm(__)m

  • ODBC SQL ServerでSQLを発行したいのですが・・・

    ODBC SQL ServerでSQLを発行したいのですが・・・ IDがそのまま表示されてしまっていたので、再度登録しなおしました>< ・実行SQL DECLARE @DATE DATETIME DECLARE @STARTDATE DATETIME SET @DATE = GETDATE() SET @STARTDATE = DATEADD(DAY,-7,@DATE) SELECT * FROM teble WHERE 配達開始日 >= @DATE AND 配達開始日 <= @STARTDATE 上記のようなSQLを発行しデータを取得したいのですが、実行結果に表示がされません。 どうしていいかわからず困っています。 頭のDECLARE文しか動いていないのではないんだろうかと思っています。 実行ツールはCommon SQL Envieron mentを使用しています。

  • 動的SQLのCOUNTのとり方

    動的SQLで、DBの件数を取得したいのですが、 うまく取得できず困っています。 教えてください! 以下の様に、記述しているのですが取り方間違っていますか? EXEC SQL EXECUTE statment INTO :CNTNUM; PREPEAした、statmentには SELECT COUNT(*) FROM テーブル名 where kbn = 3; と、ごくごく普通のSELECT COUNT文です。 cnt_numは、int型のホスト変数で宣言しています。 デバックしながら実行すると、cnt_numの値は初期化した時の 0のままです。実際取得した件数が0件なのかもと思い 初期化時に3を代入して実行したら、やはり値は3でした。 なので、件数が取得出来ていないようです。 オラクルエラーにもならず、次の処理へ流れていってしまいます。 知っている方、教えてください。

  • SQL Server(MSDE2000) : ALTER TABLE

    SQL Server(MSDE2000) : ALTER TABLE した項目に対し、直後に UPDATE で値をセットできない 既存のテーブルを仕様変更するため、列を追加し、初期値で埋める SQL 文を書こうとしていますが、うまく動かず、エラーとなってしまい、原因が判らず困っています。 サンプル SQL 文: ------ CREATE TABLE TEST_TABLE ( TEST_FIELD1 SMALLINT, TEST_FIELD2 SMALLINT) INSERT INTO TEST_TABLE VALUES( 1, 2 ) ALTER TABLE TEST_TABLE ADD TEST_FIELD3 SMALLINT UPDATE TEST_TABLE SET TEST_FIELD3 = 3 ------ ※テスト毎に、必ず DROP TABLE TEST_TABLE されている事が前提です。 上記 SQL 文のうち、1行目~3行目までを抜粋して実行すると、ちゃんと CREATE TABLE され、INSERT され、ALTER TABLE される事を確認しました。 ところが、4行目までを一気に実行しようとすると、 ------ SQL実行中に以下のエラーが発生しました。 エラーコード:207 [Microsoft][ODBC SQL Server Driver][SQL Server]列名 'TEST_FIELD3' は無効です。 SQLステータス:S0022 ------ となってしまい、UPDATE で初期値を埋める事ができません。 しかも、UPDATE に失敗するどころか、2行目の INSERT から以降が結果に反映されなくなるという状況に陥ってしまいます。 また、既存のテーブルの仕様変更が目的なので、その状況に近づけるために、まず、 ------ CREATE TABLE TEST_TABLE ( TEST_FIELD1 SMALLINT, TEST_FIELD2 SMALLINT) INSERT INTO TEST_TABLE VALUES( 1, 2 ) ------ を実行し、既存のテーブル(とレコード内容)が存在する状態を作り出された事を、ツール等で確認してから、 ------ ALTER TABLE TEST_TABLE ADD TEST_FIELD3 SMALLINT UPDATE TEST_TABLE SET TEST_FIELD3 = 3 ------ の2行を実行してみると、やはり UPDATE は失敗し、前述と同じエラーが発生します。 またこの場合、ALTER TABLE の実行結果も反映されていません。(つまり、TEST_FIELD3 が列追加されていない) もちろん、ALTER TABLE だけを実行した場合には、ちゃんと列は追加されます。 その後に、UPDATE を実行すれば、ちゃんと追加列に初期値がセットされます。 どうやら、「一回の SQL 文の実行の中で、ALTER TABLE によって新設した列に対しては、UPDATE などでのアクセスはすぐにはできない」のではないか?という状況のようなのです。一回の SQL 文の実行の中において、何らかのトランザクション動作っぽい挙動を感じます。 つまり、ALTER TABLE で追加された列は、その時点ではまだ完全にシステムに認知されていないため、直後の UPDATE 文で認識できずに失敗するのではないか?と。そして、そこでのエラー発生が、ロールバック的に実行した処理をキャンセルしてしまうため、結果として、ALTER TABLE が実行されなかった事になったり、INSERT が実行されなかった事になったりしているのではないか?と思う次第です。 考えられる回避策としては、SQL 文を別々に作成し、個別に実行すれば良いだけの事なのですが、できれば、SQL 文一つにまとめたいと考えています。 どなたか、こういった現象に対する原因・理由の説明、或いは回避策など、何か情報をお持ちの方はいらっしゃいませんでしょうか? 宜しくお願いします。

  • SQL Serverのエラーについて

    サーバーの環境 OS:MS Windows NT Server 4.0 DB:MS SQL Server6.5 SQL Server 6.5 Service Pack 5a Windows NT 4.0 Service Pack 6a Internet Information Server 4.0 Internet Explorer 5.5 SQL Serverにクエリーを実行すると以下のエラーが発生します。 解決方法をご存知の方いましたらご教授願います。 Microsoft OLE DB Provider for ODBC Drivers エラー '80040e14' [Microsoft][ODBC SQL Server Driver][SQL Server]行のサイズが 2107 になり、作業テ-ブルの作成に失敗しました。テ-ブル 2014 内の 1 行の許容サイズを超えます。

  • SQL Serverへエクスポートする時のエラーメッセージ

    お世話になります。 ODBC経由のSQL Serverへのエクスポート時ですが、以下のエラーメッセージが出ます。知っていらっしゃる方、教えてください。 ***************************** [Microsoft][ODBC SQL Server Driver][SQL Server]オブジェクト名 'オブジェクト名' は無効です。 ***************************** SQL Serverのエラーメッセージの解釈のホームページを知っていらっしゃる方は教えてください。 よろしくお願いします。