这里主要说明一下连接SQL Server的方法。
在 sqlServer() 的构造函数中可以直接用一个字符串写SQL连接串 - 如果提供更多参数则调用string.format() 自动格式化。
连接字符串示例1:
var db = sqlServer( "Provider=SQLOLEDB.1;Data Source=.;Initial Catalog=%s;UID=%s;PWD=%s",数据库名字,用户名,登录密码 )
连接字符串示例2:
var db = sqlServer( "Provider=SQLOLEDB.1;Data Source=.;UID=sa;PWD=wzb0227;Initial Catalog=数据库名;" )
//参数Data Source 是 Server 的别名,UID则是 User ID 的别名....参考下面的连接参数说明
连接字符串示例3:
var db = sqlServer( "Provider=SQLOLEDB.1;Data Source=(local);Initial Catalog=数据库名;User ID=sa;Password=sa;Connect Timeout=180;" )
sqlServer() 的构造函数也可以用一个table表作为参数( 上面发的源码示例就是这样用 ),这时候会自动生成连接串。
因为会自动提供缺省的连接参数 - 所以连接数据库只要提供一些简单的参数。
如果是本机安装的SQL Server可以非常简单的连接数据库,如下:import sqlServer;
//连接数据库
var db,err = sqlServer(
server = ".\SQLEXPRESS";//本机默认实例可省略此参数
database = "数据库名";
)
上面连接参数不提供用户名、密码 - 则会自动添加 Integrated Security=SSPI参数以支持windows账号自动登录。
其他连接参数说明( 忽略大小写)
["Data Source"]:别名(Server、Address、Addr ),
如果是本地数据库且定义了实例名,则可以写为"Server=(local)\实例名";
(local)也可以用一个圆点表示。例如上面的 ".\SQLEXPRESS"(SQL Sever Express)
如果是远程服务器,则将"(local)"替换为远程服务器的名称或IP地址。
["Initial Catalog"]:可以使用别名(Database), 设置数据库名字
["User ID"]:可以使用别名(UID),设置登录用户名
["Password"]:可以使用别名(PWD),设置登录密码
["Connect Timeout"]:设置连接超时.
["Integrated Security"] 这个值设为SSPI表示启用Windows登录( 本机数据库服务器一般支持这种方式 ),如果设置了这个值就不要再使用"User ID"和"Password"这样的SQL账号来登录, 如果不使用Windows账号登录不要设置这个值 - 如果同时设置的话可能会登录失败
可以使用 db.connection.ConnectionString 获取最后生成的连接串。
|