我在delphi里用的Ado连接sybase.Ado连接sybase,实际上用的是ODBC数据源。
vg_sConnectString := 'Provider=MSDASQL.1;Persist Security Info=True;' +
'User ID=' + sUser + ';Password=' + sPwd + ';Data Provider=MSDASQL;Data Source=' + sDataSource;现在的问题是按字符串,也就是姓名查询时,有时能检索出结果,有时检索不出结果。不知道为什么,
我觉得可能是字符集的问题,但我又不知道字符集在哪里设置。我在odbc里的字符集设置iso_1不起作用。
vg_sConnectString := 'Provider=MSDASQL.1;Persist Security Info=True;' +
'User ID=' + sUser + ';Password=' + sPwd + ';Data Provider=MSDASQL;Data Source=' + sDataSource;现在的问题是按字符串,也就是姓名查询时,有时能检索出结果,有时检索不出结果。不知道为什么,
我觉得可能是字符集的问题,但我又不知道字符集在哪里设置。我在odbc里的字符集设置iso_1不起作用。
解决方案 »
- 对array的record赋值出错
- error reading from socket
- 大家有没有装过ehlib for delphi7
- 为什么我用将字段属性设为fkLookup,KeyFields设为两个字段用分号(XX;XX)割开时,总是提示XX;XX找不到?
- 在一个应用程序(不是我写的)下有几子窗口ClassName都是AfxFrameOrView42s,windows caption为空。windows handle 不同,请问如何取得wi
- up者有分!有关win2000注册表!能解决者可另加分!
- 散分了.
- 一个sql的意义!
- 我想程序在启动时快点
- 怎么计时?
- delphi2007编译Package时编译包的位置
- 大家来看看,一个很简单的问题
建议
select * from 表 where 姓名 like '张三%'
sSql1 :=
'select r.reader_barcode,r.reader_name,r.ident_id,r.reader_gender,' +
'w.workplace_desc,t.readertype_desc,c.code_7' +
' from manager.readers r ' +
' join manager.reader_workplaces w on w.library_id = r.library_id and w.workplace_id = r.workplace_id' +
' join manager.reader_types t on t.library_id = t.library_id and t.readertype_id = r.readertype_id' +
' join manager.code_table c on c.code_type = ''50000'' and r.card_status = c.code_6' +
' and r.reader_name = ' + QuotedStr(Trim(A_sName));
SysDM.qryReaderList.Close;
SysDM.qryReaderList.SQL.Text := sSql1;
try
SysDM.qryReaderList.Open;
A_iFlag := SysDM.qryReaderList.RecordCount;
Result := True;
except
on E:Exception do
begin
ShowMsg(E.Message);
end;
end;
sSql1 := 'select * from manager.readers where reader_name like ' + QuotedStr('%'+Trim(A_sName)+'%');