當前位置:首頁 » 編程語言 » firedacsqlserver
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

firedacsqlserver

發布時間: 2022-04-21 05:40:33

① 什麼是正確的方法來動態創建和使用FireDac調用存儲過程在Delphi

"If you have difficulties with manual definition of parameters,
populate the Params collection automatically and check how the
parameters are defined. Then compare that to your code. "

但我無法找到「自動」填充PARAMS的方式。我問的EMBA課程
FireDac新聞組和FD作者德米特里Arefiev,請解釋說,
你可以做到這一點通過檢查FetchOptions包括fiMeta,然後清除並設置FDStoredProc的
使用在演示我的sqlServer的定義如下:資料庫的pubs都只有StoredProc:
create procere test(@ANumber int, @AName varchar(20))
as
begin
select
@ANumber * 2 as "Number",
@AName + @AName as "Name"
end

我換了一對夫婦的OP的代碼段是這樣
[...]
LSP.Params.Clear;
LSP.StoredProcName := '';
LSP.FetchOptions.Items := LSP.FetchOptions.Items + [fiMeta];
LSP.StoredProcName := aSPName;
LSP.Prepare;
Assert(LSP.ParamCount > 0);
for i := 0 to aParams.Count - 1 do
begin
LSP.Params.ParamByName(aParams[i].Name).Value := aParams[i].Value;
end;
[...]
procere TForm21.Button1Click(Sender: TObject);
var
LParams: TFDParams;
Param : TFDParam;
begin
LParams := TFDParams.Create;
Param := LParams.Add;
Param.Name := '@ANumber';
Param.Value := 612;
Param := LParams.Add;
Param.Name := '@AName';
Param.Value := '2008';
ExecuteStoredProc('test', LParams);
end;

它工作得很好。
該在Q他優先次有這樣的SP無法執行的問題
但他會發現
CodeGo.net,它的工作,如果他「[下降],建立在代碼中PARAMS」,所以我想我會在這里有,當然其中必然一切都在代碼中做一個控制台應用程
序。這並不困難,但它得到了利用右邊是我的主要理由,張貼此作為一個答案,以供將來參考。 W / O型的你會得到關於類工廠是缺失的。
控制台應用程序(創建,並在XE6測試):
program ConsoleStoredProcProject3;
{$APPTYPE CONSOLE}
{$R *.res}
uses
System.SysUtils, FireDac.DApt, FireDAC.Stan.Def, FireDAC.Stan.ASync,
FireDAC.Stan.Param, FireDAC.Stan.Option, FireDAC.Comp.Client,
FireDAC.Phys.MSSQL, VCL.ClipBrd;
procere TestSP;
var
Connection : TFDConnection;
StoredProc : TFDStoredProc;
Param : TFDParam;
begin
Connection := TFDConnection.Create(Nil);
Connection.DriverName := 'MSSQL';
Connection.Params.Values['Server'] := // your server name'';
Connection.Params.Values['Database'] := 'pubs';
Connection.Params.Values['user_name'] := 'user'; // adjust to suit
Connection.Params.Values['password'] := 'password'; // ditto
Connection.LoginPrompt := False;
Connection.Connected := True;
StoredProc := TFDStoredProc.Create(Nil);
StoredProc.Connection := Connection;
StoredProc.FetchOptions.Items := StoredProc.FetchOptions.Items + [fiMeta];
StoredProc.StoredProcName := 'test';
StoredProc.Prepare;
Param := StoredProc.Params.ParamByName('@ANumber');
Param.Value := 333;
Param := StoredProc.Params.ParamByName('@AName');
Param.Value := 'A';
StoredProc.Active := True;
WriteLn(StoredProc.FieldByName('Number').AsInteger);
WriteLn(StoredProc.FieldByName('Name').AsString);
ReadLn;
end;
begin
try
TestSP;
except
on E: Exception do
Clipboard.AsText := E.Message;
end;
end.

② sqlserver filestream怎麼觸發垃圾回收

