aspnet連接sqlserver
A. asp連接sqlserver怎麼寫
思路:
1、ASP連接SQL資料庫,連接字元串是關鍵
2、連接後一般是執行查詢語句獲得結果集,或者是執行SQL語句,不需要返回結果
3、關閉資料庫連接對象
示例代碼:
dim Conn,strConn,rs,strSQL
strConn = "Provider=SQLOLEDB;Data Source=127.0.0.1;User ID=Test;Password=Test;Initial Catalog=Test_DBName"
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.open strConn
if err.number<>0 then
response.Write "資料庫鏈接失敗。" & err.Description
response.End
end if
set rs = server.CreateObject("adodb.recordset")
strSQL = "select title from dbo.tb_e_table"
rs.open strSQL,conn,1,1
If Not rs.eof Then
'結果集存在,則可輸出rs
response.write rs("title")
End If
rs.close
Set rs = Nothing
Conn.close
Set Conn = Nothing
其中
【Provider=SQLOLEDB;】:是聲明使用的是MSSQL協議,
【Data Source=127.0.0.1;】:是資料庫的所在伺服器IP地址或計算機名稱,
【User ID=Test;】:要連接的資料庫用戶名,
【Password=Test;】:要連接的資料庫用戶密碼,
【Initial Catalog=Test_DBName】:要連接的資料庫名稱
B. IIS 配置ASP.NET 連接資料庫問題
與資料庫連接失敗啊~你看看sqlserver的服務有沒有開啟,開啟了的話,看資料庫SA用戶的密碼對不對?甚至說你都沒有用SA用戶?你網頁連接資料庫用的什麼用戶?是WINDOWS信任連接還是ASPNET內置用戶?用SQL Server Management Studio Express進入資料庫,在安全性一欄看裡面的用戶是否是有連接資料庫的用戶?有的話看看許可權加了沒有?有沒有做用戶映射?
把你的連接貼出來看看,或者就如上位講的,是DATA SOURCE的指向問題
C. 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的狀態屬性中,是否啟用了登錄
D. ASP.NET與資料庫的連接問題
SQL Server 是本地還是遠程 遠程你檢查一下是否允許進行遠程連接
你嘗試禁用個性化服務,修改WebPartManager的屬性:Personalization -> Enabled 為 False
不行 你把上面代碼改下
<add name="LocalSqlServer" connectionString="Data Source=localhost;Initial Catalog=lecro;Persist Security Info=True;User ID=sa;Password="
providerName="System.Data.SqlClient" />
試一下
E. asp.net連接sql資料庫的連接字元串怎麼寫啊
連接資料庫文件
<addname="LocalSqlServer"connectionString="DataSource=.SQLExpress;IntegratedSecurity=True;AttachDBFilename=|DataDirectory|TimeTracker.mdf;UserInstance=true"/>
SqlConnectionStringBuilder實例化時,要用到connectionString,如:
=newSqlConnectionStringBuild(connectionString);
一、Data Source
SqlConnectionStringBuilder的DataSource屬性,對應connectionString中的Data Source,「Data Source」可以由下列字元串代替:「server」,「address」,「addr」和「network address」。
Data Source=.SQLExpress也可以寫成這樣Data Source=(local)SQLExpress。
二、Integrated Security
SqlConnectionStringBuilder的IntegratedSecurity屬性,對應connectionString中的Integrated Security,「Integrated Security」可以寫成「trusted_connection」,為true時,使用當前的 Windows 帳戶憑據進行身份驗證,為false時,需要在連接中指定用戶 ID 和密碼。
三、AttachDBFilename
SqlConnectionStringBuilder的AttachDBFilename屬性,對應connectionString中的AttachDBFilename,「AttachDBFilename」可以寫成「extended properties」,「initial file name」。AttachDbFileName屬性指定連接打開的時候動態附加到伺服器上的資料庫文件的位置。這個屬性可以接受資料庫的完整路徑和相對路徑(例如使用|DataDirectory|語法),在運行時這個路徑會被應用程序的App_Data目錄所代替。
四、User Instance
SqlConnectionStringBuilder的UserInstance屬性,對應connectionString中的User Instance ,該值指示是否將連接從默認的 SQL Server Express 實例重定向到在調用方帳戶之下運行並且在運行時啟動的實例。UserInstance=true,在這種情況下,SQLServerExpress為了把資料庫附加到新的實例,建立一個新的進程,在打開連接的用戶身份下運行。在ASP.NET應用程序中,這個用戶是本地的ASPNET帳號或默認的NetworkService,這依賴於操作系統。為了安全地附加非系統管理員帳號(例如ASP.NET帳號)提供的資料庫文件,建立一個獨立的SQLServer用戶實例是必要的。
示例:
多數都是在CONFIG文件里寫入連接字元串
<appSettings>
<!--連接資料庫伺服器-->
<addkey="CRMonnection"value="DataSource=Sufei;InitialCatalog=CRM;IntegratedSecurity=false;uid=nouter;Password=123456"></add>
<addkey="ForumName"value="luohe"/>
<!--連接資料庫文件-->
<addkey="CRMConnectionString"value="DataSource=.SQLEXPRESS;AttachDbFilename=|DataDirectory|CRM.mdf;IntegratedSecurity=True;ConnectTimeout=30;UserInstance=True"/>
</appSettings>
然後,在程序里再讀取連接字元串到變數
System.Configuration.ConfigurationSettings.AppSettings["CRMConnectionString"];
F. 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();