dll資料庫
1. 電腦常識:Dll資料庫是什麼,其作用是
如果你這里提到的「DII」是小寫"dll",那麼「Dll資料庫」的說法有點別扭。DLL不是資料庫,正確的說法為:運行時動態鏈接庫。運行時是指你的程序處在運行階段;動態是指你的DLL是以獨立文件的形式存在(例如你安裝了某個軟體後,總能在這個軟體的安裝目錄下找到擴展名為DLL的單獨文件);鏈接庫,顧名思義,就是讓你的程序連接到這個DLL文件,並使用DLL裡面的東西。DLL裡面有什麼東西??—— 都是些過程或函數,DLL其實就是一個裝了很多函數的一個倉庫。你的程序能在運行使用的過程中,連接到這個DLL文件,然後調用DLL文件裡面的某個函數。 如果你題目中的「Dll」換成小寫是"dii",那麼dii資料庫的說法就正確了。dii:(Defense Information Infrastructure)國防信息基礎設施以作戰人員作為支持對象,是屬於國防部和國家的資產。它是國防部長辦公室(OSD)每名基本參謀助理(PSA)、參謀長聯席會議、戰斗指揮員、各獨立軍種以及各國防機構所擁有的全部信息管理資產的總和。DII是國防部內各獨立信息管理計劃綜合的產物。DII主計劃是一種管理DII發展的工具,是OSD、聯合參謀部以及各軍種和各國防機構共同努力的成果。它反映了為實現勇士C[RU4]I(C[RU4]IFTW)設想和2010聯合設想的所有國防部用戶、運營者及擁有者的觀點。換言之,dii資料庫就是"國防信息基礎設施資料庫"。 另一個dii: 聊天軟體dii聊天軟體"dii"的中文名稱是「滴(Dii)」;dii資料庫就是聊天軟體"滴"所用到的資料庫,簡稱為"滴資料庫";使用「滴(Dii)」非常簡單,你可以直接下載一個客戶端,並通過注冊和激活帳號成為一位新新滴油,別擔心,無數熱心的網友會幫助你使用和愛上這種聊天方式的。不過,還是有一些技巧你需要首先掌握。 滴dii,我的生活直播! 這是一個完全不同與QQ和MSN的全新聊天工具! 140字的純文本交換,沒有華麗的圖片和動畫,簡單的像一張任你塗鴉的白紙。在滴上,你可以漫無目的的發言,也可以嚴肅的表達你的價值,成敗得失也罷,呢喃細語也成,總有關注你的聽眾,即使遠在千里之外,你們甚至都會成為知音。生活在次世代的你,需要表達和關注,我們拒絕孤單。 滴,是一個免費的客戶端軟體,可以通過滴即時的將生活點滴秀出來,直播你此刻正在做什麼。
2. 在DLL文件中可以打開指定的資料庫表嗎如何打開
你可以在DLL中使用數據模塊,把資料庫組件扔在數據模塊上,動態創建這個數據模塊就行了。如果你用的是BDE方式,就不必多考慮什麼,如果在DLL中使用了ADO之類的COM。。。也行的。。。
3. 誰解釋一下 DDL文件 和 DLL文件 啊
DLL是Dynamic Link Library的縮寫,意為動態鏈接庫。DLL文件一般被存放在C:WindowsSystem目錄下。DLL是一個包含可由多個程序同時使用的代碼和數據的庫
參考資料:http://ke..com/view/230750.htm
DLL文件:
資料庫模式定義語言DDL(Data Definition Language),是用於描述資料庫中要存儲的現實世界實體的語言。一個資料庫模式包含該資料庫中所有實體的描述定義。這些定義包括結構定義、操作方法定義等。
DDL描述的模式,必須由計算機軟體進行編譯,轉換為便於計算機存儲、查詢和操縱的格式,完成這個轉換工作的程序稱為模式編譯器。
模式編譯器處理模式定義主要產生兩種類型的數據:數據字典以及數據類型和結構定義。
數據字典和資料庫內部結構信息是創建該模式所對應的資料庫的依據,根據這些信息創建每個資料庫對應的邏輯結構;對資料庫數據的訪問、查詢也根據模式信息決定數據存取的方式和類型,以及數據之間的關系和對數據的完整性約束。
數據字典是模式的內部信息表示,數據字典的存儲方式對不同的DBMS各不相同。
數據類型和結構的定義,是指當應用程序與資料庫連接操作時,應用程序需要了解產生和提取的數據類型和結構。是為各種宿主語言提供的用戶工作區的數據類型和結構定義,使用戶工作區和資料庫的邏輯結構相一致,減少數據的轉換過程,這種數據類型和結構的定義通常用一個頭文件來實現。
資料庫模式的定義通常有兩種方式: 交互方式定義模式和通過數據描述語言 DDL 描述文本定義模式。 常見的DDL語句
4. 如何將資料庫連接和訪問做到一個DLL裡面
將資料庫組件封裝到動態庫中,拋出資料庫的連接,查詢,執行等介面
5. 軟體的dll文件就是資料庫文件嗎dll文件里是什麼作用和功能是什麼如何製作和編寫dll文件
你好:
很高興能幫到您,嗯嗯,如您所說,這個DLL其實是一個動態鏈接庫文件,是一些多個程序同時使用的代碼
,如果您想要打開,只有運行一些文件就可以了(Windows的程序在Windows環境下操作
)。建議您不要刪除哈,一旦刪除肯定會出問題的。
如果你的電腦提示丟失的話:
去網上下載這個DLL文件,將其放置到system32目錄下面
重啟系統,或者在CMD下面運行regsvr32 *.dll注冊該DLL
同時我還推薦用管家修復缺失DLL文件的,騰訊電腦管家的電腦診所有這個功能喲!
如果您對我的答案不滿意,可以繼續追問或者提出寶貴意見,謝謝,祝您生活愉快
6. 為什麼資料庫是DLL的
應該是一個數據文件.這個數據文件你也可以簡單地把它看成一個資料庫.
至於如何操作裡面的數據就好比操作一個XML文件一樣.你可以把數據存儲在XML文件里,所以你從某種程度上也可以把這個XML文件看作一個數據文件或資料庫.
至於後綴正如上面的XD所說的,這僅是個後綴而已,你是可以自己修改的。
7. 如何查看DLL中的資料庫
後綴為dll的資料庫文件為動態鏈接庫,要載入到軟體上才能用。
附:DLL文件(Dynamic Linkable Library 即動態鏈接庫文件),是一種不能單獨運行的文件,它允許程序共享執行特殊任務所必需的代碼和其他資源
比較大的應用程序都由很多模塊組成,這些模塊分別完成相對獨立的功能,它們彼此協作來完成整個軟體系統的工作。可能存在一些模塊的功能較為通用,在構造其它軟體系統時仍會被使用。在構造軟體系統時,如果將所有模塊的源代碼都靜態編譯到整個應用程序 EXE 文件中,會產生一些問題:一個缺點是增加了應用程序的大小,它會佔用更多的磁碟空間,程序運行時也會消耗較大的內存空間,造成系統資源的浪費;另一個缺點是,在編寫大的 EXE 程序時,在每次修改重建時都必須調整編譯所有源代碼,增加了編譯過程的復雜性,也不利於階段性的單元測試。
Windows 系統平台上提供了一種完全不同的較有效的編程和運行環境,你可以將獨立的程序模塊創建為較小的 DLL 文件,並可對它們單獨編譯和測試。在運行時,只有當 EXE 程序確實要調用這些 DLL 模塊的情況下,系統才會將它們裝載到內存空間中。這種方式不僅減少了 EXE 文件的大小和對內存空間的需求,而且使這些 DLL 模塊可以同時被多個應用程序使用。Windows 自己就將一些主要的系統功能以 DLL 模塊的形式實現。
8. (.db)資料庫 (.dll)動態鏈接庫
一個是存放數據的,一個是存放使用函數的!
9. 後綴為dll的資料庫文件怎樣解讀
後綴為dll的資料庫文件為動態鏈接庫,要載入到軟體上才能用。
附:DLL文件(Dynamic Linkable Library 即動態鏈接庫文件),是一種不能單獨運行的文件,它允許程序共享執行特殊任務所必需的代碼和其他資源
比較大的應用程序都由很多模塊組成,這些模塊分別完成相對獨立的功能,它們彼此協作來完成整個軟體系統的工作。可能存在一些模塊的功能較為通用,在構造其它軟體系統時仍會被使用。在構造軟體系統時,如果將所有模塊的源代碼都靜態編譯到整個應用程序 EXE 文件中,會產生一些問題:一個缺點是增加了應用程序的大小,它會佔用更多的磁碟空間,程序運行時也會消耗較大的內存空間,造成系統資源的浪費;另一個缺點是,在編寫大的 EXE 程序時,在每次修改重建時都必須調整編譯所有源代碼,增加了編譯過程的復雜性,也不利於階段性的單元測試。
Windows 系統平台上提供了一種完全不同的較有效的編程和運行環境,你可以將獨立的程序模塊創建為較小的 DLL 文件,並可對它們單獨編譯和測試。在運行時,只有當 EXE 程序確實要調用這些 DLL 模塊的情況下,系統才會將它們裝載到內存空間中。這種方式不僅減少了 EXE 文件的大小和對內存空間的需求,而且使這些 DLL 模塊可以同時被多個應用程序使用。Windows 自己就將一些主要的系統功能以 DLL 模塊的形式實現。
一般來說,DLL 是一種磁碟文件,以.dll、.DRV、.FON、.SYS 和許多以 .EXE 為擴展名的系統文件都可以是 DLL。它由全局數據、服務函數和資源組成,在運行時被系統載入到調用進程的虛擬空間中,成為調用進程的一部分。如果與其它 DLL 之間沒有沖突,該文件通常映射到進程虛擬空間的同一地址上。DLL 模塊中包含各種導出函數,用於向外界提供服務。DLL 可以有自己的數據段,但沒有自己的堆棧,使用與調用它的應用程序相同的堆棧模式;一個 DLL 在內存中只有一個實例;DLL 實現了代碼封裝性;DLL 的編制與具體的編程語言及編譯器無關。
在 Win32 環境中,每個進程都復制了自己的讀/寫全局變數。如果想要與其它進程共享內存,必須使用內存映射文件或者聲明一個共享數據段。DLL 模塊需要的堆棧內存都是從運行進程的堆棧中分配出來的。Windows 在載入 DLL 模塊時將進程函數調用與 DLL 文件的導出函數相匹配。Windows 操作系統對 DLL 的操作僅僅是把 DLL 映射到需要它的進程的虛擬地址空間里去。DLL 函數中的代碼所創建的任何對象(包括變數)都歸調用它的線程或進程所有。
調用方式:
1、靜態調用方式:由編譯系統完成對 DLL 的載入和應用程序結束時 DLL 卸載的編碼(如還有其它程序使用該 DLL,則 Windows 對 DLL 的應用記錄減1,直到所有相關程序都結束對該 DLL 的使用時才釋放它,簡單實用,但不夠靈活,只能滿足一般要求。
隱式的調用:需要把產生動態連接庫時產生的 .LIB 文件加入到應用程序的工程中,想使用 DLL 中的函數時,只須說明一下。隱式調用不需要調用 LoadLibrary() 和 FreeLibrary()。程序員在建立一個 DLL 文件時,鏈接程序會自動生成一個與之對應的 LIB 導入文件。該文件包含了每一個 DLL 導出函數的符號名和可選的標識號,但是並不含有實際的代碼。LIB 文件作為 DLL 的替代文件被編譯到應用程序項目中。
當程序員通過靜態鏈接方式編譯生成應用程序時,應用程序中的調用函數與 LIB 文件中導出符號相匹配,這些符號或標識號進入到生成的 EXE 文件中。LIB 文件中也包含了對應的 DL L文件名(但不是完全的路徑名),鏈接程序將其存儲在 EXE 文件內部。
當應用程序運行過程中需要載入 DLL 文件時,Windows 根據這些信息發現並載入 DLL,然後通過符號名或標識號實現對 DLL 函數的動態鏈接。所有被應用程序調用的 DLL 文件都會在應用程序 EXE文件載入時被載入在到內存中。可執行程序鏈接到一個包含 DLL 輸出函數信息的輸入庫文件(.LIB文件)。操作系統在載入使用可執行程序時載入 DLL。可執行程序直接通過函數名調用 DLL 的輸出函數,調用方法和程序內部其 它的函數是一樣的。
2、動態調用方式:是由編程者用 API 函數載入和卸載 DLL 來達到調用 DLL 的目的,使用上較復雜,但能更加有效地使用內存,是編制大型應用程序時的重要方式。
顯式的調用:
是指在應用程序中用 LoadLibrary 或 MFC 提供的 AfxLoadLibrary 顯式的將自己所做的動態連接庫調進來,動態連接庫的文件名即是上面兩個函數的參數,再用 GetProcAddress() 獲取想要引入的函數。自此,你就可以象使用如同本應用程序自定義的函數一樣來調用此引入函數了。在應用程序退出之前,應該用 FreeLibrary 或 MFC 提供的 AfxFreeLibrary 釋放動態連接庫。直接調用 Win32 的 LoadLibary 函數,並指定 DLL 的路徑作為參數。LoadLibary 返回 HINSTANCE 參數,應用程序在調用 GetProcAddress 函數時使用這一參數。GetProcAddress 函數將符號名或標識號轉換為 DLL 內部的地址。程序員可以決定 DLL 文件何時載入或不載入,顯式鏈接在運行時決定載入哪個 DLL 文件。使用 DLL 的程序在使用之前必須載入(LoadLibrary)載入DLL從而得到一個DLL模塊的句柄,然後調用 GetProcAddress 函數得到輸出函數的指針,在退出之前必須卸載DLL(FreeLibrary)。
正因為DLL 有佔用內存小,好編輯等的特點有很多電腦病毒都是DLL格式文件。但不能單獨運行。
動態鏈接庫通常都不能直接運行,也不能接收消息。它們是一些獨立的文件,其中包含能被可執行程序或其它DLL調用來完成某項工作的函數。只有在其它模塊調用動態鏈接庫中的函數時,它才發揮作用。
10. 如何將SQL的資料庫連接封裝到DLL中
使用C#生成dll文件並調用
一、創建dll文件:
例如生成一個md5編碼判斷狀態的文件,即,輸入一個字元串(string A)和一個32位md5編碼(string B),判斷此字元串A對應的32位md5編碼是否與B相等,如果相等返回true,否則返回false。
打開VS 2005,「文件」--》「新建」--「項目」,選擇「Windows 控制項庫」,命名後點擊「確定」,在「UserControl1.cs」中輸入以下代碼:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Windows.Forms;
using System.Text;
using System.Security.Cryptography;
namespace md5
{
public partial class Program : UserControl
{
#region MD5 32位加密:GetMd5Str32
/// <summary>
/// 32位MD5加密
/// </summary>
/// <param name="strSource">待加密字串</param>
/// <returns>加密後的字串</returns>
public static string GetMd5Str32(string strSource)
{
byte[] bytes = Encoding.ASCII.GetBytes(strSource);
byte[] hashValue = ((System.Security.Cryptography.HashAlgorithm)System.Security.Cryptography.CryptoConfig.CreateFromName("MD5")).ComputeHash(bytes);
StringBuilder sb = new StringBuilder();
for (int i = 0; i < 16; i++)
{
sb.Append(hashValue[i].ToString("x2"));
}
return sb.ToString().ToUpper();
}
#endregion
#region 核對md5編碼是否一致:CheckMd5String()
/// <summary>
/// 核對md5編碼是否一致
/// </summary>
/// <param name="ConvertString"></param>
/// <returns>如果一致返回true,否則返回false</returns>
///
public static bool CheckMd5String(string str1, string str2)
{
string md5String = str1; //需要驗證的字元串
string md5DbString = str2; //需要核對的32位md5編碼
int result = string.Compare(md5.Program.GetMd5Str32(str1), md5DbString, true);
if (result == 0)
{
return true;
}
else
{
return false;
}
}
#endregion
}
}
修改「UserControl1.Designer.cs」中的命名空間為「md5」,方法為「Program」,即可生成dll文件。
在...\bin\Debug文件假下,可以找到相應的dll文件。
二、部署dll流程:
首先把dll文件放到應用程序...\bin\Debug\下;
然後在解決方案中添加引用:右鍵滑鼠-->添加引用-->瀏覽-->選擇dll放置路徑後點擊「確定」。
注意:要在應用文件頭處使用using md5;命令。
測試應用程序代碼,如下:Form1.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using md5;
namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
string str1 = textBox1.Text.ToString();
string md5String = textBox2.Text.ToString();
textBox3.Text = md5.Program.GetMd5Str32(str1);
textBox4.Text = md5.Program.CheckMd5String(str1, md5String).ToString();
}
private void button2_Click(object sender, EventArgs e)
{
this.Close();
}
}
}