l********n 发帖数: 200 | 1 数据库很多TABLE是这样命名的,如 table_1, table_2,....现在有数字这个参数,怎
么把其中的数据拿出来?
由于数字这个参数,好像没法直接用SELECT..., 我用SET试了试(如下例),但外面定义
的变量t1/t2还不能用,还得在SET里再定义两个参数。如果这样,这些值怎么才能拿出
来用呢?
各位遇到这种情况吗?大家怎么处理的呢?谢谢了。
CREATE PROCEDURE sp_test
@TableID int,
@RecordID int
.
.
.
AS
SET NOCOUNT ON
DECLARE @sl varchar(8000), t1 int, t2 int, ......
SET @sl = 'DECLARE c1 int, c2 int'
SET @sl = @sl + CHAR(13) + 'SELECT @c1 = f1, @c2 =CAST(Right(f2, 5) AS
INTEGER)
SET @sl = @sl + CHAR(13) + 'FROM table_' + CAST(@TableID AS VARCHAR)
SET @s | r****y 发帖数: 26819 | 2 dynamic stored procedure..
【在 l********n 的大作中提到】 : 数据库很多TABLE是这样命名的,如 table_1, table_2,....现在有数字这个参数,怎 : 么把其中的数据拿出来? : 由于数字这个参数,好像没法直接用SELECT..., 我用SET试了试(如下例),但外面定义 : 的变量t1/t2还不能用,还得在SET里再定义两个参数。如果这样,这些值怎么才能拿出 : 来用呢? : 各位遇到这种情况吗?大家怎么处理的呢?谢谢了。 : CREATE PROCEDURE sp_test : @TableID int, : @RecordID int : .
| L*********r 发帖数: 92 | 3 你指的是temp sp?
我倾向于定义另外一个SP.
【在 r****y 的大作中提到】 : dynamic stored procedure..
| l********n 发帖数: 200 | 4 我不懂啊。。。可以麻烦你多说几句吗?
【在 r****y 的大作中提到】 : dynamic stored procedure..
| r****y 发帖数: 26819 | 5 http://www.sommarskog.se/dynamic_sql.html
【在 l********n 的大作中提到】 : 我不懂啊。。。可以麻烦你多说几句吗?
| l********n 发帖数: 200 | 6 没大读懂,不过这个东西很管用,问题是解决了。
再次感谢!
【在 r****y 的大作中提到】 : http://www.sommarskog.se/dynamic_sql.html
|
|