當前位置:首頁 » 操作系統 » aspnet資料庫更新

aspnet資料庫更新

發布時間: 2023-09-05 21:00:28

㈠ asp.net與資料庫連接出錯的問題

VS只自帶了資料庫引擎,沒有帶管理器,要自己到微軟網站下載sql Server Management Studio Express.然後按下面的步驟做。

1.配置SQLServer外圍應用伺服器,開啟SQL2005遠程連接功能:
操作方式如下,點擊「配置工具」->「SQLServer外圍應用配置器」,然後在打開的窗口中選擇「服務和連接的外圍應用配置器」->然後選擇Database Engine節點下的 「遠程連接」,選擇「本地連接和遠程連接」,同時選擇「同時使用TCP/IP和named pipes」,確定後然後需要重新啟動資料庫服務就可以了。
2.把登陸設置改為SQLServer 和 Windows 身份驗證模式,具體設置如下:
打開SQLServer Management Studio管理器,點擊伺服器上面右鍵然後查看屬性,在安全性選項裡面對服務身份驗證選擇「SQLServer 和 Windows 身份驗證模式」。
3.修改SQLServer sa的密碼,體設置如下:
在SQLServer Management Studio管理器中,展開伺服器上的「安全性」->登陸名->在sa帳號上點右鍵屬性,這樣在「常規」的選擇頁中更改sa登陸帳號的密碼。注意SQLServer2005中,不允許密碼設置簡單,否則會通不過。然後在選擇頁的「狀態」的登錄修改為啟用。
4.資料庫連接字元串:
資料庫連接字元串有很多種,如:
Data Server=.\SQLEXPRESS;Initial Catalog=Northwind;User ID=sa;Password=sapassSql
Data Server=伺服器名\SQLEXPRESS;Initial Catalog=Northwind;User ID=sa;Password= sapassSql
Data Server=localhost\SQLEXPRESS;Initial Catalog=Northwind;User ID=sa;Password= sapassSql
Data Server=.;Initial Catalog=Northwind;User ID=sa;Password= sapassSql
Data Server=伺服器名;Initial Catalog=Northwind;User ID=sa;Password= sapassSql
具體的選擇是和SQLServer2005的版本有關系,如果是SQLServer 2005 Express版本,則必須要有「\SQLEXPRESS」,因此如果字元串是定義為一個變數的時候應該寫成Server=. \\SQLEXPRESS。
5.在.net2.0 Framework中注冊SQLServer資料庫:
找到.net2.0 Framework的安裝路徑,一般安裝在 「C:\Windows\Microsoft.NET\Framework\v2.0.50727」目錄下,然後在DOS中在指定目錄下運行「ASPNET_REGSQL」指令,就會出現ASP.NETSQLServer安裝向導,點擊「下一步」,然後選擇「為應用程序服務配置SQLServer」,然後直接點擊下一步,就會完成SQLServer注冊界面。我們就會看到NorthWind資料庫下面多了幾張表。
6.設置web.config文件:
在應用程序中的web.config文件添加如下資料庫連接的配置:

程序代碼:
<connectionStrings>
<add name="ConnectionSqlServer" connectionString="Data Source=.\SQL2005;Initial Catalog=Test2008;User ID=sa;PWD=sasasasa" providerName="System.Data.SqlClient"/>
</connectionStrings> 這樣我們便在Visual Studio 2005中可以輕松的調用SQLServer的數據連接了。
現在我們來對上面所做的步驟來測試數據的連接,我們打開Visual Studio 2005,在視圖的「伺服器資源管理器」來添加SQLServer 2005的連接,通過輸入伺服器名稱和對應的SQLServer身份驗證的sa用戶名密碼後,選取對應的資料庫,然後點擊「測試連接」,就會成功的連接到資料庫了。
如果sa無法登錄,檢查sa的狀態屬性中,是否啟用了登錄

㈡ 如何進行C#連接Access資料庫的細節操作

許多學者總會面對於資料庫的知識,以下的例子講述到Access資料庫說明,用C#的DataSet類訪問資料庫的一些操作方法。


