回 帖 发 新 帖 刷新版面

主题:我想在delphi 中写一句查询语句

查询 返回某表中的某一列的值该怎么写啊
我本来想这么写的,但不行啊,大家帮我看看
Function GetValue(SearchField:string;SearchTable:string):Tstrings;
var
   i:integer;
   tempstr:TStrings;
begin
   tempstr:=TStringlist.Create;
   with frmDm.temp do
   begin
         sql.Clear;
         sql.Add('select distinct :SearchField   from :SearchTable');
         parameters.ParamByName('SearchField').Value:=SearchField;
         parameters.ParamByName('SearchTable').Value:=SearchTable;
         open;
         for i:=1 to recordcount do
         begin
            tempstr.Add(fieldbyname('SearchField').Value);
            Next;
         end;
         result:=tempstr;
  end;
end; 

回复列表 (共1个回复)

沙发

建议你用存储过程,需要用到变量类型nvarchar和一个命令sp_executesql
例如
create proc selectExp
  @table_name nvarchar(1000)
As
declare @sql nvarchar(4000)
   set @sql='select * from '+@table_name
   sp_executesql @sql
GO

我来回复

您尚未登录,请登录后再回复。点此登录或注册