系統自帶的DataSnap 三層架構DataSnap和 使用FireDAC組件的例子,使用TFDConnection鏈接并使用TStream方式傳輸、使用FireDAC控制元件完成呼叫的DataSnap的例子。 上面用的是sqlite資料庫,
問下,換上mssql資料庫可以嗎?我換成mssql資料庫后,有以下報錯。

難道msSql資料庫不支持Tstream方式傳輸嗎,
----------
procedure TClientForm.GetTables;
var
LStringStream: TStringStream;
begin
FDStoredProcGet.ExecProc;
LStringStream := TStringStream.Create(FDStoredProcGet.Params[0].asBlob);
try
if LStringStream <> nil then
begin
LStringStream.Position := 0;
DataModuleFDClient.FDSchemaAdapter.LoadFromStream(LStringStream, TFDStorageFormat.sfBinary);
end;
finally
LStringStream.Free;
end;
end;
----------
以上程序執行到DataModuleFDClient.FDSchemaAdapter.LoadFromStream(LStringStream, TFDStorageFormat.sfBinary); 報的錯
uj5u.com熱心網友回復:

最下邊這個demo
uj5u.com熱心網友回復:
系統自帶的例子c:\Users\Public\Documents\Embarcadero\Studio\19.0\Samples\Object Pascal\DataSnap\FireDACuj5u.com熱心網友回復:
找到問題所在了,客戶端需要select兩個表,我之前都是select 所有欄位,后來都只select主要的欄位,可以查詢成功了。高手指教說datasnap 通過stream傳輸大資料是分多個資料包傳輸,客戶端接受需要進行處理才行,目前在進一步學習中。。。。uj5u.com熱心網友回復:
uj5u.com熱心網友回復:
delphi xe Datasnap使用FireDAC連接MSSQL2000客戶端執行FireDAC連接時,總是報錯,你又辦法嗎?:
Exception EIPAbstractError in module at 00780958
提示No peer with the interface with
guid {9BB0BE5C-9D9E-485E-803D-999645CE1B8F} has been registered.
uj5u.com熱心網友回復:
如果要變更資料庫的型別,可以通過連接的控制元件進行變更。比如通過TADOConnection連接,只要變更套接字,即可。
uj5u.com熱心網友回復:
建議使用json傳輸資料。使用流問題比較多。轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/39536.html
標籤:數據庫相關