操作涉及的主要C#類有:
DataSet:對應資料庫表的一個集合,實際上是資料庫表在內存中的一個緩存
DataTable:對應資料庫表,是資料庫錶行的集合
DataRow:對應資料庫錶行
OleDbConnection:建立資料庫連接
OleDbDataAdapter:由資料庫生成DataSet,並負責DataSet與資料庫的同步
OleDbCommandBuilder:生成更新資料庫所需的指令www.kmxxfk.com

DataSet、DataTable、DataRow用於數據在緩存中的操作,這上面的操作只有更新到資料庫中,修改結果才會被永久保存。OleDbConnection 是用OLEDB方法連接資料庫所必需的。OleDbDataAdapter和OleDbCommandBuilder用來生成DataSet,完成資料庫更新。與OleDbDataAdapter和OleDbCommandBuilder相對應,SqlDataAdapter和SqlCommandBuilder也可以完成用SQL語言為指令的資料庫更新。

假設在D:盤創建了Access資料庫,其路徑為d:\0DBAcs\account.mdb,資料庫中有一張名為kai的資料庫表。表結構如下:
表名;Kai
欄位Field Name類型說明
1開支IDkzID長整型自動編號
2開支人Kzren文本50字元
3開支項目名kzname文本50字元
4日期riqi日期/時間99-99-99;0掩碼
5開支說明shuoming文本225字元
6總金額zonge單精度小數點任意;這項開支的總花費
7數量shuliang長整型www.kmxxfc.com
8單價Danjia單精度小數點任意

表建好之後:(1)對表中添加新數據(2)查詢表中的某個欄位。為了實現這兩項功能,以下幾個問題要考慮:
1准備工作
聲明必須的公共變數
建立與資料庫的連接,創建DataSet對象
2添加記錄
在DataSet對象上添加記錄
同步DataSet對象對象與資料庫中的數據,這一點很重要,很多人忘記了數據進行同步,結果往往是添加、修改的數據不能保存到資料庫中。
3查詢資料庫表中某記錄的某欄位;

我們可以將上述功能用一個類DataOper實現,下面是程序設計的主要活動。
聲明要用的C#系統類
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
using System.Data;
using System.Data.OleDb;
using System.Data.SqlClient;

聲明DataOper類中的公共變數
private string DBlocation;
private OleDbConnection dbconn; //資料庫連接
private OleDbDataAdapter da;

建立與資料庫的連接,這里採用了OLEDB方法:
dbconn = new OleDbConnection(@"provider=microsoft.jet.oledb.4.0; Data Source=d:\0DBAcs\account.mdb");
dbconn.Open();

創建DataSet對象
da = new OleDbDataAdapter(@"select * from kai", dbconn); //引用資料庫連接dbconn並依據SQL語句"select * from kai"創建OleDbDataAdapter對象da
DataSet ds = new DataSet(); //創建DataSet對象
da.Fill(ds); //用OleDbDataAdapter對象da填充、更新剛創建的DataSet對象

添加記錄並更新資料庫
OleDbCommandBuilder cb = new OleDbCommandBuilder(da); // 創建OleDbCommandBuilder對象cb用於更新OleDbDataAdapter對象da的Insert、Delete、Update指令
da.UpdateCommand = cb.GetUpdateCommand(); //更新OleDbDataAdapter對象da的指令
設計人員可以編寫自己的更新指令,也可以象上面所寫的那樣用系統默認的指令。但不管怎樣,上面的語句不能缺少,否則程序在運行中會拋出異常System.InvalidOperationException,並提示:Update requires a valid InsertCommand when passed DataRow collection with new rows.


DataRow drx = ds.Tables[0].NewRow(); //創建一條新記錄行

drx["kzren"] = "kzren";
drx["kzname"]="kzname";
drx["riqi"]=2008-10-11;
drx["shuoming"]="shuoming";
drx["zonge"] = 12;
drx["shuliang"] = 3;
drx["danjia"] = 4;
ds.Tables[0].Rows.Add(drx); //在表中追加記錄
da.Update(ds); //更新資料庫

