我的数据库密码是Dhanu@1,其中包含@符号。
在创建联合表时,我遇到了以下错误:
无法创建联合表。数据源连接字符串
mysql://dhanu:Dhanu@1@localhost:3306/mydb/items
格式不正确。
请帮助我!
我的数据库密码是Dhanu@1,其中包含@符号。
在创建联合表时,我遇到了以下错误:
无法创建联合表。数据源连接字符串
mysql://dhanu:Dhanu@1@localhost:3306/mydb/items
格式不正确。
请帮助我!
在密码中使用类似 @
这样的字符并不建议,关于这个问题的类似讨论可以在 这里 找到。
您可以通过使用下面示例中所示的 CREATE SERVER
语句绕过上述限制:
CREATE SERVER federatedTablelink
FOREIGN DATA WRAPPER mysql
OPTIONS (USER 'USERNAME', HOST 'Host_IP', DATABASE 'DB_NAME',
PORT '3306',Password 'PASSWORD');
一旦使用上述步骤创建了服务器链接,您可以使用以下内容创建使用此连接的表:
CREATE TABLE test (
id INT(20) NOT NULL AUTO_INCREMENT,
name VARCHAR(32) NOT NULL DEFAULT '',
PRIMARY KEY (id),
INDEX name (name),
INDEX other_key (other)
)
ENGINE=FEDERATED
DEFAULT CHARSET=latin1
CONNECTION='federatedTablelink/test';
以下是涉及类似主题的MySQL文档:
https://dev.mysql.com/doc/refman/5.6/en/federated-usagenotes.html
https://dev.mysql.com/doc/refman/5.1/en/federated-create.html
CREATE SERVER语句会在mysql数据库的servers表中创建一行新记录。
- N00b Pr0grammer