不能,由於FileStream數據容器(指的是存放FileStream文件的NTFS文件夾,杜撰出來的術語)必須像數據文件或日誌文件那樣符合本地存儲策略-也就是說,這個數據容器必須放在對於運行SQL Server的Windows Server是本地存儲(譯者註:也就是在『計算機』里能看到的存儲,DAC當然是了
其實SAN這類不直接連接伺服器的也算是)訪問FileStream數據只要客戶端連接到了SQL Server伺服器並獲取響應的事務上下文後,就可以通過UNC路徑進行訪問了。

③ 想了解SQL server

SQL Server(MSSQLSERVER)是必須要開啟的,這個是資料庫引擎服務,就像汽車的發動機一樣。
SQL Server代理(MSSQLSERVER)是代理服務,比如你有一些自動運行的,定時作業,或者是一些維護計劃,比如定時備份資料庫等操作,那麼就要打開,否則,就不會備份資料庫了。
SQL Server Reporting Services (MSSQLSERVER)是報表服務,一般不用開啟,除非你做了報表,通過這個組件來提供報表服務,才需要開啟。
SQL Server Analysis Services (MSSQLSERVER)是分析服務,一般不用開啟,除非你做多位分析,和數據挖掘,才需要開啟。
SQL Full-text Filter Daemon Launcher (MSSQLSERVER)是全文檢索服務,如果你沒有使用全文檢索技術,那麼也不需要開啟。
SQL Server VSS Writer影拷貝服務(VolumeShadowCopyService,VSS)是Microsoft在WindowsServer2003中開始引入的服務,它能讓用戶在沒有IT專業人員協助的情況下,更輕松地恢復丟失的文件。這個讓sql server應該是sqlwriter和windows交互,實現這個影拷貝服務的。不過關閉,也沒什麼影響,因為在sql server中,還是要通過常規的資料庫備份、日誌備份來保證數據的安全,這個vss只是個很虛的東西,沒什麼用處。
SQL Browser主要是指在你的伺服器上有多個sql server實例的情況下,通過這個sql browser來提供一些服務:
瀏覽可用伺服器列表,比如你的機器上有3個實例,那麼就會返回這3個實例的信息給你
連接到正確的伺服器實例
連接到專用管理員連接 (DAC) 端點
一般如果你知道要連接哪個實例,建議你關閉這個服務。
其實一般你要進行遠程訪問,不需要開啟sql browser,通過:伺服器ip,埠 這種方式就可以訪問遠程的伺服器。

④ sql server 2005怎樣使用DAC管理員連接,連接本地伺服器的就可以

你是用SSMS工具嗎,打開工具出現登錄界面時不要直接使用DAC方式進行連接,而是選擇取消。然後單擊「新建查詢」,出現登錄界面時在伺服器名稱前加admin:(注意不是登錄名前)來登錄即可。
使用sqlcmd的話,還要在-S選項後寫上你的sql server的名字,一般是你的計算機名。

⑤ sqlserver遠程版本信息泄漏怎麼處理

