jdbc的连接字符串如下
创新互联专业为企业提供新和网站建设、新和做网站、新和网站设计、新和网站制作等企业网站建设、网页设计与制作、新和企业网站模板建站服务,10多年新和做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。jdbc.url=jdbc:sqlserverL//localhost:1433;databaseName=YOURDB
jdbc.username=USERNAME
jdbc.password=PASSWORD
用PowerShell这么读取所在行
Select-String -Path $FilePath -Pattern "jdbc.url=" #返回对象,OBJ.Line才是字符串
Select-String -Path $FilePath -Pattern "jdbc.username="
Select-String -Path $FilePath -Pattern "jdbc.password="
然后通过Replace可以得到ServerName, DBName, UserName, Password
最后拼接ADO.NET需要的连接字符串
[string]::Format("server={0};database={1};uid={2};pwd={3}",ServerName, DBName, UserName, Password);
客户的密码中包含分号,于是这个连接串就有问题了。
因为连接字符串本身就是一个分号分割的kv组。
A connection string is a semicolon-delimited list of key/value parameter pairs:
解决方案官方说了,用单引号或者双引号包起来
it must be enclosed in single or double quotation marks.
我们改为用单引号包起来
[string]::Format("server={0};database={1};uid={2};pwd='{3}'",ServerName, DBName, UserName, Password);
问题解决了
我们马上想到,那么密码中有单引号怎么办?
官方也说了
You can also escape the enclosing character by using two of them together
所以我们修改为
[string]::Format("server={0};database={1};uid={2};pwd='{3}'",ServerName, DBName, UserName, Password.Replace("'","''"));
https://docs.microsoft.com/en-us/sql/connect/ado-net/connection-strings?view=sql-server-ver15#connection-string-syntax
本文题目:ConnectionstringsinADO.NET-创新互联
标题路径:https://www.cdcxhl.com/article18/dsppgp.html
成都网站建设公司_创新互联,为您提供网站营销、品牌网站设计、定制开发、定制网站、品牌网站制作、网站设计
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联