MySQL的ODBC接口实现是通过安装MyODBC驱动,这个驱动程序是跨平台的。如果在Linux等unix体系操作系统下使用,需要先安装iodbc这些第三方ODBC标准支援平台。
简单的ASP示例代码:
<%
dim sql,mysql
set sql = server.createobject("adodb.connection")
mysql="driver={mysql odbc 3.51 driver};database=库;server=主机;uid=用户;password
=密码;" 'option = 设置
sql.open mysql
%>
上边这段代码是采用MyODBC开发版3.51连接的示例,使用开发版是因为一些新的特性和稳定性2.x正式版所不具备的。前几天看了篇微软安全专家所撰写的如何编写安全程序的教程。上边提到如果按照上边示例的方法一旦ASP文件的代码被骇客看到,那么数据库可能不保,然后引发一连串的问题,甚至被夺得管理权限。文章中顺便提到了解决方法,是通过编写com组件,然后由ASP调用组件的方法连接数据库。这么做的好处是提高了安全性,但是问题是有能力这么做的人毕竟是少数。那么我的折衷方案是定义数据源。将库、用户、密码以及设置这些连接信息统统在数据源中定义,从很大程度简单化了实现的难度,而且也起到增强安全性的作用。当然,为了保证数据源可以在实际运作环境中被访问到,一定要定义为“系统数据源”,开发时定义为“用户数据源”或者“系统数据源”我倒觉得无伤大雅。
使用数据源的ASP示例代码
<%
dim sql
set sql = server.createobject("adodb.connection")
sql.open "dns=MySQL数据源名称"
%>