最關鍵原因:windows firewall開啟的原因。
添加例外:
Windows Vista 和 Windows Server 2008 以及更高版本
以下過程通過使用具有高級安全 Microsoft 管理控制台 (MMC) 管理單元的 Windows 防火牆來配置該 Windows 防火牆。從 Windows Vista 和 Windows Server 2003 開始提供此管理單元。高級安全 Windows 防火牆僅配置當前配置文件。有關高級安全 Windows 防火牆的詳細信息,請參閱配置 Windows 防火牆以允許 SQL Server 訪問。
打開 Windows 防火牆的埠以進行 TCP 訪問
在「開始」菜單上,單擊「運行」,鍵入 WF.msc,然後單擊「確定」。
在「高級安全 Windows 防火牆」的左窗格中,右鍵單擊「入站規則」,然後在操作窗格中單擊「新建規則」。
在「規則類型」對話框中,選擇「埠」,然後單擊「下一步」。
在「協議和埠」對話框中,選擇 TCP。選擇「特定本地埠」,然後鍵入資料庫引擎實例的埠號,例如默認實例的埠號 1433。單擊「下一步」。
在「操作」對話框中,選擇「允許連接」,然後單擊「下一步」。
在「配置文件」對話框中,選擇在您想要連接到資料庫引擎時描述計算機連接環境的任何配置文件,然後單擊「下一步」。
在「名稱」對話框中,輸入此規則的名稱和說明,再單擊「完成」。
在使用動態埠時打開對 SQL Server 的訪問
在「開始」菜單上,單擊「運行」,鍵入 WF.msc,然後單擊「確定」。
在「高級安全 Windows 防火牆」的左窗格中,右鍵單擊「入站規則」,然後在操作窗格中單擊「新建規則」。
在「規則類型」對話框中,選擇「程序」,然後單擊「下一步」。
在「程序」對話框中,選擇「此程序路徑」。單擊「瀏覽」,導航到要通過防火牆訪問的 SQL Server 實例,再單擊「打開」。默認情況下,SQL Server 位於 C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn\Sqlservr.exe。單擊「下一步」。
在「操作」對話框中,選擇「允許連接」,然後單擊「下一步」。
在「配置文件」對話框中,選擇在您想要連接到資料庫引擎時描述計算機連接環境的任何配置文件,然後單擊「下一步」。
在「名稱」對話框中,輸入此規則的名稱和說明,再單擊「完成」。
網路查詢解決方案:
Step 1: 在伺服器圖標上單擊右鍵,選擇property,然後選connection,把allow remote connection選上,這一步的目的是讓資料庫允許遠程連接。

Step 2: 在資料庫伺服器圖標上,展開目錄,找到Security下的Logins子目錄樹,設置SA賬戶的屬性,改password,在status欄里,login選上enable。這一步的目的是,允許遠程客戶端使用sa用戶鄧肯,sa是system administrator的縮寫,擁有資料庫最高管理許可權,默認狀態下是禁用的。

Step3:在資料庫伺服器圖標上右鍵,打開Facets選項把RemoteDacEnabled的value改成true。這一步的目的是允許建立遠程專用管理員連接,此種連接擁有最高許可權,即使無法建立標准連接,也可以建立DAC連接。

Step4:開啟服務,打開SQL Server Configuration Tool,打開網路配置,選擇TCP/IP協議,點開屬性,IP地址填資料庫所在伺服器的IP地址,如果是本地伺服器,填127.0.0.1。

測試方法:

建立一個C# Console application源文件,代碼如下:

[c-sharp] view plain
class Program
{
static void Main(string[] args)
{
SqlConnection con = new SqlConnection("server=.;uid=sa;pwd=123456789;database=MyTable");

try
{
con.Open();

Console.WriteLine("連接資料庫成功");
}
catch
{
Console.WriteLine("無法連接資料庫");
}

Console.ReadKey();

}
}

如果能正常連接,則會提示連接成功。

Sql Server 2005的1433埠打開和進行遠程連接

SQL code

如何打開sql server 2005 的1433埠

配置工具->Sql Server Configuration Manager->MSSQLSERVER的協議

看看TCP/IP協議是否啟動,如果啟動,右鍵菜單點"屬性" ,在分頁菜單中選"IP地址",把"IP1"和"IP2"中"TCP埠"為1433,

"已啟用"改為"是"

配置工具->Sql Server Configuration Manager->SQL Native Client 配置->客戶端協議->TCP/IP

選擇TCP/IP右鍵菜單中"屬性",確認"默認埠"是1433,"已啟用"為"是"

SQL code

SQL Server 2005 遠程連接

配置TCP/IP屬性.

Surface Area Configuration --> Database Engine --> Remote Connections --->Using TCP/IT

SQL Server 外圍應用配置器—服務和連接外圍配置—database englie—遠程連接—啟用(遠程連接的TCP/IP和named pipes)

SQL Server Configuration Manager—SQL2005網路配置—啟用TCP/IP和named pipes

-----------------------------------------------------------------------------------------

一般按如上即可.

其他說明見下:

sqlserver2005(Express版),為了便於管理,你還需要去下一個manage管理器,微軟的官方網站有

下,安裝好manage管理器後,在程序中連接sqlserver2005,下面幾點是要注意的。