要查詢引用某記錄的某欄位,直接按如下的方法引用就可以了。
String kx=ds.Tables[0].Rows[0]["kzren"].ToString()連接access
首先看一個例子代碼片斷:
程序代碼:www.lzfsk.com/
--------------------------------------------------------------------------------
using system.data;
using system.data.oledb;
......
string strconnection="provider=microsoft.jet.oledb.4.0;";
strconnection+=@"data source=c:\begas.Net\northwind.mdb";
oledbconnection objconnection=new oledbconnection(strconnection);
......
objconnection.open();
objconnection.close();
......
--------------------------------------------------------------------------------
解釋:
連接access資料庫需要導入額外的命名空間,所以有了最前面的兩條using命令,這是必不可少的!
strconnection這個變數里存放的是連接資料庫所需要的連接字元串,他指定了要使用的數據提供者和要使用的數據源.
"provider=microsoft.jet.oledb.4.0;"是指數據提供者,這里使用的是microsoft jet引擎,也就是access中的數據引擎,ASP.net就是靠這個和access的資料庫連接的.
"data source=c:\begaspnet\northwind.mdb"是指明數據源的位置,他的標准形式是"data source=mydrive:mypath\myfile.mdb".
ps:
1."+="後面的"@"符號是防止將後面字元串中的"\"解析為轉義字元.
2.如果要連接的資料庫文件和當前文件在同一個目錄下,還可以使用如下的方法連接:
strconnection+="data source=";
strconnection+=mappath("northwind.mdb");
這樣就可以省得你寫一大堆東西了!
3.要注意連接字元串中的參數之間要用分號來分隔.
"oledbconnection objconnection=new oledbconnection(strconnection);"這一句是利用定義好的連接字元串來建立了一個鏈接對象,以後對資料庫的操作我們都要和這個對象打交道.
"objconnection.open();"這用來打開連接.至此,與access資料庫的連接完成.其餘操作(插入,刪除...)請參閱相關書籍
連接SQL Server
例子代碼片斷:
程序代碼:

--------------------------------------------------------------------------------
using system.data;
using system.data.sqlclient;
...
string strconnection="user id=sa;passWord=;";
strconnection+="initial catalog=northwind;server=yoursqlserver;";
strconnection+="connect timeout=30";
sqlconnection objconnection=new sqlconnection(strconnection);
...
objconnection.open();
objconnection.close();
...
--------------------------------------------------------------------------------
解釋:
連接sql server資料庫的機制與連接access的機制沒有什麼太大的區別,只是改變了connection對象和連接字元串中的不同參數.
首先,連接sql server使用的命名空間不是"system.data.oledb",而是"system.data.sqlclient".
其次就是他的連接字元串了,我們一個一個參數來介紹(注意:參數間用分號分隔):
"user id=sa":連接資料庫的驗證用戶名為sa.他還有一個別名"uid",所以這句我們還可以寫成"uid=sa".
"password=":連接資料庫的驗證密碼為空.他的別名為"pwd",所以我們可以寫為"pwd=".
這里注意,你的sql server必須已經設置了需要用戶名和密碼來登錄,否則不能用這樣的方式來登錄.如果你的sql server設置為Windows登錄,那麼在這里就不需要使用"user id"和"password"這樣的方式來登錄,而需要使用"trusted_connection=sspi"來進行登錄.
"initial catalog=northwind":使用的數據源為"northwind"這個資料庫.他的別名為"database",本句可以寫成"database=northwind".
"server=yoursqlserver":使用名為"yoursqlserver"的伺服器.他的別名為"data source","address","addr".如果使用的是本地資料庫且定義了實例名,則可以寫為"server=(local)\實例名";如果是遠程伺服器,則將"(local)"替換為遠程伺服器的名稱或ip地址.
"connect timeout=30":連接超時時間為30秒.
在這里,建立連接對象用的構造函數為:sqlconnection.
其餘的就和access沒有什麼區別了!
********************************************************************************************************************
用c#訪問access資料庫


我編寫這個程序的動機是當我希望用c sharp訪問msaccess資料庫的時候我沒有辦法獲得任何信息和參考材料.網上所能獲得的所有材料都是偏重於sql的,所以我們將分兩步來編寫這個應用程序,第一我們將展示如何連接到msaccess資料庫然後看看它有多復雜.最後,我們就這樣完成了這個程序.

