create table table_1
(column_1 int not null,
  column_2 char(10) null)
go
insert table_1 values (89,null)
go
declare @var1 int
set @var1=9
update table_1 
  set column_1=@var_1
where column_1=89
go
看做是一个字符串。在需要的地方写入参数。
如:ss := 'declare @var1 int set @var1= '+参数+' update table_1    set mn_1=@var_1  where column_1=89 '
然后设置sql为这个字符串。执行就可以了。
附: 如果为char则;
ss := 'declare @var1 char set @var1= '+''''+参数+''''+' update table_1    set mn_1=@var_1  where column_1=89 '
具体情况我没试过。您根据这个思想就可以了。另外一种方法是用存储过程。利用存储过程的ParamByName(const Value: String): TParam;动态的写入参数。