javascript连接SQL Server 2014进行增删改查(适用于IE浏览器)

在下面的例子中引用了ADODB.Recordset对象,在引用时,需要用到一些常量,要先找到C:\Program Files\Common Files\System\ado\adojavas.inc,然后把这个文件复制贴成一个新的文件,修改文件名为: adojavas.js,注意扩展名为js,表示是javascript代码。

然后,要把文件中的 <% 和 %> 符号去掉,这个符号是用vbscript开发ASP时才需要的。

具体的数据:

 

create database Test;
go

use test;
go

if object_id('tb') is not null
   drop table tb;
go

CREATE TABLE TB(ID INT,NAME NVARCHAR(20),SCORE NUMERIC(10,2));

INSERT INTO TB(ID,NAME,SCORE)
VALUES(1,'语文',100),
      (2,'数学',80),
	  (3,'英语',900),
	  (4,'政治',65),

	  (5,'物理',65),
	  (6,'化学',85),
	  (7,'生物',55),
	  (8,'地理',100)


基本的流程是:

 

(1)页面加载的时候,会调用onload函数,连接数据库,在关闭时,调用onunload函数,关闭数据库。

(2)在表格的框中,输入ID,点击查找,就可以找到数据。

点击新增,会把表格中输入的数据新增到tb表中。

点击修改,就会用表格中的数据修改原始数据。

点击删除,就会把找到的数据删除。


代码:

 

<!doctype html>
<html>
 <head>
	<meta charset="gb2312">
	<title>增删改查</title>

	<script src="C:\Program Files\Common Files\System\ado\adojavas.js"></script>
	<script language="javascript">
	    //全局变量
		var db,rs;
		var strConn="Provider=SQLOLEDB.1;Data Source=WIN-6;User ID=sa;Password=yupeigu;Initial Catalog=test";
		var isOpen=false;
         
		 //打开数据库
		 function openDatabase()
		 {
			db = new ActiveXObject("ADODB.Connection");
			db.Open(strConn);
			rs = new ActiveXObject("ADODB.Recordset");
		 }

         //关闭数据库
		 function closeDatabase()
		 {
			if(isOpen) 
			{
				rs.Close();
			}
			db.Close();
		 }

         //查询数据
		 function queryRecord()
		 {
			if(isOpen) 
				rs.Close();

			var sql = "select id,name,score from tb where id ='" + dbForm.id.value + "'";
			rs.Open(sql,db,adOpenStatic,adLockOptimistic,adCmdText);
			isOpen = true;

			if (!rs.EOF)
			{	
				dbForm.id.value = rs("id");
				dbForm.name.value = rs("name");
				dbForm.score.value = rs("score");
				spShow.innerHTML = "<font color=red>查询到记录!</font>";
			}
			else
			{
				spShow.innerHTML = "<font color=red>没有找到记录!</font>";
				//rs.Close();
				//isOpen = false;
			}
		 }

         //新增数据
		 function insertRecord()
		 {
			if (dbForm.id.value != "")
			{
				if(isOpen) 
					rs.Close();

				var sql = "select id,name,score from tb where id ='" + dbForm.id.value + "'";				
				rs.Open(sql,db,adOpenStatic,adLockOptimistic,adCmdText);
				isOpen = true;

				if(rs.EOF)
				{
					rs.AddNew();
					rs("id") = dbForm.id.value;
					rs("name") = dbForm.name.value;
					rs("score") = dbForm.score.value;
					rs.Update();
					spShow.innerHTML = "<font color=blue>新增数据成功!</font>";
				}
				else
				{
					spShow.innerHTML = "<font color=red>要新增的数据已经存在,请重新输入!</font>";
				}
				
			}
			else
				spShow.innerHTML = "<font color=red>没有输入ID,请输入ID!</font>";			
		 }

         //更新数据
		 function updateRecord()
		 {
			if(dbForm.id.value != "")
			{
				if(isOpen) rs.Close();

				var sql = "select * from tb where id='" + dbForm.id.value +"'";
				rs.Open(sql,db,adOpenStatic,adLockOptimistic,adCmdText);
				isOpen = true;

				if(!rs.EOF)
				{
					rs("id") = dbForm.id.value;
					rs("name") = dbForm.name.value;
					rs("score") = dbForm.score.value;
					rs.Update();
					spShow.innerHTML = "<font color=blue>更新数据成功!</font>";
				}
				else
					spShow.innerHTML = "<font color=red>要更新的数据不存在,请重新输入数据!</font>";
			}
			else
				spShow.innerHTML = "<font color=blue>没有输入ID,请输入ID!</font>";
		 }

         //删除数据
		 function deleteRecord()
		 {
			if(isOpen)
			{
				if(!rs.EOF)
				{
					rs.Delete();
					rs.Update();
					rs.Close();
					isOpen = false;

					spShow.innerHTML = "<font color=blue>删除数据成功!</font>";
				}
				else
				{
					spShow.innerHTML = "<font color=red>没有找到要删除的数据!</font>";
				}
			}
			else 
				spShow.innerHTML = "<font color=red>请先查询要删除的记录,再进行删除操作!</font>";
		 }


	</script>	
 </head>

 <body onload="openDatabase()" onunload="closeDatabase()">
	<h1>查询、增加、更新、删除数据表记录</h1>
	<hr>
	<p><span id="spShow"></span><p>
	<hr>
	<form name="dbForm">
		<table border=1>
			<tr>
				<td>ID:</td>
				<td><input type="text" name="id" size=20></td>
			</tr>
			<tr>
				<td>Name</td>
				<td><input type="text" name="name" size=20></td>
			</tr>
			<tr>
				<td>Score</td>
				<td><input type="text" name="score" size=20></td>
			</tr>
		</table>
		<input type="button" onclick="queryRecord()"  value="查询记录">
		<input type="button" onclick="insertRecord()" value="增加记录">
		<input type="button" onclick="updateRecord()" value="更新记录">
		<input type="button" onclick="deleteRecord()" value="删除记录">
	</form>
 </body>
</html>


 




 

posted @ 2017-01-14 21:32  小木瓜瓜瓜  阅读(852)  评论(0编辑  收藏  举报