1. 開啟sql2005遠程連接功能,開啟辦法如下,

配置工具->sql

server外圍應用配置器->服務和連接的外圍應用配置器->打開MSSQLSERVER節點下的Database Engine

節點,先擇"遠程連接",接下建議選擇"同時使用TCP/IP和named pipes",確定後,重啟資料庫服務就可以了.

2.登陸設置改為,Sql server and windows Authentication方式同時選中,具體設置如下:

manage管理器->windows

Authentication(第一次用windows方式進去),->對象資源管理器中選擇你的數據伺服器--右鍵>屬

性>security>Sql server and windows Authentication方式同時選中.

3:設置一個Sql server方式的用戶名和密碼,具體設置如下:

manage管理器->windows Authentication>new query>sp_password null,'sa123456','sa'

這樣就設置了一個用戶名為sa ,密碼為:sa123456的用戶,下次在登陸時,可以用Sql server方式,

用戶名為sa ,密碼為:sa123456的用戶進資料庫了.

4: 做完上面三步後,這樣寫連接字元串就可以順利進入資料庫了,

(server=.\\sqlexpress;uid=sa;pwd=sa123456;database=master";

其它版本,做如下設置

程序—Microsoft SQL Server 2005—配置工具—SQL Server 外圍應用配置器—服務和連接的外圍應用配置器—

1、MSSQLserver(實例名)—DataBase Engine—遠程連接—(設置選項)

在下方選項

2、SQL Server Browser—服務(停止時只本機訪問)

3、程序—Microsoft SQL Server 2005—配置工具—SQL Server Configuration Manager—網路連接協議-選擇實例對應協議—啟用(shard memory、Named Pipes、TCP\IP)

注: SQL Server 瀏覽器程序以服務的形式在伺服器上運行。SQL Server 瀏覽器偵聽對 Microsoft SQL Server 資源的傳入請求,

並提供計算機上安裝的 SQL Server 實例的相關信息。

SQL Server 瀏覽器可用於執行下列三種操作:

瀏覽可用伺服器

連接到正確的伺服器實例

連接到專用管理員連接 (DAC) 端點

SQL Server Browser 服務 (sqlbrowser) 為資料庫引擎 和 SSAS 的每個實例提供實例名稱和版本號。

SQL Server 瀏覽器隨 Microsoft SQL Server 2005 一起安裝,

為該計算機上運行的早期版本的 SQL Server(從 Microsoft SQL Server 7.0 開始)提供此服務。

⑥ SQLSERVER08 R2的數據層應用程序DAC 到底好在哪裡

我是一個新手,我想問一下C++到底比C的優越性體現在哪裡,我認為C++只不過是把函數放在數據結構中,其他也沒什麼.

⑦ 如何使用SQL Server 2005 DAC 登錄到伺服器

即使在
SQL
Server
不響應標准連接請求時,管理員也可以使用這種連接訪問
SQL
Server,以便執行診斷查詢並解決問題。命令行界面
(sqlcmd)
通過使用特殊的管理員開關
(-A),提供並支持這種專用管理員連接
(DAC)。二
如何使用DAC登錄到伺服器
1
本機DAC登錄
命令行方式下執行
sqlcmd
-A
-S
sql伺服器名
2
遠程DAC登錄
1)
打開遠程DAC選項
'程序'-'Sql
Server2005'-
'配置工具'-
'Sql
Server
外圍應用配置器'-
'功能的外圍應用配置器'-
'DataBase
Engine'-
'DAC'
-
'啟用遠程DAC'
2)
登錄到遠程伺服器3
登錄後,
可以通過查詢動態管理視圖來診斷問題

⑧ sql server 2008無法遠程連接

