js访问数据库
一、js访问数据库的一般步骤:
1、 创建一个到数据库的 ADO 连接
conn = new ActiveXObject("ADODB.Connection");
2、 打开数据库连接
conn.open(ConnectionString, 'sa', 'password', -1);
3、 创建 ADO 记录集
rs = new ActiveXObject("ADODB.Recordset");
4、 从记录集提取您需要的数据
rs.Open(sql, conn);
var tempstr = "";
while (!rs.EOF) {
tempstr += rs.Fields("Id") + " " + rs.Fields("Name");
rs.moveNext(); //移动向下一个记录
}
alert(tempstr)
5、关闭记录集
rs.close();
6、 关闭连接
conn.close();
二、ADO对象:
1、Connection
Connection 对象用于创建一个到达某个数据源的开放连接。通过此连接,您可以对一个数据库进行访问和操作。
创建
conn =new ActiveXObject("ADODB.Connection");
方法
<1>打开一个连接
conn.open(ConnectionString, UserID, Password,Options);
ConnectionString :通过传递包含一系列由分号分隔的 argument = value 语句的详细连接字符串可指定数据源。
<2>关闭一个连接
conn.close();
<3>执行查询、SQL 语句、存储过程或 provider 具体文本。
conn.Execute(CommandText, RecordsAffected, Options)
CommandText: 字符串,包含要执行的 SQL 语句、表名、存储过程或特定提供者的文本。
RecordsAffected:可选,长整型变量,提供者向其返回操作所影响的记录数目。
Options:可选,长整型值,指示提供者应如何计算 CommandText 参数,
2、Recordset
Recordset 对象用于容纳一个来自数据库表的记录集。一个 Recordset 对象由记录和列(字段)组成。
创建
rs = new ActiveXObject("ADODB.Recordset");
属性
<1>BOF
如果当前的记录位置在第一条记录之前,则返回 true,否则返回 fasle。
<2>EOF
如果当前记录的位置在最后的记录之后,则返回 true,否则返回 fasle。
<3>RecordCount
返回一个 Recordset 对象中的记录数目。
方法
<1>打开一个数据库元素
rs.open(Source, ActiveConnection, CursorType, LockType, Options);
Source :可选, Command 对象的变量名、SQL 语句、表名、存储过程调用或持久 Recordset 文件名。
ActiveConnection:可选,有效 Connection 对象变量名;或字符串,包含 ConnectionString 参数。
CursorType : 可选,CursorTypeEnum 值,确定提供者打开 Recordset 时应该使用的游标类型。
LockType : 可选。确定提供者打开 Recordset 时应该使用的锁定(并发)类型的 LockTypeEnum 值。
Options :可选,用于指示提供者如何计算 Source 参数(如果它代表的不是 Command 对象),或从以前保存 Recordset 的文件中恢复 Recordset。
<2>关闭一个 Recordset。
rs.close();
<3>把多条记录从一个 Recordset 对象中拷贝到一个二维数组中
rs.GetRows(Rows, Start, Fields)
Rows:可选,指定要检索记录数。不指定时将自动检索 Recordset 对象中的所有记录。
Start:可选,字符串或长整型,计算得到在 GetRows 操作开始处的记录的书签。
Fields :可选,代表单个字段名、顺序位置、字段名数组或顺序位置,ADO 仅返回这些字段中的数据。
<4>将 Recordset 作为字符串返回。
rs.GetString()
三、ConnectionString
包含用于建立连接数据源的信息。
ADO 支持的参数如下(任何其他参数将直接传递到提供者而不经过 ADO 处理)
|
Provider= |
|
|
File Name= |
指定包含预先设置连接信息的特定提供者的文件名称(例如,持久数据源对象)。 |
|
Remote Provider= |
指定打开客户端连接时使用的提供者名称。(仅限于远程数据服务) |
|
Remote Server= |
指定打开客户端连接时使用的服务器的路径名称。(仅限于远程数据服务) |
var ConnectionString = 'Provider=SQLOLEDB.1;Persist Security Info=True;Initial Catalog=HZYL_QZJ;Data Source=192.168.0.5;Connect Timeout=5;Use Procedure for Prepare=1';
js访问数据库的更多相关文章
- [转]html5 js 访问 sqlite 数据库的操作类
本文转自:http://blog.csdn.net/tsxw24/article/details/7613815 webkit 核心的浏览器提供了 3个 api接口,用于访问本地sqlite数据,但使 ...
- js自动访问数据库
js自动访问数据库 maven依赖 <dependencies> <dependency> <groupId>junit</groupId> <a ...
- 杂记-格式化Date默认格式,日期加一天,jstl判断字符类型,ajax模拟from表单后台跳转页面,jstl访问数据库并在页面显示
1.格式化Date默认格式 String str="Sun Oct 08 22:36:45 CST 2017"; SimpleDateFormat sdf = new Simple ...
- C#使用ADO.NET访问数据库(一)
博主好久没更新博客了,最近有点忙(打麻将0.0..),今天更新一篇C#的,我还是想坚持更新博客,分享一下自己的心得,闲话少说,开始正题~~ ADO.NET概述:ADO.NET的作用在于他是客户端访问服 ...
- Android 异步任务,通过PHP访问数据库,多线程,线程间通讯
文章列表MainActivity.java package com.eric.asynctask; import java.io.IOException; import java.util.Array ...
- ADO.NET 访问数据库
对数据库的访问时各种数据库应用程序开发的核心技术,.NET框架中提出的ADO.NET技术为应用程序的开发提供了一致的接口,增强了程序的可移植性和可扩展性. a:使用链接对象Connection连接数据 ...
- 如何通过JDBC访问数据库
Java数据库连接(JDBC)用与在Java程序中实现数据库操作功能,它提供了执行SQL语句.访问各种数据库的方法,并为各种不同的数据库提供统一的操作接口,java.sql包中包含了JDBC操作数据库 ...
- (转)发布Silverlight+WCF程序到IIS后,客户端访问数据库失败的解决方案
转自url:http://greatverve.cnblogs.com/archive/2011/11/30/silverlight-wcf-pub.html 我们在编写Silverlight程序时, ...
- 在 Mac OS X 上创建的 .NET 命令行程序访问数据库 (使用Entity Framework 7 )
var appInsights=window.appInsights||function(config){ function r(config){t[config]=function(){var i= ...
随机推荐
- Netty自定义数据包协议
粘包和分包出现的原因是:没有一个稳定数据结构 解决办法: 分割符 长度 + 数据 * <pre> * 数据包格式 * +——----——+——-----——+——----——+——---- ...
- wireguard使用方法
1.翻墙访问网页:https://cryptostorm.is/wireguard.cgi 并下载客户端 2. 选者第二个并打开 3.复制publickey 4.黏贴在第二行并addkey: 5.将获 ...
- Ubuntu将自带的python3升级
一.这里演示的是将python3.5升级到python3.6 1.添加安装源,在命令行输入如下命令: sudo add-apt-repository ppa:jonathonf/python-3.6 ...
- golang之面向对象编程
1.Golang语言面向对象编程说明 1)Golang也支持面向对象编程(OOP),但是和传统的面向对象编程有区别,并不是纯粹的面向对象语言.所以我们说Golang支持面向对象编程特性是比较准确的. ...
- Ubuntu 搭建 配置 nfs服务器
什么是NFS? NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源.在NFS的应用中,本地NF ...
- Python+Appium启动手机APP或者浏览器
一.设备信息配置 脚本如下: from appium import webdriver class my_app(): def __init__(self): desired_caps = {} # ...
- 2019牛客多校一 H. XOR (线性基)
大意: 给定序列, 求所有异或和为$0$的子序列大小之和. 先求出线性基, 假设大小为$r$. 对于一个数$x$, 假设它不在线性基内, 那么贡献为$2^{n-r-1}$ 因为它与其余不在线性基内数的 ...
- 方法引用(method reference)
目录 方法引用(method reference) 1. 含义 2. 分类 3. 总结 方法引用(method reference) 1. 含义 方法引用实际上是 Lambda 表达式的一种语法糖. ...
- Unity场景间数据传递方法
在游戏开发中,会常用到场景间传递数据的方法(比如关卡选择,过关后自动回到关卡选择界面,以动画方式解锁下一关),目前研究了三种: 1. 使用DontDestroyOnLoad方法: (1)在场景A中做个 ...
- (九)Hibernate 的复合主键
一.什么是复合主键? 一张表的主键是由多个字段组成,这个主键就被称为复合主键. 主键是唯一确定某条记录的字段,比如公民的身份证号就是一个主键,因为由身份证号这个主键就可以确定 某个公民. 有一种 ...