-1

这是在 sql management studio 下的简单任务。我点击了编辑前 200 行。并将第一组值输入为:

除了 Index 和 rollnumber 之外,一切都应该相同

Index class rollnumber age 
1      A      1         10
2      A      2         10
3      A      3         10
...
10     A      10        10

我遇到的问题是:我复制了第一行并粘贴到了第二行,当我尝试在 sql 编辑器中更改它时,我无法做到。谁能告诉我通过 sql 编辑器执行此操作的最佳方法是什么?

或者在这种情况下是否有更简单的方法来进行 SQL 插入?

4

5 回答 5

2

您可以进行 sql 查询并在编辑器中执行它。

insert into table values( 1, A, 1, 10);
insert into table values( 2, A, 2, 10);
insert into table values( 3, A, 3, 10);
insert into table values( 4, A, 4, 10);
insert into table values( 5, A, 5, 10);
insert into table values( 6, A, 6, 10);
insert into table values( 7, A, 7, 10);
insert into table values( 8, A, 8, 10);
insert into table values( 9, A, 9, 10);
insert into table values( 10, A, 10, 10);
于 2012-07-24T17:59:30.570 回答
0

如果您将其作为主键,请尝试在没有索引字段的情况下复制它。

于 2012-07-24T17:55:58.537 回答
0

我假设索引是一个 IDENTITY 列。数据库将分配值

可能存在差距:这是 IDENTITY 列的本质

在这种情况下,学习使用原始 SQL INSERT 会有所帮助:您可以更好地控制自己所做的事情。SET IDENTITY_INSERT将允许您覆盖身份属性

于 2012-07-24T17:58:13.847 回答
0

您可以将其作为快速 SQL 语句执行(假设您的第一列是 IDENTITY 列):

INSERT INTO dbo.YourTableName(class,rollnumber,age)
VALUES ('A', 10, 10),
       ('A', 11, 10),
       ('A', 12, 10)

这种格式很容易复制和粘贴单个值,直到您将它们全部考虑在内,然后可以运行一次以将它们放入(或保存并在其他环境中重新运行)。

如果索引列不是 IDENTITY 列,而只是它给您一个错误的 UNIQUE 列,您可以将其指定为列并提供额外的唯一值,如下所示:

INSERT INTO dbo.YourTableName(index, class,rollnumber,age)
VALUES (10, 'A', 10, 10),
       (11, 'A', 11, 10),
       (12, 'A', 12, 10)
于 2012-07-24T18:00:30.867 回答
0

如果您的 Index 列是带有 Identity 的主键,您可以使用以下内容创建 N - 1 行:

DECLARE @Counter int;
SET @Counter = 0;

WHILE (@Counter < 10)
BEGIN
INSERT INTO table ([class],[rollnumber],[age]) VALUES ('A',@@IDENTITY + 1,10)
SET @Counter = @Counter + 1
END

这也假设 rollnumber 必须等于您的索引。

于 2012-07-24T18:12:01.443 回答