Inserting Multiple Rows in Sybase ASE
(与SQL Server相关的类似问题:SO Link)
我知道在Sql Server 2008或更高版本中,您可以插入多行执行以下操作:
1 2 | INSERT INTO MyTable (Name, ID) VALUES ('First',1), ('Second',2), ('Third',3) |
但是,似乎此语法在Sybase Adaptive Server Enterprise中不起作用,因为这会给我一个错误。
任何人都知道Sybase中的语法实现了同样的目的吗?
Sybase ASE基于Transact SQL ..
谢谢
Sybase没有像SQL Server那样的插入语法。 显示以下经典方法有什么问题?
1 2 3 4 | INSERT INTO MyTable (Name, ID) VALUES ('First',1) INSERT INTO MyTable (Name, ID) VALUES ('Second',2) INSERT INTO MyTable (Name, ID) VALUES ('Third',3) GO |
看起来该语法在Sybase ASE中无效,但是如链接的SO帖子中所建议的那样,您可以使用
1 2 3 4 5 6 | INSERT INTO MyTable (Name, ID) SELECT 'First',1 UNION ALL SELECT 'Second',2 UNION ALL SELECT 'Third',3 |
试试这个:
1 2 3 4 5 6 | INSERT INTO MyTable (Name, ID) SELECT 'First',1 UNION ALL SELECT 'Second',2 UNION ALL SELECT 'Third',3 |
我知道这适用于旧版本的SQL服务器,并怀疑它可以与sybase一起使用。
此示例的SQL Server中的语法在Sybase中不起作用。 要么使用单个语句,要么使用UNION ALL子句