我在通过 visual studio
访问 mariadb
时遇到问题 vb.net
我有一个用于 mysqlconnectionstring
的工作脚本
,我在之前的项目中使用过它,但它仍然运行良好。顺便说一句,我到目前为止使用的 connectionString
与此类似 -> Mysql connectionString
但是,当我出于某种未知原因对我的文档跟踪系统
使用相同的连接字符串时,它确实会抛出一个弹出错误,提示
令我惊讶的是,我更改了用户,并特别在该用户上添加了密码!根据上一个问题的建议Using 127.0.0.1 fails when connecting to MySQL while using IP succeeds using VB.net
那么我无法连接到此 MariaDB 服务器的原因可能是什么?
我可以向您保证问题不在插入语句上,因为就像我所说的那样,当我尝试连接到数据库服务器时,messagebox
显示错误异常。
但如果您需要它作为引用,那么我会将代码放在这里:
Dim DatabaseName As String = "myDB"
Dim server As String = "127.0.0.1"
Dim userName As String = "myUsername"
Dim password As String = "myF*ckinPassword"
Dim port As Integer = "3306"
If Not conn Is Nothing Then conn.Close()
conn.ConnectionString = String.Format("server={0}; user id={1}; password={2}; database={3}; port={4}; pooling=false", server, userName, password, DatabaseName, port)
Try
conn.Open()
'MsgBox("Connected")
Catch ex As Exception
MsgBox(ex.Message)
conn.Close()
Finally
conn.Dispose()
End Try
任何帮助将不胜感激。
还值得一提的是,我已将 Mysql.data.dll
以及 System.data.dll
包含到添加引用
中code> 并正确安装了所有连接器
、阅读器
以及所有必要的先决条件(以防您询问)。
与此同时,我已经尝试了许多可以在 IoT
中找到的解决方案,例如添加新用户和重新安装软件包等。
更新
我对授予所有
和刷新权限
以及更改IP地址
以及监听的更改进行了常见故障排除80
到 Listen 192.168.0.X:80
等等...等等...但错误仍然相同。
我以前的项目即使在加载 DocumentTrackingSystem
表单的同一个 解决方案资源管理器
上加载时也能正常工作。但它没有得到同样的错误。我也尝试在另一台计算机上测试,但问题仍然存在。
就好像只要我通过此项目连接就无法连接到 mariadb
。
新照片:
最新!
我不知道为什么它无法检测到我的connectionString
,无论我如何尝试修复它,错误仍然是相同的。我决定将其合并到以前的工作项目中,即图书馆管理系统。
所以基本上,我所做的是,我创建了另一个表单并将其包含在菜单列表中。不过我还处于设计阶段。但是当我运行整个程序时,它没有出现!
这只是一个普通的标签
,但为什么它没有按照预期的方式显示?它没有隐藏,我还没有包含任何代码。它只是一个简单的标签
。
最佳答案
你的代码
String.Format("server={0}; user id={1}; password={2}; database={3}; port={4}; pooling=false", server, userName, password, DatabaseName, port)
将生成一个根据 connectionstrings.com 无效的连接字符串您发布的链接。
输出
server=127.0.0.1; user id=myUsername; password=myF*ckinPassword; database=myDB; port=3306; pooling=false
字段名称(特别是用户 ID 和密码)错误。请参阅此演示:https://dotnetfiddle.net/2QDJNY
试试这个,它与连接字符串网站上提供的格式匹配:
String.Format("Server={0};Port={4};Database={3};Uid={1};Pwd={2};Pooling=False;", server, userName, password, DatabaseName, port)
这将输出:
Server=127.0.0.1;Port=3306;Database=myDB;Uid=myUsername;Pwd=myF*ckinPassword;Pooling=False;
关于mysql - 用户 '' 访问被拒绝(使用密码 : NO) but it does have password,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55508312/