精华内容
下载资源
问答
  • 主要的数据库访问技术

    千次阅读 2018-05-31 18:54:44
    主要的数据库访问技术:ODBC(Open Database Connectivity开放数据库互联)作为一个访问不同数据库的公共接口

    主要的数据库访问技术:

          1.ODBC(Open Database Connectivity[开放数据库互联])为访问不同的数据库提供了一个公共的接口。ODBC使用SQL作为访问数据库的标准。这一接口提供了最大限度的互操作性,一个应用可以通过相同的代码访问不同的数据库。

          2.JDBC(Java Data Base Connectivity[java数据库连接])用于java程序链接数据库的标准方法,一种可以执行SQL的java API,可以为    多种关系型数据库提供统一访问,由java编写的类和接口实现。

          3.ADO.NET是微软在.net框架下开发设计的一组用于和数据库交互的面向对象的类库。ADO.NET提供了对关系型数据库、XML和应用程序数据的访问,允许和不同类型的数据源以及数据库进行交互。

          4.PDO(PHP Data Object)为PHP访问数据库定义了一个轻量级的、一致性的接口,他提供了一个数据访问的抽象层,无论使用什么数据库都可以通过一致的函数执行查询和获取数据。

    展开全文
  • ASP技术访问WEB数据库(转载)

    万次阅读 2004-09-26 21:07:00
     访问WEB数据库的多种方案 目前在WINDOWS环境下有多种访问WEB数据库技术,主要有: 1.公共网关接口CGI(Common Gateway Interface) CGI是较早实现的技术。适用于多种服务器平台,如UNIX、WINDOWS等,但CGI的...
    一. 访问WEB数据库的多种方案
      目前在WINDOWS环境下有多种访问WEB数据库的技术,主要有:
      1.公共网关接口CGI(Common Gateway Interface)
      CGI是较早实现的技术。适用于多种服务器平台,如UNIX、WINDOWS等,但CGI的开发
    成本高、维护困难、功能有限、不具备事务处理功能、占用服务器资源较多。
      2. INTERNET数据库连接器IDC(Internet Database Connector)
      IDC集成在ISAPI(Internet Server API)中,充分利用了DLL技术,易扩充,但编程
    较CGI更为复杂,只适用于小型数据库系统。
      3. 先进数据库连接器ADC(Advance Database Connector)
      ADC提供了ActiveX Control来访问数据库,它的主要特点是数据查询由用户端浏览
    器执行,因而需将服务器端数据库中的部分记录下载到用户端,系统开销较大、响应慢
    ,只适用于特别频繁的数据库查询操作。
      4. JAVA/JDBC语言编程
      JAVA语言是一种面向对象、易移植、多线程控制的语言,可通过JDBC去连接数据库
    。用JAVA/JDBC编写的软件可移植性强,适用于多种操作系统,但其执行效率和执行速度
    还不理想,目前无法建立高效、高速的应用。
      5. 动态服务器页面ASP(Active Server Page)
      ASP是微软公司最新推出的WEB应用开发技术,着重于处理动态网页和WEB数据库的开
    发,编程灵活、简洁,具有较高的性能,是目前访问WEB数据库的最佳选择。
      二. ASP简介
      1.ASP访问数据库的原理
      ASP是服务器端的脚本执行环境,可用来产生和执行动态的高性能的WEB服务器程序

      当用户使用浏览器请求ASP主页时,WEB服务器响应,调用ASP引擎来执行ASP文件,
    并解释其中的脚本语言(JScript 或VBScript),通过ODBC连接数据库,由数据库访问组
    件ADO(ActiveX Data Objects)完成数据库操作,最后ASP生成包含有数据查询结果的HT
    ML主页返回用户端显示。
      由于ASP在服务器端运行,运行结果以HTML主页形式返回用户浏览器,因而ASP源程
    序不会泄密,增加了系统的安全保密性。此外,ASP是面向对象的脚本环境,用户可自行
    增加ActiveX组件来扩充其功能,拓展应用范围。
      2.ASP页面的结构:
      ASP的程序代码简单、通用,文件名由.asp结尾,ASP文件通常由四部分构成:
      1) 标准的HTML标记:所有的HTML标记均可使用。
      2) ASP语法命令:位于<% %> 标签内的ASP代码。
      3) 服务器端的include语句:可用#include语句调入其它ASP代码,增强了编程的灵
    活性。
      4) 脚本语言:ASP自带JScript和VBScript两种脚本语言,增加了ASP的编程功能,
    用户也可安装其它脚本语言,如Perl、Rexx等。
      3.ASP的运行环境
      目前ASP可运行在三种环境下。
      1) WINDOWS NT server 4.0运行IIS 3.0(Internet Information Server)以上。
      2) WINDOWS NT workstation 4.0运行Peer Web Server 3.0以上。
      3) WINDOWS 95/98运行PWS(Personal Web Server)。
      其中以NT server上的IIS功能最强,提供了对ASP的全面支持,是创建高速、稳定的
    ASP主页的最佳选择。
      4.ASP的内建对象
      ASP提供了六个内建对象,供用户直接调用:
      1) Application对象:负责管理所有会话信息,可用来在指定的应用程序的所有用
    户之间共享信息。
      2) Session对象:存贮特定用户的会话信息,只被该用户访问,当用户在不同WEB页
    面跳转时,Session中的变量在用户整个会话过程中一直保存。Session对象需cookie支
    持。
      3) Request对象:从用户端取得信息传递给服务器,是ASP读取用户输入的主要方法

      4) Response对象:服务器将输出内容发送到用户端。
      5) Server对象:提供对服务器有关方法和属性的访问。
      6) Object Context对象:IIS 4.0新增的对象,用来进行事务处理。此项功能需得
    到MTS(Microsoft Transcation Server)管理的支持。
      5. ASP的主要内置组件:
      1) Ad Rotator组件:用来按指定计划在同一页上自动轮换显示广告,用于WWW上日
    益重要的广告服务。
      2) Browser Capabilities组件:确定访问WEB站点的用户浏览器的功能数据,包括
    类型、性能、版本等。
      3) Database Access组件:提供ADO (ActiveX Data Objects)来访问支持ODBC的数
    据库。
      4) File Access组件:提供对服务器端文件的读写功能。
      5) Content Linking组件:生成WEB页内容列表,并将各页顺序连接,用于制作导航
    条。
      此外,还可安装Myinfo、Counters、Content Rotator、Page Count等组件,用户也
    可自行编制Actiive组件,以提高系统的实用性。
      6. Database Access组件ADO
      WWW上很重要的应用是访问WEB数据库,用ASP访问WEB数据库时,必须使用ADO组件,
    ADO是ASP内置的ActiveX服务器组件(ActiveX Server Component),通过在WEB服务器上
    设置ODBC和OLEDB可连接多种数据库:如SYBASE、ORACLE、INFORMIX、SQL SERVER、ACC
    ESS、VFP等,是对目前微软所支持的数据库进行操作的最有效和最简单直接的方法。
      ADO组件主要提供了以下七个对象和四个集合来访问数据库。
      1) Connection对象:建立与后台数据库的连接。
      2) Command对象:执行SQL指令,访问数据库。
      3) Parameters对象和Parameters集合:为Command对象提供数据和参数。
      4) RecordSet对象:存放访问数据库后的数据信息,是最经常使用的对象。
      5) Field对象和Field集合:提供对RecordSet中当前记录的各个字段进行访问的功
    能。
      6) Property对象和Properties集合:提供有关信息,供Connection、Command、Re
    cordSet、Field对象使用。
      7) Error对象和Errors集合:提供访问数据库时的错误信息。
      三. ASP访问数据库步骤
      在ASP中,使用ADO组件访问后台数据库,可通过以下步骤进行:
      1. 定义数据源
      在WEB服务器上打开“控制面板”,选中“ODBC”,在“系统DSN”下选“添加”,
    选定你希望的数据库种类、名称、位置等。本文定义“SQL SERVER”,数据源为“HT”
    ,数据库名称为“HTDATA”,脚本语言采用Jscript。
      2,使用ADO组件查询WEB数据库
      1) 调用Server.CreateObject方法取得“ADODB.Connection”的实例,再使用Open
    方法打开数据库:
      conn = Server.CreateObject(“ADODB.Connection”)
      conn.Open(“HT”)
      2) 指定要执行的SQL命令
      连接数据库后,可对数据库操作,如查询,修改,删除等,这些都是通过SQL指令来
    完成的,如要在数据表signaltab中查询代码中含有“X”的记录
      sqlStr = “select * from signaltab where code like ‘%X%’”
      rs = conn.Execute(sqlStr)
      3) 使用RecordSet属性和方法,并显示结果
      为了更精确地跟踪数据,要用RecordSet组件创建包含数据的游标,游标就是储存在
    内存中的数据。
      rs = Server.CreateObject(“ADODB.RecordSet”)
      rs.Open(sqlStr,conn,1,A)
      注:A=1读取
      A=3 新增、修改、删除
      在RecordSet组件中,常用的属性和方法有:
      rs.Fields.Count: RecordSet对象的字段数。
      rs(i).Name: 第i个字段的名称,i为0至rs.Fields.Count-1
      rs(i): 第i个字段的数据,i为0至rs.Fields.Count-1
      rs("字段名"): 指定字段的数据。
      rs.Record.Count:游标中的数据记录总数。
      rs.EOF: 是否最后一条记录。
      rs.MoveFirst: 指向第一条记录。
      rs.MoveLast: 指向最后一条记录。
      rs.MovePrev: 指向上一条记录。
      rs.MoveNext: 指向下一条记录。
      rs.GetRows: 将数据放入数组中。
      rs.Properties.Count:ADO的ResultSet或Connection的属性个数。
      rs.Properties(item).Name:ADO的ResultSet或Connection的名称。
      rs.Properties: ADO的ResultSet或Connection的值。
      rs.close(): 关闭连接。
      4) 关闭数据库
      conn.close()
      四.查询WEB数据库举例
      下面这段示例程序是访问SQL SERVER数据库的 signaltab表,表中有三个字段:co
    de(代码字段,字符型,3位),class(分类字段,字符型,10位),memo(备注字段,字符
    型,20位)。程序中数据源DSN:HT、用户名:client、口令:passwd。
      屏幕输入页面input.asp
      <% @ language=javascript %>
      <html>
      <head>
      <title>请输入查询条件PLEASE INPUT CONDITION</title>
      </head>
      <form action=shotquery.asp METHOD="post" target="_self">
      <input TYPE="text" size=6 maxlength=3 NAME=signalCode VALUE="代码"> </fo
    nt></p>
      </center></div><p></p>
      <input LANGUAGE="JavaScript" TYPE="submit" VALUE=“确认” NAME="B1"
      
      <input TYPE="reset" VALUE=“清除”NAME="B2">
      
      <input LANGUAGE="JavaScript" TYPE="button" NAME="B3" VALUE=“返回”
      ONCLICK="window.history.back()">
      </font></p>
      </center></div>
      </form>
      </body>
      </html>
      数据库处理程序shotquery.asp
      <!--#include virtual="/master/lib.inc"-->
      <script language=javascript runat=server>
      var signalCode=Request.Form("signalCode");
      dbConn = Server.CreateObject("ADODB.Connection");
      dbConn.open("DSN=HT;UID=client;PWD=passwd");
      rs = Server.CreateObject("ADODB.RecordSet");
      var sqlStr = "select * from signaltab order by code";
      rs.open(sqlStr,dbConn,1);
      if(rs.RecordCount < 1) {
      Response.write("<p>      无符合条件记录</p>");
      Response.write("<p><form>       <input type='button' value=' 返回' oncli
    ck='window.history.back()' name='b1'></form></p>");
      }
      else {
      Response.write("<P><center><B>数据查询结果</B></center></P>");
      Response.write("<tr><td><b>代码</b></td><td><b>分类</b></td><td><b>备注<
    /b></td>");
      for(var i = 1;i <= rs.Pagesize;i++) {
      if(!rs.Eof) {
      Response.write("<td><span style='font-size:9t'>"+rs("code")+"</span></td
    >");
      Response.write("<td><span style='font-size:9t'>"+rs("class")+"</span></t
    d>");
      Response.write("<td><span style='font-size:9t'>"+rs("memo")+"</span></td
    >");
      Response.write("</tr>");
      rs.MoveNext();
      }
      else break;
      }
      Response.write("</table></form>");
      rs.close();
      dbConn.close();
      }
      </script>
    展开全文
  • 南邮web技术的第三次实验,看起来与上次第二次的内容差别不大,但这次要访问数据库。用php连接的数据库。 代码如下:(分为main.html、process.php、order_query.html、process_query.php) main.html mian.html ...

    PHP Web服务端脚本编写示例——图书售卖系统示例[1/2]

    PHP Web数据库访问编写简单示例——图书售卖系统示例[2/2]

    (2020年1月29日11:32:15更新文章排版,内容未修改)

    南邮web技术的第三次实验,看起来与上次第二次的内容差别不大,但这次要访问数据库。用php连接的数据库。

    代码如下:(分为main.html、process.php、order_query.html、process_query.php)

    main.html

    mian.html
    <html>
    <head>
     <title>Welcome to book seller</title>
    </head>
    
    <body>
    	<form action = "process.php" method = "post">
    		<h2>Welcome!</h2>
    		
    		<table>
    			<tr>
    				<td>please input your name</td>
    				<td><input type = "text" name = "name" size = "30" /></td>
    			</tr>
    			<tr>
    				<td>please input your address</td>
    				<td><input type = "text" name = "address" size = "30" /></td>
    			</tr>
    			<tr>
    				<td>please input your zip</td>
    				<td><input type = "text" name = "zip" size = "30" /></td>
    			</tr>
    		</table>
    		
    
    		<p>please fiil in the quantify field of the following form</p>
    
    		<table border = "border">
    			<tr>
    				<th>book</th>
    				<th>publisher</th>
    				<th>price</th>
    				<th>quantitiy</th>
    			</tr>
    			<tr>
    				<td>Web technology</td>
    				<td>Springer press</td>
    				<td>$5.0</td>
    				<td><input type = "text" name = "web_t" size = "7" /></td>
    			</tr>
    			<tr>
    				<td>mathematics</td>
    				<td>ACM press</td>
    				<td>$6.2</td>
    				<td><input type = "text" name = "math" size = "7" /></td>
    			</tr>
    			<tr>
    				<td>principle of OS</td>
    				<td>Science press</td>
    				<td>$10</td>
    				<td><input type = "text" name = "os" size = "7" /></td>
    			</tr>
    			<tr>
    				<td>Theory of matrix</td>
    				<td>High education press</td>
    				<td>$7.8</td>
    				<td><input type = "text" name = "matrix" size = "7" /></td>
    			</tr>
    			</table>
    
    		<h3>Payment method</h3>
    			<p>
    			<input type = "radio" name = "payment" value = "cash" chexked = "unchecked" />
    			cash <br/>
    			<input type = "radio" name = "payment" value = "cheque" chexked = "unchecked" />
    			cheque <br/>
    			<input type = "radio" name = "payment" value = "credit card" chexked = "unchecked" />
    			credit card <br/>
    
    			<input type = "submit" value = "submit" />
    			<input type = "reset" value = "reset" />
    
    		</p>
    		</form>
    </body>
    </html>

    process.php 

    process.php:
    <!-- -->
    <html>
    <head>
    	<title>This is the output of process.php</title>
    </head>
    
    <body>
    	<?php
    		$name = $_POST["name"];
    		$address = $_POST["address"];
    		$zip = $_POST["zip"];
    		$web_t = $_POST["web_t"];
    		$math = $_POST["math"];
    		$os = $_POST["os"];
    		$matrix = $_POST["matrix"];
    		$payment = $_POST["payment"];
    		
    		if($web_t == "") $web_t = 0;
    		if($math == "") $math = 0;
    		if($os == "") $math = 0;
    		if($matrix == "") $matrix = 0;
    
    		$web_t_cost = 5.0*$web_t;
    		$math_cost = 6.2*$math;
    		$os_cost = 10*$os;
    		$matrix_cost = 7.8*$matrix;
    		$total_num = $web_t+$math+$os+$matrix;
    		$total_price = $web_t_cost+$math_cost+$os_cost+$matrix_cost;
    		 
    		$con = mysql_connect("localhost" , "root", "");
    		if(!$con)
    		{
    			die('Could not connect:'.mysql_error());
    		}
    		mysql_select_db("myEx", $con);
    		$sql = "insert into customers values('$name', '$address', '$zip')";
    		if(!mysql_query($sql, $con))
    		{
    			die('ERROR:'.mysql_error());
    		}
    
    		if($web_t != 0)
    		{
    			$sql = "insert into books values('Web technology', 'Springer press', 5)";
    			if(!mysql_query($sql, $con))
    			{
    				die('ERROR:'.mysql_error());
    			}
    
    			$sql = "insert into orders values('$name', 'Web technology', $web_t)";
    			if(!mysql_query($sql, $con))
    			{
    				die('ERROR:'.mysql_error());
    			}
    		}
    
    		if($math != 0)
    		{
    			$sql = "insert into books values ('mathematics', 'ACM press', 6.2)";
    			if(!mysql_query($sql, $con))
    			{
    				die('ERROR:'.mysql_error());
    			}
    			$sql = "insert into orders values ('$name', 'mathematics', $math)";
    			if(!mysql_query($sql, $con))
    			{
    				die('ERROR:'.mysql_error());
    			}
    		}
    
    		if($os != 0)
    		{
    			$sql = "insert into books values ('principle of OS', 'Science press', 10)";
    			if(!mysql_query($sql, $con))
    			{
    				die('ERROR:'.mysql_error());
    			}
    			$sql = "insert into orders values ('$name', 'principle of OS', '$os')";
    			if(!mysql_query($sql, $con))
    			{
    				die('ERROR:'.mysql_error());
    			}
    		}
    
    		if($matrix != 0)
    		{
    			$sql = "insert into books values ('Theory of matrix', 'High education press', 7.8)";
    			if(!mysql_query($sql, $con))
    			{
    				die('ERROR:'.mysql_error());
    			}
    			$sql = "insert into orders values ('$name', 'Theory of matrix' , '$matrix')";
    			if(!mysql_query($sql, $con))
    			{
    				die('ERROR:'.mysql_error());
    			}
    		}
    		echo'END';
    	?>
    </body>
    </html>

    order_query.html 

    order_query.html:
    <html>
    <head>
     <title>order_query.html</title>
    </head>
    
    <body>
    	<form action = "process_query.php" method = "post" align = "middle">
    	<label>please input customer name</label>
    	</br>
    	</br>
    	<input type = "text" name = "user_name" />
    	<br/>
    	<br/>
    	<input type = "submit" value = "submit" />
    	</form>
    </body>
    </html>

    process_query.php 

    process_query.php:
    <html>
    <head>
    	<title>porcess_query.php form</title>
    </head>
    <body>
    <?php
    	$user_name = $_POST["user_name"];
    	$con = mysql_connect("localhost", "root", "");
    	if(!$con)
    	{
    		die('Could not connect:'.my_sqlerror());
    	}
    	mysql_select_db('myEx', $con);
    
    	$result = mysql_query("select name, orders.book, publisher, quantity
    	from orders, books where orders.book = books.book and name = '$user_name'"); //
    	echo"<table border = '1'>
    	<tr>
    	<th>name</th>
    	<th>book</th>
    	<th>publisher</th>
    	<th>quantity</th>
    	</tr>";
    	while($row = mysql_fetch_array($result))
    	{
    		echo"<tr>";
    		echo"<td>".$row['name']."</td>";
    		echo"<td>".$row['book']."</td>";
    		echo"<td>".$row['publisher']."</td>";
    		echo"<td>".$row['quantity']."</td>";
    		echo"</tr>";
    	}
    
    	echo"</table>";
    	mysql_close($con);
    ?>
    </body>
    </html>

     

     

     

    展开全文
  • ADO.NET数据库访问技术

    千次阅读 2017-07-27 10:10:26
    ADO.NET简介ADO.NET来源于COM组件库ADO(即ActiveX Data Objects),利用 .NET Data Provider (数据提供程序)进行数据库的连接和访问,通过ADO.NET,数据库程序能够使用各种对象来访问符合条件的数据库内容。...

    ADO.NET简介

    ADO.NET来源于COM组件库ADO(即ActiveX Data Objects),利用 .NET Data Provider (数据提供程序)进行数据库的连接和访问,通过ADO.NET,数据库程序能够使用各种对象来访问符合条件的数据库内容。
    ADO.NET结构模型

    ADO.NET是一个类库,这些类提供了很多的对象,可用于完成数据库的增删改查(CRUD)。包括的对象为:

    1. Connection :用来连接数据库(SQL server 使用的是SqlConnection对象)
    2. Command:用来对数据库执行SQL命令,如CRUD
    3. DataReader:从数据库中返回只读数据,用数据源填充DataSet对象
    4. DataAdapter:与DataSet对象相结合时用,实现对数据库的控制
    5. DataSet:可以看做是离线时内存中的数据库

    上述五中对象提供了两种对数据库的访问方式:

    1. 第一种方式:使用Connection、Command、DataReader,其权限只能读取或查询数据库
    2. 第二种方式:使用Connection、Command、DataAdapter、DataSet,其权限能进行各种数据库操作

    ADO.NET访问数据库操作示意图如下:
    数据库访问示意图
    使用ADO.NET在线访问数据库的步骤
    连接数据库:

    using System.Data.SqlClient;
    string source = "server=(local); integrated security=SSPI;  database=myDateabase; User ID=sa; pwd=sa"; 
    SqlConnection conn = new SqlConnection(source); 
    conn.Open(); 
    // 对数据库数据进行操作
    conn.Close();
    
    1. 首先添加命名空间:System.Data.SqlClient;
    2. 定义数据库连接字符串:
      第一种方法:直接把数据库链接字符放在字符串对象中,如上代码;
      第二种方法:将数据库连接信息存放在web.config配置文件中,通过使用ConfigurationStringSettings类进行调用:
    • 首先,在web.config文件中定义数据库连接信息:
    <configuration>
    	<connectionStrings>
    		<add name="myDatabase" connectionString=" server=(local); integrated security=SSPI; database=myDateabase;User ID=sa;pwd=sa" providerName="System.Data.SqlClient" />	
    	</connectionStrings>
    </configuration>
    
    • 在项目文件中,添加对Configuration的引用,需要引入命名空间“System.Configuration”,然后定义数据库连接字符串为:
    string connstring = ConfigurationManager.ConnectionStrings["myDatabase"].ConnectionString;
    

    创建数据库连接

    创建Connecton对象:
    string conn = new SqlConnection(connString);
    打开数据库:conn.Open()

    一般情况下,当在.NET中使用“稀缺”的资源时,如数据库连接、窗口或图形对象,最好确保每个资源在使用完毕后立即关闭。尽管.NET的设计人员实现了自动垃圾收集机制,垃圾最终会被回收,但仍需要尽可能早地释放资源,以避免出现资源匮乏的情况。 当编写访问数据库的代码时,因为使连接打开的时间略长于需要的时间,就可能影响其他会话。在极端的情况下,不关闭连接可能会使其他用户无法进入一整组数据表,极大地降低应用程序的性能。主要有两种方式可以确保数据库连接等类似的“稀缺”资源在使用完后立即释放。

    • 释放资源的方式:
      1. 采用try...catch...finally语句块 确保在finally中关闭任何已打开的连接;
    try 
    { 
    	// open the connection 
    	conn.Open(); 
    	// 对数据库数据进行操作 
    } catch (SqlException ex) { 
    	// log the exception 
    } finally { 
    	conn.Close(); 
    }
    
    1. 使用using语句块,无论块是如何退出的,using子句都会确保关闭数据库连接
    using(SqlConnection conn = new SqlConnection(connstring)){ 
    		// Open the connection 
    		conn.Open(); 
    		// 对数据库数据进行操作 
    	}
    

    创建数据库操作命令
    Connection对象与数据源建立连接后,使用Command对象对数据源执行查询、插入、修改和删除等操作。

    1. 创建SQL数据库操作命令
    2. 创建Command对象,方法:
    方法一:
    SqlCommand command = new SqlCommand(); 
    command.Connection = conn; 
    command.CommandText = "SQL语句"; 
    方法二:
    SqlCommand command = new SqlCommand("SQL语句", conn); 
    

    备注:
    1). SQL查询语句若含有C#程序的变量并以字符串形式连接,则应注意数据为非数字的变量应用单引号括起来;
    2). 在SQL查询语句中使用参数化查询语句的话,譬如:command.CommandText = "SELECT * FROM myTable WHERE siteName=@siteName";为参数赋值时,需要使用Command对象建立参数对象,然后再赋值:
    command.Parameters.Add(new SqlParameter(@siteName, siteName))
    command.Parameters["@siteName"].Value = "http://#";

    备注: 在.Net Framework 2.0中SqlClient增加了AddWithValue(string parameterName, object value)方法。该方法简化了调用储存过程的输入参数过程,在运行时对所输入的数据类型进行判断,获取对应的数据库类型。 因此该方法在运行效率上比用 Add(string parameterName, SqlDbType sqlDbType, int size, string sourceColumn)方法要低。 在效率要求较高的地方仍然建议使用Add()方法,其它场合可以使用AddWithValue()简化代码编写量

    执行sqlQuery命令
    定义好命令后,就需要执行它。执行的语句有多种方式,这取决于要从命令中返回什么数据。Command类提供了下述可执行的命令:

    1. ExecuteNonQuery() —— 执行命令,但不返回任何结果。一般用于UPDATE、INSERT或DELETE语句中,其中唯一的返回值是受影响的记录个数。但如果调用带有输出参数的存储过程,该方法就有返回值。
    2. ExecuteReader() —— 执行命令,返回一个类型化的IDataReader。是从数据源中选择某些数据的最简单快捷的方法
    3. ExecuteScalar() —— 执行命令,返回结果集中的第一行第一列的值

    对数据库操作完毕后关闭数据库连接conn.Close();

    离线数据库访问

    DataAdapter对象主要在Connection对象和DataSet对象之间执行数据的传输工作,将数据填充到DataSet对象中,也可把DataSet对象更新后的数据返回到数据源中,也可架构在Command对象上,通过CommandBuilding对象生成DataAdapter的Insert、Update和Delete等SQL操作命令。使用DataSet和DataTable对象访问数据源后,ADO.NET会自动离线,在内存中处理数据,如有修改数据的操作,将自动重新连接数据源,更新数据库。DataSet对象、DataAdapter对象与数据源之间的关系如下:
    DataSet <—> DataAdapter <—> 数据源

    下面是使用DataAdapter进行离线数据库访问的操作步骤:

    1. 创建DataAdapter、DataTable对象(使用的是SQL Server数据库)
    SqlAdapter da = new SqlAdapter("sqlQuery查询语句", conn);
    DataSet ds = new DataSet(); 
    
    1. 将数据填充到DataTable对象
    da.Fill(ds, "TableName"); dt = ds.Tables["TableName"]; 
    
    1. 对DataTable中的数据进行处理 TataTable对象的属性和方法有:
    名称 属性/方法 说明
    Rows.Add() 方法 插入新数据行
    Rows[n].Delete() 方法 删除第n行的记录
    Rows.Count 属性 获取行数
    Rows[i][“ColumnName”] 属性 获取第i行、列名为ColumnName的值
    Rows[i][j] 属性 获取第i行、第j列的值
    展开全文
  • 相关文章:.NET下使用Oracle数据库、数据库访问技术(上) 在上一篇文章中介绍了.NET下使用Oracle数据提供程序访问Oracle的方法以及较老的数据库访问方式,ODBC,DAO,RDO等。总的说ODBC的出现使得程序员不必在关注与...
  • 最近做一个ASP.NET性能优化的小项目,目前还是在搭建测试环境,服务器使用...因为大多是使用的是SQL SERVER数据库,而以前接触ORACLE9i,10G时都是在Linux环境下,所以不太了解这个ODP.NET是个什么。 然后就查了查
  • 实验六 ADO.NET数据库访问技术(一)   一. 目的和要求 掌握使用ADO。NET访问SQL Server数据库.掌握使用ADO.NET进行增加、删除、修改数据的方法。 二.实验课时 2课时。 三.实验内容 1. 编写程序,创建一个...
  • 什么是Web数据库应用程序?

    千次阅读 2017-01-12 11:17:24
    什么是Web数据库应用程序? 应用是被设计为由最终用户(例如,客户,成员或马戏杂技演员)使用的程序或一组程序。...本章为您提供开发可通过Internet浏览器(如Internet Explorer和Netscape)访问Web数据库应用
  • 数据库访问方式

    千次阅读 2019-04-20 16:17:22
    数据库访问方式
  • 摘要:本文分析了Web Service的特点,提出了一种基于Microsoft.NET的 Web Service技术访问分布异构数据库的体系结构,并采用.NET技术实现了原型系统。在原型系统中,使用Web Service将分布于Internet上的不同的...
  • 数据库技术前沿总结

    万次阅读 多人点赞 2018-12-31 08:14:26
    (1)面向对象的方法和技术数据库发展的影响最为深远数据库研究人员借鉴和吸收了面向对象的方法和技术,提出了面向对象数据模型(简称对象模型)。该模型克服了传统数据模型的局限性,促进了数据库技术在一个新的...
  • 保障Web数据库安全运行

    千次阅读 2008-11-25 00:48:00
    常见Web数据库安全技术 用户标识和鉴别: 用户标识与鉴定的方法有多种,为了获得更强的安全性,通常是多种方法并用。系统通过核对口令来判别用户的真伪。这种方法简单易行,但是也是一个不安全的方法,不能...
  • 基于WCF 的远程数据库服务访问技术

    千次阅读 2013-01-20 11:06:41
    分析了WCF 在远程通信方面的优势以及项目基于数据库服务的多层次开发技术,并通过开发具体应用程序来展示基于WCF 架构的远程数据库服务访问技术的编程步骤和技巧。    关键词:WCF;SOA;数据库服务
  • PHP访问MySql数据库 高级篇 AJAX技术

    万次阅读 热门讨论 2011-12-26 11:00:43
    阅读本文之前,推荐先参阅《PHP访问MySql数据库 初级篇》和《PHP访问MySql数据库 中级篇 Smarty技术》。在前面的文章,我们已经开发了一个能够读取数据库并显示数据的程序,且程序达到了良好的界面与逻辑分离。但是...
  • 数据库连接技术整理

    千次阅读 2017-02-09 15:40:14
    ODBC(Open Database Connectivity,开放数据库互连)是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API...
  • 数据库访问权限 团队下的成员,拥有该团队下所有数据源的最大访问权限。即:查询、更新、表结构操作权限。 添加团队 : 添加管理员 管理员是kb-dms平台上权限最大的用户,可以添加多个管理员。管理员...
  • 数据库集群技术

    千次阅读 2016-03-29 09:11:29
    ◆ 在需要更高数据库处理速度的时候,我们只需简单增加数据库服务器就可以了。这样可以大大减小硬件投资的风险,而且大大提高现有服务的质量。  ◆ 在任何时刻需要有多个随时可用的实时同步数据服务。为了防灾...
  • Caché数据库开发技术

    千次阅读 2018-08-03 16:15:15
    一、Caché简介及多维存储 Caché数据库是Inter Systems公司的产品,为了适应互联网的迅速发展对数据存储效率的要求,Inter Systems公司经过多年的努力,...对象数据库访问;2.SQL语句进行访问;3.采用多维数组的方...
  • 利用JSP技术访问MySQL数据库

    千次阅读 2007-01-25 09:33:00
    应用JSP技术web页面中访问mysql数据库的方法有两种(可能还有更多,欢迎指证): 在web.xml文件中设置相应的上下文参数值。 在要访问mysql数据库的页面中设置dataSource. 其实,这两种方法是条条大路通罗马,其...
  • SOAP在远程数据库访问中的应用

    千次阅读 2008-03-16 22:05:00
    SOAP在远程数据库访问中的应用Access Remote Database Based On SOAP一、现有数据库访问技术 当前流行的几种数据库访问技术:ODBC,DAO,OLE DB,ADO,ADO.NET,RDODAO(Data Access Objects)数据访问对象是第一个面向...
  • asp.net数据库访问学习心得

    千次阅读 2009-03-24 17:45:00
    asp.net数据库访问学习心得1(Oracle访问)在asp.net中通过ADO.NET访问数据库很方便,介绍这方面代码的文章也数不胜数,在这里我只说一下自己的心得还有遇到的问题及解决办法。 asp.net访问SQL Server数据库使用...
  • 请教问题,某省各区县都部署有自己的系统,系统是BS的,应用服务器与...有没有什么中介件或技术可以实现,省里的服务器可以访问区县的数据? 或者有什么方式可以让区县的数据实时或定时的同步汇总到省里的服务器中?
  • Java Web----Java Web数据库操作(一)

    万次阅读 多人点赞 2013-08-06 17:03:42
    Java Web数据库操作 一、JDBC技术 1、JDBC简介  JDBC是Java程序与数据库系统通信的标准API,它定义在JDK的API中,通过JDBC技术,Java程序可以非常方便地与各种数据库交互,JDBC在Java程序与数据库系统之间假期了...
  • Python访问数据库

    千次阅读 2018-06-06 16:22:44
    Python访问数据库(用flask做web开发连接数据库时,被python2和3的不兼容整的头疼,决定系统的学习一遍python3访问数据库)(参考廖雪峰的python学习网站)1. SQLite.SQLite是一种嵌入式数据库,Python就内置了...
  • 开源轻量级数据库访问框架

    千次阅读 2016-08-23 15:57:44
    本框架为开源框架,旨在简化用户的数据库操作,提供便捷的数据库访问服务而封装。该框架依赖于JDBC,并且基于原生JAVA SE框架的封装。框架对比对于经常进行数据库开发和JAVA EE开发的编程人员而言,其最先使用到的...
  • unity 3d中,我要做一个管理系统,发布成Web 版的,连接数据库时要用到什么技术?求有实际经验的大神帮忙指导
  • Spring Boot总结(一):入门 ...Spring Boot总结(四):提高数据库访问性能 Spring Boot总结(五):安全设计 Spring Boot总结(六):Spring Boot SSO Spring Boot总结(七):使用分布式文件...
  • 数据库中间件技术的研究与应用

    千次阅读 2012-02-19 18:03:20
    数据库中间件技术的研究与应用 ... 随着网络和信息管理系统的发展,数据库和计算机网络之间的联系和应用越来越紧密,对数据库访问时的功能、性能、安全等要求越来越高,传统的简单的C/S
  • 飞机订票系统——基于JDBC数据库技术的Java web项目

    千次阅读 热门讨论 2019-06-18 22:47:46
    这个系统是我在大三上学期的软件工程课程设计环节和同学一起合作的项目,涉及到的技术比较基础。所以趁着有空本人写一篇博客翻翻旧账~ 一、准备工作 下载并安装Eclipse for java ee 这个不用多说,java最常用的IDE...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 329,269
精华内容 131,707
关键字:

web数据库访问技术