一、資料庫引擎沒有啟動有兩種啟動方式:(1)開始->程序->MicrosoftSQLServer2008->SQLServer2008外圍應用配置器,在打開的界面單擊"服務的連接的外圍應用配置器",在打開的界面中找到DatabaseEngine,單擊"服務",在右側查看是否已啟動,如果沒有啟動可單擊"啟動",並確保"啟動類型"為自動,不要為手動,否則下次開機時又要手動啟動;(2)可打開:開始->程序->MicrosoftSQLServer2008->配置工具->SQLServerConfigurationManager,選中SQLServer2008服務中SQLServer(MSSQLSERVER),並單擊工具欄中的"啟動服務"按鈕把服務狀態改為啟動;使用上面兩種方式時,有時候在啟動的時候可能會出現錯誤,不能啟動,這時就要查看"SQLServer2008配置管理器"中的SQLServer2008網路配置->MSSQLSERVER協議中的VIA是否已啟用,如果已啟用,則把它禁止.然後再執行上述一種方式操作就可以了。二、進行遠程連接時,是否已允許遠程連接.SQLServer2008在默認情況下僅限本地連接.我們可以手動啟用遠程連接.在上面第一種方式中,找到DatabaseEngine,單擊"遠程連接",在右側將"僅限本地連接(L)"改為"本地連接和遠程連接(R)",並選中"同時使用TCP/IP和namedpipes(B)".三、如果是遠程連接,則還要查看連接資料庫的語句是否正確,登錄賬戶是否正確,密碼是否正確等.

⑨ sql server服務,誰能詳細介紹一下

SQL Server FullText Search (MSSQLSERVER):全文檢索服務
如果有全文索引的話要啟動SQL Server FullText Search 沒有的話啟動不啟動沒有影響的

SQL Server Agent 是一個任務規劃器和警報管理器,在實際應用和環境下,您可以將那些周期性的活動定義成一個任務,而讓其在SQL Server Agent 的幫助下自動運行;假如您是一名系統管理員,則可以利用SQL Server Agent 向您通知一些警告信息,來定位出現的問題從而提高管理效率。SQL Server Agent 主要包括以下幾個組件:作業;警報;操作。
主要執行以下步驟在SQL Server Enterprise Manager 中配置SQL Server Agent:

(1) 啟動SQL Server Enterprise Manager, 登錄到指定的伺服器打開Management 文件夾,啟動SQL Server Agent。
(2) 右擊SQL Server Agent 圖標,在彈出菜單中選擇Properties 選項。打開SQL Server Agent Properties 對話框,選中General 標簽頁。如圖17-1 所示。其中各選項的含義為:
System account: 定義SQL Server Agent 運行於哪個系統賬號下,該系統賬號是sysadmin 角色的成員;
This account: 定義SQL Server Agent 運行於哪一個NT 賬號下,該賬號必須是運行SQL Server Agent 伺服器上的sysadmin 角色,選擇此選項,必須在Password處提供密碼。常在下列情況中選中該選項:
把事件轉寄到其它NT 計算機的應用日誌;
如何來創建一個作業,該作業要使用多個計算機上的資源;
通過電子郵件或尋呼通知操作員消息。
Mail Profile 有效的郵件配置文件名,該文件保存通過SQL Mail 為SQL ServerAgent 運行賬號配置的郵件系統正常工作的配置信息;
Save copies of the sent messages in the Sent Items folder: 指定發送消息存放的文件目錄;
File name: 指定SQL Server Agent 日誌文件名,預設名為C:\Mssql7\Log\Sqlagent.out;
Error message pop-up recipient 指定接收網路彈出錯誤消息的接收者名字,這些錯誤消息由SQL Server Agent 寫入它的錯誤日誌。
(3) 選中Advanced 標簽頁
Auto restart SQL Server if it stops unexpectedly :表示如果SQL Server 意外停止運行,則將自動重新啟動;
Auto restart SQL Server Agent if it stops unexpectedly: 表示如果SQL Server Agent意外停止運行,則將自動重新啟動;
Forward events to a different server: 表示將事件轉寄給其它伺服器。在Server 旁的下拉列表中選擇接收伺服器;
Unhandled events: 表示轉寄那些不是在本地伺服器上處理的事件;All 表示所有事件;
If error has severity of or above: 表示只有在錯誤等級大於或等於給定值時,才將事件轉寄給所選伺服器;
Idle CPU(s) Condition: 定義了CPU 空閉狀態的屬性值,即CPU 平均使用率低於給不定期值且該狀態持續的時間超過給定時間,則認為CPU 處於空閉狀態。
4) 選中Alert System 標簽頁
Address formatting for page e-mails: 該區域用來設定消息屬性並在尋呼信息中加入錯誤信息;
Fail-safe operator: 表示失敗安全型操作員,如果由於不確定的原因使消息無法到達指定的操作員,則SQL Server Agent 會把該消息傳給失敗安全型操作員;
(5) 選中Job System 標簽頁
Job history log: 該區域指定日誌的大小以及每件作業的最大行數,從而避免填滿msdb 資料庫;
Job execution: 該區域用來設定在作業執行結束前SQL Server Agent 的最長等待時間,如果超過這一時間作業仍沒有執行,則SQL Server Agent 將關閉;
Non-SysAdmin job step proxy account: 該區域用來設定執行CmdExec 和ActiveScripting
作業的限制。
(6) 選中Connection 標簽頁
SQLServer Connection: 該區域定義了將SQL Server Agent 連接到SQL Server 時使用的認證模式;
SQLServer alias 定義:本地SQL Server 伺服器的別名。
注意:配置完SQL Server Agent之後需要重新啟動,這樣配置才能生效

