このコードを使用して値を挿入できません:
insert into t_category_values (CategoryCode,
CategoryValueCode, CategoryValue) values(2, 1, 1);
エラーメッセージ
no primary key
このコードを使用して値を挿入できません:
insert into t_category_values (CategoryCode,
CategoryValueCode, CategoryValue) values(2, 1, 1);
エラーメッセージ
no primary key
あなたのクエリは間違っています:
INSERT INTO `DBA`.`t_category_values`
(CategoryCode, CategoryValueCode, CategoryValue)
VALUES(1, 1, "aaa");
詳細については、こちらを参照してください: Sql Insert Wiki
編集:
クエリとエラー:
t_category_values (CategoryCode、CategoryValueCode、CategoryValue) 値 (2、1、1) に挿入します。
主キーなし
挿入では、テーブル内のすべてではなくいくつかの列に挿入するように指定しながら、主キーを含める必要があります。つまり、CategoryCode、CategoryValueCode、CategoryValue のいずれかで主キーにするか、テーブルの主キーである 4 番目の列を含める必要があります。
これを試してください(Sybase SQL Anywhereを使用しているため編集):
INSERT INTO dba.t_category_values
(CategoryCode, CategoryValueCode, CategoryValue)
VALUES(1, 1, 'aaa');
編集済み:Sybase Webページ
から:テーブルへの行の追加
現在の営業部門と同じマネージャーで、新しい東部の営業部門が作成されたとします。次のINSERTステートメントを使用して、この情報をデータベースに追加できます。
INSERT
INTO department ( dept_id, dept_name, dept_head_id )
VALUES ( 220, 'Eastern Sales', 902 )
間違えて列の1つを指定するのを忘れた場合、SQLAnywhereはエラーを報告します。
NULL値は、何かが不明であるか、適用できないことを示すために使用される特別な値です。一部の列にはNULL値を含めることができますが、許可されていない列もあります。
insert into `DBA`.`t_category_values` (`CategoryCode`, `CategoryValueCode`, `CategoryValue`) values(1, 1, "aaa");
INSERTは次のようになります。
INSERT INTO `DBA`.`t_category_values`
(CategoryCode, CategoryValueCode, CategoryValue)
VALUES (1, 1, "aaa");
DBA
はデータベース、t_category_values
はテーブルです。別のテーブルからデータを挿入する場合は、SELECTを使用します。
INSERT INTO `DBA`.`t_category_values`
(CategoryCode, CategoryValueCode, CategoryValue)
SELECT (CategoryCode, CategoryValueCode, CategoryValue)
FROM `DBA`.`old_category_values`;
クエリを挿入例:-
Insert into `tableName`(field1, field2, field3) values ('value1', 'value2', 'value3');
有効な一意の主キーを指定していないため、「主キーがありません」というエラーが発生します。
テーブルは4列である必要があります。
INSERT INTO t_category_values (PRIMARY_KEY, CategoryCode, CategoryValueCode, CategoryValue)
VALUES(pkey_value_here, 2, 1, 1);
主キー列を指定する必要がないのは、主キーが自動増分値の場合のみです。自動インクリメント列の場合、INSERTは自動的にその値を入力するので、心配する必要はありません。