閑言少序,讓我們開始正題.連接到資料庫的過程與我們早先的ado連接過程相比已經發生了較大的變化.下面的圖表恰當的(我希望如此)oledbconnection--> oledbcommand --> oledbdatareader.現在那些熟悉ado的人很明顯能看出兩者的相似之處但是為了使那些還沒有很好的適應ado的人能夠明白,下面是一些解釋.

oledbconnection -->代表對資料庫的單一連接,根據底層資料庫的功能它能給你操縱資料庫的能力.有一點必須記住,雖然oledbconnection對象出了作用范圍,它也不會自動被關閉.所以,你將不得不顯示的調用這個對象的close()方法.

oledbcommand -->這是就象我們在ado中使用的一樣的通常的command對象.你可以通過這個對象調用sql存儲過程或是sql查詢語句.

oledbdatareader -->這個類擁有非常大的重要性因為它提供了實際上的對資料庫底層數據集的訪問.當你調用oledbcommand的executereader方法的時候它就會被創建,.net beta2 sdk說不要直接創建這個類的對象.

現在你可以在.net beta 2的文檔中看到更多的關於這些主要對象的說明,下面是指出如何在程序中訪問資料庫的源代碼.

using system;
using system.data.oledb;

class oledbtest{

public static void main()
{
/創建資料庫連接
oledbconnection aconnection = new oledbconnection("provider=microsoft.jet.oledb.4.0;data source=c:\\db1.mdb");

/創建command對象並保存sql查詢語句
oledbcommand acommand = new oledbcommand("select * from emp_test", aconnection);
try
{
aconnection.open();

/創建datareader 對象來連接到表單
oledbdatareader areader = acommand.executereader();
console.writeline("this is the returned data from emp_test table");

/循環遍歷資料庫
while(areader.read())
{
console.writeline(areader.getint32(0).tostring());
}

/關閉reader對象
areader.close();

/關閉連接,這很重要
aconnection.close();
}

/一些通常的異常處理
catch(oledbexception e)
{
console.writeline("error: {0}", e.errors[0].message);
}
}
}

成功運行這個程序的步驟
1.用msaccess創建一個名叫db1.mdb的資料庫
2.創建一個名叫emp_test的表單
3.使它包含下列數據域
emp_code int
emp_name text
emp_ext text
4.將上面的代碼保存到sample.cs文件中
5.確保資料庫位於c:\並確保mdac2.6或是更新的版本已經被安裝
6.編譯運行

現在讓我們來了解一些我們在oledbconnection對象的構造函數看到的東西的一些細節,在這里你看見諸如"provider="之類的東西.下面是一些和ado.net兼容的驅動程序類型.
sqlolddb --> microsoft ole db provider for sql server,
msra --> microsoft ole db provider forOracle,
microsoft.jet.oledb.4.0 --> ole db provider for microsoft jet
你可以選擇其中的任何一個但是他們會需要傳遞不同的參數,例如jet.oledb.需要傳遞mdb文件的名字而sqloledb需要傳遞用戶名和密碼.

所有這些驅動程序都位於system.data.oledb命名空間里,所以你必須包括它,而且它們和oledb provider for odbc不兼容,也就是說你不能在VB6.0程序里使用這些驅動程序來訪問資料庫,所以不要去尋找解釋為什麼要把這些資料庫放在c:\上的資料了

當你使用microsoft sql server 7.0 或者更新版本的時候,下面是微軟給出的一些指導:
推薦使用.net data provider在下列情況中,使用microsoft sql server 7.0 或者更新版本的中間層應用程序,使用microsoft data engine (msde)或icrosoft sql server 7.0 或者更新版本的單層應用程序.
建議將ole db provider for sql server (sqloledb)和ole db .net data provider一起使用.
對於microsoft sql server 6.5和更早的版本,你必須同時使用ole db provider for sql server 和 ole db.net data provider.
推薦使用microsoft sql server 6.5和更早的版本或是oracle的中間層應用程序使用ole db .net data provider.
對於microsoft sql server 7.0 或者更新版本,推薦sql server .net data provider.
推薦單層應用程序使用microsoft access資料庫.
不推薦一個中間層程序同時使用ole db .net data provider和microsoft access資料庫.
不再支持ole db provider for odbc (msdasql)