SQL Server 瀏覽器程序以 Windows 服務的形式運行。SQL Server 瀏覽器偵聽對 MicrosoftSQL Server 資源的傳入請求,並提供計算機上安裝的 SQL Server 實例的相關信息。SQL Server 瀏覽器可用於執行下列操作:

瀏覽可用伺服器列表

連接到正確的伺服器實例

連接到專用管理員連接 (DAC) 端點

SQL Server Browser 服務 (sqlbrowser) 為資料庫引擎和 SSAS 的每個實例提供實例名稱和版本號。SQL Server 瀏覽器隨 SQL Server 一起安裝,為該計算機上運行的早期版本的 SQL Server(從 SQL Server 7.0 開始)提供此服務。

SQL Server 瀏覽器可以在安裝過程中進行配置,也可以使用 SQL Server 配置管理器進行配置。默認情況下,SQL Server Browser 服務會自動啟動:

MicrosoftIntegration Services 是用於生成企業級數據集成和數據轉換解決方案的平台。使用 Integration Services 可解決復雜的業務問題,具體表現為:復制或下載文件,發送電子郵件以響應事件,更新數據倉庫,清除和挖掘數據以及管理 SQL Server 對象和數據。這些包可以獨立使用,也可以與其他包一起使用以滿足復雜的業務需求。Integration Services 可以提取和轉換來自多種源(如 XML 數據文件、平面文件和關系數據源)的數據,然後將這些數據載入到一個或多個目標。

Integration Services 包含一組豐富的內置任務和轉換、用於構造包的工具以及用於運行和管理包的 Integration Services 服務。可以使用 Integration Services 圖形工具來創建解決方案,而無需編寫一行代碼;也可以對各種 Integration Services 對象模型進行編程,通過編程方式創建包並編寫自定義任務以及其他包對象的代碼。

⑩ sql server為什麼不能用以DAC方式登陸(ADMIN:用戶名)。

final String DRIVERNAME = "com.microsoft.sqlserver.jdbc.SQLServerDriver";

final String DBURL = "jdbc:sqlserver://localhost:3437;databaseName=netshop";

final String DBUSER = "sa";

final String DBPWD = "123";

public Connection conn;

public ResultSet rs;

public DBConn() {
// TODO Auto-generated constructor stub
getConn();
}

public Connection getConn() {
try {
Class.forName(DRIVERNAME);
conn = DriverManager.getConnection(DBURL, DBUSER, DBPWD);
//System.out.println("ok");

} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
System.out.println("驅動未找到");
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("資料庫未找到");
e.printStackTrace();
}
return conn;
}
是這個嗎?
中間的那個 是電腦隨機產生的,所以每次啟動機器時,都要查看後再進行修改。
這么查看的:
右擊我的電腦--管理---服務 --SQL2005 --查看IP埠號。。

希望有用!!!