我无法使用此代码插入值:
insert into t_category_values (CategoryCode,
CategoryValueCode, CategoryValue) values(2, 1, 1);
错误消息
no primary key
答案 0 :(得分:6)
您的查询错误应该是:
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);
没有主键
在insert中指定插入少数列而不是表中的所有列时,必须包含主键。这意味着在您的CategoryCode,CategoryValueCode之一,CategoryValue应该是主键或包括作为表中主键的第四列。
答案 1 :(得分:3)
insert into `DBA`.`t_category_values` (`CategoryCode`, `CategoryValueCode`, `CategoryValue`) values(1, 1, "aaa");
答案 2 :(得分:3)
尝试此操作(已编辑,因为您使用的是Sybase SQL Anywhere):
INSERT INTO dba.t_category_values
(CategoryCode, CategoryValueCode, CategoryValue)
VALUES(1, 1, 'aaa');
<强>编辑:强>
来自Sybase web page:
向表中添加行
假设创建了一个新的东部销售部门,其经理与当前的销售部门相同。您可以使用以下INSERT语句将此信息添加到数据库:
INSERT
INTO department ( dept_id, dept_name, dept_head_id )
VALUES ( 220, 'Eastern Sales', 902 )
如果出错并忘记指定其中一列,则SQL Anywhere会报告错误。
NULL值是一个特殊值,用于表示某些内容未知或不适用。允许某些列包含NULL值,而其他列则不包含。
答案 3 :(得分:2)
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`;
答案 4 :(得分:1)
插入查询,例如: -
Insert into `tableName`(field1, field2, field3) values ('value1', 'value2', 'value3');
答案 5 :(得分:0)
您收到错误“无主键”,因为您尚未指定有效的唯一主键。
您的桌子必须是4列。
INSERT INTO t_category_values (PRIMARY_KEY, CategoryCode, CategoryValueCode, CategoryValue)
VALUES(pkey_value_here, 2, 1, 1);
您不需要指定主键列的唯一时间是主键是自动增量值。如果它是一个自动增量列,INSERT将自动为您填写该值,您不必担心它。