谁能给我一些示例源代码,显示如何从JavaScript本地连接到SQL Server 2005数据库?我正在我的桌面上学习网络编程。
或者我需要使用其他脚本语言吗?建议一些替代方案,如果你有,但我现在试图用JavaScript做到这一点。我的SQL Server是本地安装在我的桌面- SQL Server Management Studio 2005和IE7浏览器。
谁能给我一些示例源代码,显示如何从JavaScript本地连接到SQL Server 2005数据库?我正在我的桌面上学习网络编程。
或者我需要使用其他脚本语言吗?建议一些替代方案,如果你有,但我现在试图用JavaScript做到这一点。我的SQL Server是本地安装在我的桌面- SQL Server Management Studio 2005和IE7浏览器。
当前回答
你不应该使用客户端javascript访问数据库的原因(不好的做法,安全问题等),但如果你真的想这样做,这里有一个例子:
var connection = new ActiveXObject("ADODB.Connection") ;
var connectionstring="Data Source=<server>;Initial Catalog=<catalog>;User ID=<user>;Password=<password>;Provider=SQLOLEDB";
connection.Open(connectionstring);
var rs = new ActiveXObject("ADODB.Recordset");
rs.Open("SELECT * FROM table", connection);
rs.MoveFirst
while(!rs.eof)
{
document.write(rs.fields(1));
rs.movenext;
}
rs.close;
connection.close;
连接到sql服务器的一个更好的方法是使用一些服务器端语言,如PHP, Java, . net等等。客户端javascript应该只用于接口。
关于服务器javascript的存在,有一个古老的传说,但这是另一个故事。;)
其他回答
我不认为你可以从客户端javascript连接到SQL服务器。你需要选择一些服务器端语言来构建web应用程序,它可以与你的数据库交互,使用javascript只是为了让你的用户界面更好地交互。
您可以根据自己的语言偏好选择任何服务器端脚本语言:
PHP ASP。网 Ruby On Rails
如前所述,它不应该使用客户端Javascript完成,但有一个框架可以更安全地实现您想要的东西。
Nodejs是一个框架,允许你用javascript编写服务器连接,所以看看Nodejs,你可能会学到更多关于与数据库通信和获取你需要的数据。
一个完美的工作代码..
<script>
var objConnection = new ActiveXObject("adodb.connection");
var strConn = "driver={sql server};server=QITBLRQIPL030;database=adventureworks;uid=sa;password=12345";
objConnection.Open(strConn);
var rs = new ActiveXObject("ADODB.Recordset");
var strQuery = "SELECT * FROM Person.Address";
rs.Open(strQuery, objConnection);
rs.MoveFirst();
while (!rs.EOF) {
document.write(rs.fields(0) + " ");
document.write(rs.fields(1) + " ");
document.write(rs.fields(2) + " ");
document.write(rs.fields(3) + " ");
document.write(rs.fields(4) + "<br/>");
rs.movenext();
}
</script>
你不应该使用客户端javascript访问数据库的原因(不好的做法,安全问题等),但如果你真的想这样做,这里有一个例子:
var connection = new ActiveXObject("ADODB.Connection") ;
var connectionstring="Data Source=<server>;Initial Catalog=<catalog>;User ID=<user>;Password=<password>;Provider=SQLOLEDB";
connection.Open(connectionstring);
var rs = new ActiveXObject("ADODB.Recordset");
rs.Open("SELECT * FROM table", connection);
rs.MoveFirst
while(!rs.eof)
{
document.write(rs.fields(1));
rs.movenext;
}
rs.close;
connection.close;
连接到sql服务器的一个更好的方法是使用一些服务器端语言,如PHP, Java, . net等等。客户端javascript应该只用于接口。
关于服务器javascript的存在,有一个古老的传说,但这是另一个故事。;)
Web服务
SQL 2005+支持你几乎可以使用的本地WebServices,尽管我不建议这样做,因为你可能会面临安全风险。为什么我说几乎。Javascript不是SOAP原生的,所以实际制作它会更复杂一些。您必须通过XmlHttpRequest发送和接收SOAP。检查谷歌是否有Javascript SOAP客户机。
http://msdn.microsoft.com/en-us/library/ms345123.aspx - SQL本地WebServices http://www.google.com/search?q=javascript+soap -谷歌结果Javascript SOAP客户端