1、Connection,連接。打開數據通道。
2、Command,命令。通過連接傳給資料庫執行。
3、DataReader,僅向前讀取器。通過連接,讀取查詢結果。
4、Parameter,參數。有輸入也有輸出,輸入參數和Command結合通過連接傳給資料庫,輸出參數在執行後由資料庫返回給參數。
5、DataAdapter,適配器。將資料庫映射到程序,同步更新、刪除、查詢、添加。結合DataSet、DataTable、DataRow、DataColumn等對象使用。
6、Transaction,事物。多個命令組合執行,一條兒失敗全部回滾,也可以自己設置還原點,手動控制回滾。
② 使用ADO.NET操作資料庫問題
Private Sub bingData() conn的open在哪?沒看到.
'ConnectionString 設置 最好提到前面
sqlcon.ConnectionString = "Data Source=junma;database=商城;user id=jun;pwd=JUNMA19174"
Dim sqlcmd As New SqlCommand
sqlcmd.Connection = sqlcon
sqlcmd.CommandText = "select 客戶編號,客戶名稱,負責人,電話1,電話2,傳真,公司地址,送貨地址 from 客戶資料"
Dim sqlada As New SqlDataAdapter
sqlada.SelectCommand = sqlcmd
Try
sqlcon.Open()
.....................
......................
........................
.........................
③ 如何使用ADO.NET輕松操縱資料庫
NET Framework 數據提供程序的不同資料庫不同的命名空間。
2
.NET Framework 數據提供程序的四個核心對象。
3
Connection有什麼作用。Connection的作用是建立應用程序和資料庫的連接,Connection有兩個方法:Open()方法打開資料庫,Close()關閉數據的連接;一個屬性ConnectionString設置連接資料庫字元串。它的作用可以用圖形表示:
創建Connection對象的步驟。定義連接字元串,Sql Secer資料庫的連接字元串格式一般為: Data Source=伺服器名;Initial Catalog=資料庫名; User ID=用戶名;Pwd=密碼
創建Command對象。
打開與資料庫的連接。使用Open()方法。
關閉資料庫連接。使用完資料庫要記得即使關閉,使用Close()方法關閉,如果不關閉,會影響運行效率。關閉方式如下:
連接資料庫整體示例。
測試資料庫連接結果。
為什麼使用異常處理。在連接資料庫時常常出現連很多異常現象,例如下面的:
如何處理資料庫連接異常。
為什麼需要finally語句。使用finally語句可以執行我們結束的語句。
異常程序是如何執行的。可以看下執行過程:
④ ADO.NET實體數據模型講解
ADO.NET是。NET與資料庫互操作的核心,而ADO.NET實體資料庫則增強了。NET應用程序與資料庫的互聯能力,通過ADO.NET實體數據模型我們可以很方便的與底層資料庫進行強類型的數據互操作。大大的方便了設計人員,從而也提高了資料庫操作的安全性。
最近在使用到Silverlight的領域數據服務時遇到一個很特別的問題[在應用程序中的結果和資料庫的結果不一樣],經過反復的試驗,終於找到了問題的根源,那就是ADO.NET實體數據模型依賴於實體鍵,它的查詢會生成實體鍵的唯一結果集。
現在來看看具體的操作過程和處理方式:
為了對資料庫的表進行操作,在資料庫的視圖中建立了一個連接兩個原子表的
vw_DesksAndUsers
的視圖,這個視圖旨在為了連接已存在的User表和Desk的數據,於是我做了如下的T-SQL的視圖,如下所示:
在SQL
Server
2008中得到的查詢結果如下:
也就是說得到了預期的結果,[這一步很成功].接下來進行第二步。
第二步:新建一個Silverlight商業應用程序SilverlightDomainDb,在生成的項目中會支持WCF
RIA服務。這是對Silverlight領域服務的支持所必須的。
第三步:在Web項目中添加一個ADO.NET實體數據模型的新項,在向導中選擇相應的資料庫連接和數據表、視圖及存儲過程等,完成以後會生成相應的實體數據類型和上下文,並得到。edmx的模型圖。如下所示:
根據Visual
Studio
2010的提示,它為我們生成了兩個實體鍵:DeskId,IsPlaying(這是Desk表中的兩個欄位);現在重新生成項目。
第四步:根據實體模型添加Web領域服務項。(在這一步需要添加相應的表和元數據信息)
第五步:Silverlight項目中將數據源所在vw_DesksAndUsers
的Datagrid拖到Home.xaml中,完成、調試。並沒有得到上面的結果,而是生成了如下的Datagrid:
經過仔細的觀察,才發現原來是ADO.NET實體數據模型中的結果集依賴於實體鍵,也就是說Silverlight領域服務會根據實體鍵的唯一生成查詢的結果集,於是就產生了上面的以DeskId為唯一鍵的數據。
處理:
根據以上的分析,要得到預期的結果,必須設置合適的實體鍵,為了不至於影響到底層的SQL資料庫,我們只需要修改。edmx模型圖中的的實體鍵即可(點擊右鍵選中或不選中"實體鍵"):
現在重新生成項目並運行程序,程序得到了預期的結果。
Silverlight商業應用程序作為一個專為數據顯示而生的模板,為資料庫的呈現提供了友好的界面,由於其優化的資料庫的處理方式使得我們在使用時不得不考慮一些它們之間的細微差別[由於在Visual
Studio中沒能看到有LINQ生成的T-SQL查詢語句,所以我也只是提供了一個簡單的解決方案而已],我想其深層的原因在於LINQ查詢中生成的T-SQL語句與資料庫中的T-SQL語句不同而產生。
⑤ 敘述通過ADO.NET執行常規資料庫操作過程 �1�3
ADO.NET連接資料庫實驗步驟(1):定義連接字元串資料庫的連接定義一般是以字元串的形式出現,該字元串的定義參見圖所示。 連接字元串舉例圖不管用拖放方式在圖形界面增加的SqlConnection1對象,還是通過代碼編寫生成的SqlConnection1對象,都需要定義連接字元串。界面增加的SqlConnection1對象,其連接字元串在配置資料庫連接後自動生成,而代碼編寫生成的SqlConnection1對象,其連接字元串需要安裝格式要求手工編寫。連接字元串決定了連接某台伺服器,某個資料庫,還有連接方式及要求。編程時定義連接字元串的具體例子,參見圖:定義連接字元串具體舉例圖圖中,SqlConnection1為sqlconnection對象,通過sqlconnection對象載入資料庫連接字元串與MSSQL進行連接。在連接字元串中,「Server=SQLDB;」表示存儲「pubs」資料庫的伺服器名稱,該伺服器名稱為SQLDB,也可以寫成IP地址,如123.101.220.1。如果是本地資料庫伺服器,可以有以下幾種寫法:「(local)」或者「.」「127.0.0.1」、本地機子名稱。在連接字元串中,「User id=sa; pwd=password」表示登錄資料庫伺服器用戶名稱和密碼,使用這種用戶身份登錄方式必須是,用戶同樣可以使用「SQL Server身份認證」登錄資料庫伺服器,否則連接仍然會失敗。最後的「database=pubs」表示登錄伺服器是pubs資料庫。ADO.NET連接資料庫實驗步驟(2):創建Connection對象在代碼編輯器裡面,通過編寫代碼的方式創建Connection對象的過程參見圖所示: 創建連接對象圖在對象創建過程中將連接字元串作為參數傳遞給SqlConnection類的構造函數,這樣連接對象SqlConnection1就可以用來訪問數據了。構造函數還有個重載,就是參數為空的構造函數。在實例化時不將連接字元串作為參數傳給構造函數,實例化之後,給對象SqlConnection1的屬性ConnectionString賦值,完成對象SqlConnection1的設置。例如:SqlConnection SqlConnection1 = new SqlConnection(); SqlConnection1.ConnectionString = "Data Source=10.5.0.30;Initial Catalog=TTDB; User ID=TrainingDeveloper Pwd=Password";
ADO.NET連接資料庫實驗步驟(3):打開與資料庫的連接用Connection對象的Open()方法就可以打開資料庫連接。
⑥ Ado.net訪問資料庫的方法和步驟
不論從語法來看 還是從風格和設計目標來看 ADO NET都和ADO有顯著的不同 在ASP中通過ADO訪問資料庫 一般要通過以下四個步驟
創建一個到資料庫的鏈路 即ADO Connection
查詢一個數據集合 即執行SQL 產生一個Recordset
對數據集合進行需要的操作
關閉數據鏈路
在ADO NET里 這些步驟有很大的變化 ADO NET的最重要概念之一是DataSet DataSet是不依賴於資料庫的獨立數據集合 所謂獨立 就是 即使斷開數據鏈路 或者關閉資料庫 DataSet依然是可用的 如果你在ASP裡面使用過非連接記錄集合(Connectionless Recordset) 那麼DataSet就是這種技術的最徹底的替代品
有了DataSet 那麼 ADO NET訪問資料庫的步驟就相應地改變了
◆創建一個資料庫鏈路 ◆請求一個記錄集合 ◆把記錄集合暫存到DataSet ◆如果需要 返回第 步 (DataSet可以容納多個數據集合) ◆關閉資料庫鏈路 ◆在DataSet上做所需要的操作
lishixin/Article/program/net/201311/15216
⑦ Ado.net將資料庫查詢結果轉成一個動態對象
步驟如下:一、用有源ODBCDSN的方法和無源OLEDB的方法連接資料庫:1、無源OLEDB:stringstrConn="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=intels.mdb";2、有源ODBCDSN:stringstrConn="DataSource=intels";如果採用ADO.NET連接SQLServer或者Oracle,方法和VB中連接相應數據的連接字元串一致。
二、開始連接資料庫:ADOConnectionConn=newADOConnection(strConn);三、執行一個selectSQL查詢:stringstrSQL="Selectidfromtest";ADOCommandADOCmd=newADOCommand(conn,Conn);Conn.Open();ADODataReaderreader;ADOCmd.Execute(outreader);四、得到ADODataReader中包含的數據:先執行:reader.Read();然後就可以取得數值:reader["id"].ToString();依次類推。五、delete(刪除)語句,insert和update相同:strSQL="deletefromtestwhereid=』1』";//strSQL="insertintotestvalues(』1』)";//strSQL="updatetestsetid=』1』";ADOCommandADOCmd=newADOCommand(conn,Conn);Conn.Open();ADOCmd.Execute();
⑧ C#ADO.NET怎樣才能與SQL資料庫連接
導入命名空間 using System.Data,Sqlclient;string ConnStr="server=.;database=NewsData;uid=sa;pwd=123";string SQL_STRING="select * from news";database連接的是資料庫名稱;uid是用戶名;pwd是登陸密碼;1,創建一個連接實例SqlConnection conn = new SqlConnection(ConnStr);2.打開連接conn.open();3。創建執行命令實例SqlCommand cmd=new SqlCommand(SQL_STRING,conn);4,創建只進讀取數據對象SqlDataReader sdr = cmd.ExecuteReader();5,讀取數據x0dx0a if (sdr.Read())x0dx0a {x0dx0a t_colname.Text = sdr["new_Name"].ToString();x0dx0a t_colwords.Text = sdr["new_Des"].ToString();x0dx0a }6.關閉連接x0dx0a sdr.Close();x0dx0a conn.Close();x0dx0a這是一個實例,希望通過這個你可以了解一下 ,在這里涉及到了ADO.NET的3個對象
⑨ ADO.NET連接ACCESS資料庫
vb.net
首先引用Access ado.net命名空間
imports system.data.oledb
連接資料庫代碼
dim connstr as string="provider=microsoft.jet.oledb.4.0;data source='" & dbpath & "'"
上面是資料庫連接字元串 dbpath 是資料庫路徑
dim conn as new oledbconnection(connstr)
conn.open
打開資料庫連接
dim sql as string="select * from A"
dim cmd as new oledbcommand(sql,conn)
dim dr as oledbdatareader=cmd.executereader
textbox1.text=dr.getstring(1)
dr.close
conn.close
讀取A表中第二個欄位的內容到文本框。
關閉數據讀取器
關閉資料庫連接
⑩ 使用ADO.NET向資料庫中插入數據
連接資料庫coreDB,向表myBBS中插入文章。表myBBS的定義如下: if exists (select * from dbo.sysobjects where id = object_id(N[dbo].[myBBS]) and OBJECTPROPERTY(id, NIsUserTable) = 1) drop table [dbo].[myBBS] GO CREATE TABLE [dbo].[myBBS] ( [ID]
連接資料庫coreDB,向表myBBS中插入文章。表myBBS的定義如下:
if exists (select * from dbo.sysobjects where id = object_id(N[dbo].[myBBS]) and OBJECTPROPERTY(id, NIsUserTable) = 1)
drop table [dbo].[myBBS]
GO
CREATE TABLE [dbo].[myBBS] (
[ID] [bigint] IDENTITY (1, 1) NOT NULL ,
[Title] [char] (160) COLLATE Chinese_PRC_CI_AS NULL ,
[Author] [char] (20) COLLATE Chinese_PRC_CI_AS NULL ,
[Date_of_Created] [datetime] NULL ,
[Abstract] [char] (480) COLLATE Chinese_PRC_CI_AS NULL ,
[Content] [ntext] COLLATE Chinese_PRC_CI_AS NOT NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
TextBox1,TextBox2分別為提供用戶輸入標題和文章內容的兩個textBox,
用戶點擊Button1按鈕時檢查並保存文章到資料庫中。
private void Button1_Click(object sender, System.EventArgs e)
{
SqlConnection coreDB=new SqlConnection();
coreDB.ConnectionString= "workstation id=\"GQA-ERIC-LV\";packet size=4096;integrated security=SSPI;" +
"data source=\"gqa-eric-lv\";persist security info=False;initial catalog=CoreDB";
string Title=TextBox1.Text;
string Content=TextBox2.Text;
if(Title.Trim()==""||Content.Trim()=="")return;
string mySelectQuery =@"insert into myBBS (Title,Content) Values("+ Title + "," +Content+")";
SqlCommand myCommand = new SqlCommand(mySelectQuery,coreDB);
coreDB.Open();
SqlDataReader myReader = myCommand.ExecuteReader();
myReader.Close();
coreDB.Close();
}