新聞中心
在現(xiàn)代的企業(yè)應(yīng)用程序中,使用數(shù)據(jù)庫(kù)是必不可少的一項(xiàng)技術(shù)。如果你是一名初學(xué)者,也許你會(huì)覺(jué)得數(shù)據(jù)庫(kù)非常難學(xué)。但是,實(shí)際上,使用ADO.NET添加數(shù)據(jù)庫(kù)是一件非常容易的事情。本文將向您介紹如何使用ADO.NET添加數(shù)據(jù)庫(kù)。

網(wǎng)站設(shè)計(jì)制作過(guò)程拒絕使用模板建站;使用PHP+MYSQL原生開(kāi)發(fā)可交付網(wǎng)站源代碼;符合網(wǎng)站優(yōu)化排名的后臺(tái)管理系統(tǒng);成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)收費(fèi)合理;免費(fèi)進(jìn)行網(wǎng)站備案等企業(yè)網(wǎng)站建設(shè)一條龍服務(wù).我們是一家持續(xù)穩(wěn)定運(yùn)營(yíng)了10余年的創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司。
之一步:選擇數(shù)據(jù)庫(kù)
在我們開(kāi)始添加數(shù)據(jù)庫(kù)之前,我們需要了解一些數(shù)據(jù)庫(kù)選項(xiàng)。有許多類型的數(shù)據(jù)庫(kù)可以使用,例如Microsoft SQL Server、MySQL、Oracle等。在本文中,我們選擇Microsoft SQL Server作為我們的數(shù)據(jù)庫(kù)。
在開(kāi)始使用之前,您需要先安裝SQL Server。如果您還沒(méi)有安裝它,請(qǐng)先安裝它。
第二步:創(chuàng)建數(shù)據(jù)庫(kù)
一旦您安裝了SQL Server,您就可以開(kāi)始創(chuàng)建數(shù)據(jù)庫(kù)了。打開(kāi)SQL Server管理器。在左側(cè)的“對(duì)象資源管理器”中,右鍵單擊“數(shù)據(jù)庫(kù)”并選擇“新建數(shù)據(jù)庫(kù)”。
在出現(xiàn)的對(duì)話框中,輸入要?jiǎng)?chuàng)建的數(shù)據(jù)庫(kù)的名稱并選擇要使用的數(shù)據(jù)庫(kù)文件。選擇文件后,單擊“確定”。
第三步:創(chuàng)建表
現(xiàn)在我們已經(jīng)創(chuàng)建了我們的數(shù)據(jù)庫(kù),我們需要開(kāi)始創(chuàng)建表。在“對(duì)象資源管理器”中,展開(kāi)我們的數(shù)據(jù)庫(kù)并右鍵單擊“表”。選擇“新建表”。
在出現(xiàn)的對(duì)話框中,輸入表的名稱并添加要包含的列。在本例中,我們將創(chuàng)建一個(gè)名為“Customers”的表。
第四步:使用ADO.NET
我們已經(jīng)創(chuàng)建了數(shù)據(jù)庫(kù)和表,現(xiàn)在我們需要使用ADO.NET來(lái)添加數(shù)據(jù)。ADO.NET是Microsoft .NET Framework中一種數(shù)據(jù)訪問(wèn)技術(shù),在Visual Studio中容易使用。
我們需要向我們的項(xiàng)目中添加引用。打開(kāi)Visual Studio并創(chuàng)建一個(gè)新項(xiàng)目。在解決方案資源管理器中,右鍵單擊“引用”并選擇“添加引用”。
在“添加引用”對(duì)話框中,選擇“程序集”選項(xiàng)卡并找到“System.Data”程序集。選中并單擊“確定”使得它將被添加到項(xiàng)目中。
現(xiàn)在我們可以開(kāi)始創(chuàng)建連接到數(shù)據(jù)庫(kù)的代碼。在項(xiàng)目中添加一個(gè)新類并為其命名“DataAccess”。
在“DataAccess”類中,我們需要?jiǎng)?chuàng)建一個(gè)連接字符串和打開(kāi)連接。以下是代碼:
“`csharp
public static string connectionString = “Data Source=(localdb)\\MSSQLLocalDB;Initial Catalog=MyDatabase;Integrated Security=True”;
public static SqlConnection connection = new SqlConnection(connectionString);
public static void OpenConnection()
{
try
{
connection.Open();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
“`
在上面的代碼中,我們定義了一個(gè)連接字符串和包含數(shù)據(jù)庫(kù)名稱的連接。在OpenConnection()函數(shù)中,我們嘗試打開(kāi)連接。
現(xiàn)在,我們需要?jiǎng)?chuàng)建一個(gè)添加數(shù)據(jù)到我們的表“Customers”的方法。
“`csharp
public static void AddCustomer(int id, string name, string eml)
{
string query = “INSERT INTO Customers (Id, Name, Eml) VALUES (@id, @name, @eml)”;
SqlCommand command = new SqlCommand(query, connection);
command.Parameters.AddWithValue(“@id”, id);
command.Parameters.AddWithValue(“@name”, name);
command.Parameters.AddWithValue(“@eml”, eml);
try
{
command.ExecuteNonQuery();
}
catch(Exception ex)
{
Console.WriteLine(ex.Message);
}
}
“`
以上是添加客戶數(shù)據(jù)的示例代碼。該代碼使用INSERT語(yǔ)句將客戶的ID、姓名和電子郵件添加到我們的表中。
我們可以在控制臺(tái)應(yīng)用程序中使用以下代碼將數(shù)據(jù)添加到表中:
“`csharp
static void Mn(string[] args)
{
DataAccess.OpenConnection();
DataAccess.AddCustomer(1, “John Smith”, “john@example.com”);
DataAccess.AddCustomer(2, “Jane Doe”, “jane@example.com”);
DataAccess.AddCustomer(3, “Bob Johnson”, “bob@example.com”);
DataAccess.connection.Close();
Console.WriteLine(“Customers added successfully”);
Console.ReadLine();
}
“`
這段代碼將添加三個(gè)客戶對(duì)象到我們的表中。我們使用“OpenConnection”打開(kāi)連接并在添加數(shù)據(jù)后使用“connection.Close()”關(guān)閉它。
結(jié)論
在這篇文章中,我們了解了如何使用ADO.NET在Visual Studio中為Microsoft SQL Server添加數(shù)據(jù)庫(kù)。我們創(chuàng)建了一個(gè)新數(shù)據(jù)庫(kù)、一個(gè)新表,并使用應(yīng)用程序?qū)?shù)據(jù)添加到表中。ADO.NET不僅適用于Microsoft SQL Server,還適用于其他類型的數(shù)據(jù)庫(kù)。通過(guò)使用本文所述的技術(shù)和概念,您可以快速入門并添加數(shù)據(jù)庫(kù),這將為您的企業(yè)應(yīng)用程序提供基石。
成都網(wǎng)站建設(shè)公司-創(chuàng)新互聯(lián),建站經(jīng)驗(yàn)豐富以策略為先導(dǎo)10多年以來(lái)專注數(shù)字化網(wǎng)站建設(shè),提供企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計(jì),響應(yīng)式網(wǎng)站制作,設(shè)計(jì)師量身打造品牌風(fēng)格,熱線:028-86922220ADO.net連接Oracle數(shù)據(jù)庫(kù)
能直接用他的修改的。
少的東東了
你在For Each DBrow1 In p_DBset1.Tables(“TreesList”).Rows
‘dbrow1.BeginEdit()
DBrow1(“details”) = “aaaaa”
‘dbrow1.EndEdit()
Next
看你意思,你同時(shí)修改了多行,
只能用
下面的了
你在msdn中找下面的類。
注意 oracle 找oracle, sqlserver, 找對(duì)應(yīng)的版本的。
《使用 CommandBuilder 生成命令 (ADO.NET)》
這個(gè)要求select語(yǔ)句的表 中有標(biāo)識(shí)列。沒(méi)有就做不到
DbCommandBuilder 類
成員 請(qǐng)參見(jiàn) 發(fā)送反饋意見(jiàn)
自動(dòng)生成用于協(xié)調(diào) DataSet 的更改與關(guān)聯(lián)數(shù)據(jù)庫(kù)的單表命令。這是一個(gè)只能被繼兆薯承的抽象類。
命名空間: System.Data.Common
程序集: System.Data(在 System.Data.dll 中)
語(yǔ)法
Visual Basic(聲明)
Public MustInherit Class DbCommandBuilder _
Inherits Component
Visual Basic(用法)
Dim instance As DbCommandBuilder
C#
public abstract class DbCommandBuilder : Component
Visual C++
public ref class DbCommandBuilder abstract : public Component
J#
public abstract class DbCommandBuilder extends Component
cript
public abstract class DbCommandBuilder extends Component
備注
提供 DbCommandBuilder 類是為了方便提供程序編寫者創(chuàng)建自己的命令生成器。通過(guò)繼承此類,開(kāi)發(fā)人員可在自己的代碼中實(shí)現(xiàn)提供程序特定的行為。
DbDataAdapter 不會(huì)自動(dòng)生成為了使對(duì) DataSet 所作的更改和相關(guān)聯(lián)的數(shù)據(jù)源協(xié)調(diào)起來(lái)所必須的 SQL 語(yǔ)句。但是,如果設(shè)置了 DbDataAdapter 的 SelectCommand 屬性,就可以創(chuàng)建 DbCommandBuilder 對(duì)象來(lái)自動(dòng)生成 SQL 語(yǔ)句進(jìn)行單表更新。然后,DbCommandBuilder 將生成其他任何未設(shè)置的 SQL 語(yǔ)句。
每當(dāng)設(shè)置了 DataAdapter 屬性老野,DbCommandBuilder 就將其本身注冊(cè)為 RowUpdating 事件的偵聽(tīng)器。一次只能將一個(gè) DbDataAdapter 與一個(gè) DbCommandBuilder 對(duì)象(或相反)互相關(guān)聯(lián)。
為了生成 INSERT、UPDATE 或 DELETE 語(yǔ)句,DbCommandBuilder 會(huì)自動(dòng)使用 SelectCommand 屬性來(lái)檢索所需的元數(shù)據(jù)集。如果在檢索元數(shù)據(jù)后(例如在之一次更新后)更改 SelectCommand,則應(yīng)調(diào)用 RefreshSchema 方法來(lái)更新元數(shù)據(jù)。
SelectCommand 還必須至少返回一個(gè)主鍵列或唯一的列。如果什么都沒(méi)有返回,就會(huì)產(chǎn)生 InvalidOperationException 異常,不生成命令。
DbCommandBuilder 還使用由 SelectCommand 引用的 Connection、CommandTimeout 和 Transaction 屬性。如果修改了任何這些屬性或者替換了 SelectCommand 本身,用戶則應(yīng)調(diào)用 RefreshSchema。否則,InsertCommand、UpdateCommand 和 DeleteCommand 屬性都保留它們以前的值。
如果調(diào)用 Dispose,則會(huì)解除 DbCommandBuilder 與 DbDataAdapter 的關(guān)聯(lián),并且不再使用生侍猜喊成的命令。
要在引入處自己加入System.Data.OracleClient
using System;
using System.Data;
using System.Data.OracleClient;
using System.Web.UI.WebControls; namespace SiFenManager.Util
{
///
/// 數(shù)據(jù)庫(kù)通用操作類
///
public class Database
{
protected OracleConnection con;//連接對(duì)象
public Database()
{
con=new OracleConnection(DafangFramework.AppConfig.DataBaseConnectionString);
}
public Database(string constr)
{
con=new OracleConnection(constr);
}
#region 打開(kāi)數(shù)據(jù)庫(kù)連接
///
/// 打開(kāi)數(shù)據(jù)庫(kù)連接
///
private void Open()
{
//打開(kāi)數(shù)據(jù)庫(kù)連接
if(con.State==ConnectionState.Closed)
{
try
{
//打開(kāi)數(shù)據(jù)庫(kù)連接
con.Open();
}
catch(Exception e)
{
throw e;
}
}
}
#endregion
#region 關(guān)閉數(shù)據(jù)庫(kù)連接
///
/// 關(guān)閉數(shù)據(jù)庫(kù)連接
///
private void Close()
{
//判斷連接的狀態(tài)是否已經(jīng)打開(kāi)
if(con.State==ConnectionState.Open)
{
con.Close();
}
}
#endregion
#region 執(zhí)行查詢語(yǔ)句,返回OracleDataReader ( 注意:調(diào)用該方法后,一定要對(duì)OracleDataReader進(jìn)行Close )
///
/// 執(zhí)行查詢語(yǔ)句,返回OracleDataReader ( 注意:調(diào)用該方法后,一定要對(duì)OracleDataReader進(jìn)行Close )
///
/// 查詢語(yǔ)句
/// OracleDataReader
public OracleDataReader ExecuteReader(string sql)
{
OracleDataReader myReader;
Open();
OracleCommand cmd = new OracleCommand(sql, con);
myReader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
return myReader;
}
#endregion
用的時(shí)候不關(guān)閉連攔逗兆接,最后退出系統(tǒng)時(shí)再關(guān),一般不這么用。
建議使用tomcat連接池的方法處理,效果會(huì)好,程序也不用較多的特殊處理。
1:連接池所要解決的問(wèn)題:
應(yīng)用程序每一次與數(shù)據(jù)庫(kù)的連接都會(huì)由于網(wǎng)絡(luò)傳輸和執(zhí)行數(shù)據(jù)庫(kù)查詢而嚴(yán)重降低了程序的執(zhí)行效率,因此我們需要用到連接池將將我們經(jīng)常要用到的數(shù)據(jù)保存簡(jiǎn)租在連接池中,這樣就減少了網(wǎng)絡(luò)傳輸和因查詢而給程序執(zhí)行效率帶來(lái)的影響。
2:連接池的本質(zhì):用一個(gè)保存查詢出來(lái)的數(shù)據(jù)。
3:連接池的實(shí)現(xiàn)原理:
我們要使用Connect pool,首先要做的是訪問(wèn)datasource(所有的要訪指伍問(wèn)的數(shù)據(jù)都放在這里面)。datasource數(shù)據(jù)源是通過(guò)LDAP(light directory access protocal)軟件進(jìn)行管理的(其本質(zhì)就是將數(shù)據(jù)源以樹(shù)狀結(jié)構(gòu)進(jìn)行存儲(chǔ),這樣的話,方便查詢(樹(shù)狀結(jié)構(gòu)的查詢效率是最快的),java通過(guò)JNDI(java naming directory interface)訪問(wèn)LDAP里面的數(shù)據(jù)。
4:在tomcat種配置連接池:
1)打開(kāi)tomcat目錄下的conf/context.cfg:在里面加入如下配置
Xml代碼
其中:maxActive:代表的是要配置的更大連接數(shù)。
type:資源類型
2)通過(guò)應(yīng)用程序執(zhí)行上述連接:
Java代碼
conn.close():連接池是被覆蓋了的,本質(zhì)上的含義,把連接池借過(guò)來(lái)的連接還回去。
java web 開(kāi)發(fā)書上的例子
web.xml
index.jsp
SQL Server 2023 DataSource
jdbc/dbpooling
javax.sql.DataSource
Container
showUsers.jsp
全部注冊(cè)用戶信息
“);
out.println(“用戶名密碼”);
while (rs.next()) {
out.println(“”);
out.println(rs.getString(2));
out.println(“”);
out.println(rs.getString(3));
out.println(“”);
}
out.println(“”);
} catch (SQLException e) {
out.println(e);
}
%>
關(guān)于ado.net 添加數(shù)據(jù)庫(kù)的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。
成都網(wǎng)站建設(shè)選創(chuàng)新互聯(lián)(?:028-86922220),專業(yè)從事成都網(wǎng)站制作設(shè)計(jì),高端小程序APP定制開(kāi)發(fā),成都網(wǎng)絡(luò)營(yíng)銷推廣等一站式服務(wù)。
分享文章:快速入門:使用ADO.NET添加數(shù)據(jù)庫(kù)(ado.net添加數(shù)據(jù)庫(kù))
當(dāng)前網(wǎng)址:http://www.5511xx.com/article/djjgdjg.html


咨詢
建站咨詢
