我是 Sybase 的新手,但熟悉 MS SQL Server。我正在尝试从
sp_columns
中获取结果并将其放入临时表中。正确的语法是什么?
到目前为止,我有以下代码,但它不起作用(下面的错误)。
CALL sp_columns('TableName')( et_result => #ColumnListing) WITH OVERVIEW;
提前致谢!
--编辑以包含错误详细信息和代码。
insert into #temp_table select so.name table_name, sc.name column_name
from syscolumns sc
, sysobjects so
where sc.id = so.id
根据自己的命令展开输出列列表
WITH OVERVIEW
似乎不是 (SAP) SQL Anywhere CALL 语句的一部分 [而且我找不到任何接近它的东西:( et_result => #ColumnListing)
].
我确实在
(SAP) HANA CALL 语句中找到了对
WITH OVERVIEW
的引用 但是(当然)这在 SQL Anywhere 上下文中没有用。
查看 (SAP) SQL Anywhere SQL 参考手册 - SQL 语句 我找不到完全符合您要求的内容,但我认为以下内容符合 INSERT 语句、SELECT 语句 和 FROM 的规范条款:
INSERT into #ColumnListing
select * from sp_columns('CatalogElement')
注意事项:
#ColumnListing
的 DDL(列数、列顺序、数据类型)是正确的,否则 OP 可能需要提供明确的列列表