1#
2# MDEV-7285 SERVER: CREATE OR REPLACE and CREATE IF NOT EXISTS
3#
4CREATE SERVER IF NOT EXISTS server1 FOREIGN DATA WRAPPER mysql OPTIONS (USER 'user1', HOST 'localhost', DATABASE 'test0');
5SELECT server_name, username, db FROM mysql.servers;
6server_name	username	db
7server1	user1	test0
8CREATE SERVER IF NOT EXISTS server1 FOREIGN DATA WRAPPER mysql OPTIONS (USER 'user2', HOST 'localhost', DATABASE 'test1');
9Warnings:
10Note	1476	The foreign server, server1, you are trying to create already exists
11SELECT server_name, username, db FROM mysql.servers;
12server_name	username	db
13server1	user1	test0
14CREATE OR REPLACE SERVER server1 FOREIGN DATA WRAPPER mysql OPTIONS (USER 'user3', HOST 'localhost', DATABASE 'test2');
15SELECT server_name, username, db FROM mysql.servers;
16server_name	username	db
17server1	user3	test2
18DROP SERVER IF EXISTS server1;
19SELECT server_name, username, db FROM mysql.servers;
20server_name	username	db
21DROP SERVER IF EXISTS server1;
22CREATE SERVER server_1 FOREIGN DATA WRAPPER mysql OPTIONS (USER 'mysqltest_1', HOST 'localhost', DATABASE 'test0');
23CREATE SERVER server_1 FOREIGN DATA WRAPPER mysql OPTIONS (USER 'mysqltest_1', HOST 'localhost', DATABASE 'test1');
24ERROR HY000: The foreign server, server_1, you are trying to create already exists
25CREATE SERVER IF NOT EXISTS server_1 FOREIGN DATA WRAPPER mysql OPTIONS (USER 'mysqltest_1', HOST 'localhost', DATABASE 'test2');
26Warnings:
27Note	1476	The foreign server, server_1, you are trying to create already exists
28SELECT server_name, username, db FROM mysql.servers;
29server_name	username	db
30server_1	mysqltest_1	test0
31CREATE OR REPLACE SERVER IF NOT EXISTS server_1 FOREIGN DATA WRAPPER mysql OPTIONS (USER 'mysqltest_1', HOST 'localhost', DATABASE 'test3');
32ERROR HY000: Incorrect usage of OR REPLACE and IF NOT EXISTS
33CREATE OR REPLACE SERVER server_1 FOREIGN DATA WRAPPER mysql OPTIONS (USER 'mysqltest_1', HOST 'localhost', DATABASE 'test4');
34SELECT server_name, username, db FROM mysql.servers;
35server_name	username	db
36server_1	mysqltest_1	test4
37DROP SERVER server_1;
38CREATE SERVER server_1 FOREIGN DATA WRAPPER mysql OPTIONS (USER 'Remote', HOST 'Server.Example.Com', DATABASE 'test');
39SELECT Host FROM mysql.servers WHERE Server_Name = 'server_1';
40Host
41Server.Example.Com
42ALTER SERVER server_1 OPTIONS(HOST 'Server.Example.Org');
43SELECT Host FROM mysql.servers WHERE Server_Name = 'server_1';
44Host
45Server.Example.Org
46DROP SERVER server_1;
47