どのように私はfoxproのフィールドをインクリメントするのですか?

私はvfp9を使っていますが、プログラムは以前の言語で書かれているかもしれません。 vfpを使ってデータベースを開くと、そのフィールドは他のフィールドとは異なり、読み取り専用になります。 それを手動で行うと(max + 1を選択しても)、挿入には機能しません。フィールド= 0になります。

適切な構文の例をオンラインで見つけるのが難しいです、誰でも助けてくれますか?

編集: OK、解決策はフィールドを空白のままにすることでした。フィールドは、最終的に大きなテーブル(オートナンバーフィールドを持つテーブル)に追加されるテーブル内にあります。それが追加される前に、フィールドはいくつかのシークで使用されます。

I'd prefer not to fix the code everywhere by simply setting the field to null before the append. replace field with null gives an error though. What's the proper syntax for setting a table field to null?

もう一度編集する:列が削除されました。どうやら、数値フィールドをnullに設定することはできません。

0
フィールドにnullを受け入れるように設定した場合は、整数(およびおそらく他の)数値型フィールドをnullに設定できます。
追加された 著者 DaveB,
nullを予期していないコードがある場合は、そのコードはエラーをスローする可能性があります。ヌルを受け入れるようにフィールドを設定しないで、問題の別の解決策を見つける必要があるかもしれません。
追加された 著者 DaveB,
それは同じテーブルを使用する他のプログラムを台無しにするでしょうか?私は、既に構築され使用されているテーブル構造を混乱させることを躊躇しています。
追加された 著者 slicedtoad,

2 答え

テーブル構造が次のような場合:

Structure for table:    D:\SO9162291.DBF
Number of data records: 2       
Date of last update:    02/06/12
Code Page:              1252    
Field  Field Name      Type                Width    Dec   Index   Collate Nulls
    1  COUNT           Integer                 4                            Yes
    2  CONTENTS        Character              24                             No
** Total **                                   30

countフィールドはNULLを許可するように設定されているので、以下のいずれかの方法を使用して、integer型のフィールドをNULL値に設定できます。

USE so9162291
INSERT INTO so9162291 (count, contents) VALUES (null, "Test record")
UPDATE so9162291 set count = null WHERE contents = "Test record"
REPLACE count WITH null
1
追加された
実際には、自動インクリメントのテーブルへの挿入を行うときは、完全にその列を挿入コマンドのOUTのままにしておくと、自動生成されます... YourTable(contents)values( 'test')に挿入する - will自動的に "count"整数値を割り当てます。
追加された 著者 DRapp,
@DRapp - 私の反応は、 "テーブルフィールドをnullに設定するための正しい構文は何ですか?"自動インクリメントフィールドではありません。私はあなたのコメントに同意します。入力いただきありがとうございます。
追加された 著者 DaveB,

私は次のSQLクエリを実行します:

SELECT MAX(id)+1 AS laCount FROM so9162291 INTO CURSOR temp

INSERT INTO so9162291 (count, contents) VALUES(temp.laCount,"Test record")
0
追加された
コードを適切な方法でフォーマットしてください
追加された 著者 Sergey Mell,