㈢ IIS 配置ASP.NET 連接資料庫問題

1、依次點擊「開始」-「運行」。
2、在「運行」欄內輸入「c:\windows\microsoft.net\framework\v2.0.50727\aspnet_regiis.exe
-i
」(不含引號),然後點「確定」按鈕。3、出現的cmd窗口中顯示「開始安裝asp.net
xxx」等內容,等待這個窗口自動關閉。好了,到這里一般問題就解決了,如果尚未解決請參考下面的文章。------------------------------------裝了vs2005再裝iis,結果出了些小問題訪問iis元資料庫失敗思考可能是次序出了問題,解決1、打開cmd,進入
c:\windows\microsoft.net\framework\v2.0.507272、輸入
aspnet_regiis.exe
-i稍等片刻,注冊成功就解決問題了。接著還會出現「未能創建
mutex」的問題解決方法:1、先關閉你的vs2005。2、打開
c:\windows\microsoft.net\framework\v2.0.50727\temporary
asp.net
files
找到你剛才調試的程序的名字的目錄刪除它。3、關閉iis伺服器,重開一次。4、用ie瀏覽一下你的程序,問題解決

㈣ asp.net網站無法連接到資料庫

1、導入命名空間
using System.Data.SqlClient; //連接SQLServer 資料庫專用

2、創建連接
SqlConnection lo_conn = New SqlConnection("Server=伺服器名字或IP;Database=資料庫名字;uid=用戶名;pwd=密碼");

3、打開連接,第2步並沒有真正連接資料庫
lo_conn.Open(); //真正與資料庫連接

4、向資料庫發送SQL命令要使用SqlCommand:
SqlCommand lo_cmd = new SqlCommand(); //創建命令對象
lo_cmd.CommandText = "這里是SQL語句"; //寫SQL語句
lo_cmd.Connection = lo_con; //指定連接對象,即上面創建的

5、處理SQL命令或返回結果集
lo_cmd.ExecuteNonQuery(); //這個僅僅執行SQL命令,不返回結果集,實用於建表、批量更新等不需要返回結果的操作。
SqlDataReader lo_reader = lo_cmd.ExecuteReader();//返回結果集

6、以數據集的方式反回結果集
SqlDataAdapter dbAdapter = new SqlDataAdapter(lo_cmd); //注意與上面的區分開
DataSet ds = new DataSet(); //創建數據集對象
dbAdapter.Fill(ds); //用返回的結果集填充數據集,這個數據集可以被能操作數據的控制項DataBind

7、關閉連接
lo_conn.Close();

㈤ 關於asp.net 用VB連接sql server資料庫(100分)在線等

1、在SQL Server創建 「電腦名\ASPNET」用戶。比如我創建HP-2V47VI88M4GB\ASPNET
2、在SQL Enterprise manager里打開「安全性」文件夾,右擊「登錄」,選擇「新建登錄……」。「常規」選項卡,「名稱」填HP-2V47VI88M4GB\ASPNET,其他默認;「資料庫訪問」選項卡,指定訪問的資料庫,我指定的是Northwind資料庫,然後給他賦許可權:dbo,public就夠了。

熱點內容
說話加密 發布:2025-01-31 14:02:28 瀏覽:552
android倉庫管理系統 發布:2025-01-31 14:02:27 瀏覽:700
batsql語句 發布:2025-01-31 14:00:13 瀏覽:733
沈陽加密狗 發布:2025-01-31 13:54:58 瀏覽:705
聯想伺服器怎麼裝windows7 發布:2025-01-31 13:54:52 瀏覽:874
java二級考試歷年真題 發布:2025-01-31 13:50:31 瀏覽:171
編程一刻 發布:2025-01-31 13:36:44 瀏覽:585
編程小草出土 發布:2025-01-31 13:33:27 瀏覽:579
如何設置伺服器屏蔽你的ip 發布:2025-01-31 13:25:58 瀏覽:243
扣扣的獨立密碼是什麼密碼 發布:2025-01-31 13:23:42 瀏覽:132