diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/alter_domain_comment.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/alter_domain_comment.sql
index 27648cd9a..cd6ea854f 100644
--- a/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/alter_domain_comment.sql
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/alter_domain_comment.sql
@@ -3,7 +3,8 @@
 -- DROP DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#";
 
 CREATE DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#"
-    AS bigint
+    AS text
+    COLLATE pg_catalog."C"
     DEFAULT 5
     NOT NULL;
 
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/alter_domain_default_expression.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/alter_domain_default_expression.sql
index 7d9ca3560..a9aaff120 100644
--- a/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/alter_domain_default_expression.sql
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/alter_domain_default_expression.sql
@@ -3,7 +3,8 @@
 -- DROP DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#";
 
 CREATE DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#"
-    AS bigint
+    AS text
+    COLLATE pg_catalog."C"
     DEFAULT 3;
 
 ALTER DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#" OWNER TO <OWNER>;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/alter_domain_name.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/alter_domain_name.sql
index 5b546dcf7..f5e10114e 100644
--- a/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/alter_domain_name.sql
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/alter_domain_name.sql
@@ -3,7 +3,8 @@
 -- DROP DOMAIN public."Dom2_$%{}[]()&*^!@""'`\/#";
 
 CREATE DOMAIN public."Dom2_$%{}[]()&*^!@""'`\/#"
-    AS bigint
+    AS text
+    COLLATE pg_catalog."C"
     DEFAULT 3;
 
 ALTER DOMAIN public."Dom2_$%{}[]()&*^!@""'`\/#" OWNER TO <OWNER>;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/alter_domain_null_type.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/alter_domain_null_type.sql
index 1e0747a52..6066156b5 100644
--- a/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/alter_domain_null_type.sql
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/alter_domain_null_type.sql
@@ -3,7 +3,8 @@
 -- DROP DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#";
 
 CREATE DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#"
-    AS bigint
+    AS text
+    COLLATE pg_catalog."C"
     DEFAULT 5;
 
 ALTER DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#" OWNER TO <OWNER>;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/create_domain.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/create_domain.sql
index 0d3933521..28aab4512 100644
--- a/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/create_domain.sql
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/create_domain.sql
@@ -3,7 +3,8 @@
 -- DROP DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#";
 
 CREATE DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#"
-    AS bigint
+    AS text
+    COLLATE pg_catalog."C"
     DEFAULT 5
     NOT NULL;
 
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/create_domain_numeric.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/create_domain_numeric.sql
new file mode 100644
index 000000000..4c2d1243f
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/create_domain_numeric.sql
@@ -0,0 +1,16 @@
+-- DOMAIN: public."Dom1_$%{}[]()&*^!@""'`\/#"
+
+-- DROP DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#";
+
+CREATE DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#"
+    AS numeric(5,2)
+    DEFAULT 3
+    NOT NULL;
+
+ALTER DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#" OWNER TO <OWNER>;
+
+ALTER DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#"
+    ADD CONSTRAINT constraint_1 CHECK (true);
+
+COMMENT ON DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#"
+    IS 'test_comment';
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/msql_alter_domain_comment.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/msql_alter_domain_comment.sql
new file mode 100644
index 000000000..8a4fb8644
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/msql_alter_domain_comment.sql
@@ -0,0 +1,2 @@
+COMMENT ON DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#"
+    IS 'test updated domain comment';
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/msql_alter_domain_default_expression.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/msql_alter_domain_default_expression.sql
new file mode 100644
index 000000000..4321f7b56
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/msql_alter_domain_default_expression.sql
@@ -0,0 +1,2 @@
+ALTER DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#"
+    SET DEFAULT 3;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/msql_alter_domain_name.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/msql_alter_domain_name.sql
new file mode 100644
index 000000000..51a634176
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/msql_alter_domain_name.sql
@@ -0,0 +1,2 @@
+ALTER DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#"
+    RENAME TO "Dom2_$%{}[]()&*^!@""'`\/#";
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/msql_alter_domain_null_type.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/msql_alter_domain_null_type.sql
new file mode 100644
index 000000000..190e94b47
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/msql_alter_domain_null_type.sql
@@ -0,0 +1,2 @@
+ALTER DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#"
+    DROP NOT NULL;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/msql_create_domain.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/msql_create_domain.sql
new file mode 100644
index 000000000..d468f47f8
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/msql_create_domain.sql
@@ -0,0 +1,13 @@
+CREATE DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#"
+    AS text
+    COLLATE pg_catalog."C"
+    DEFAULT 5
+    NOT NULL;
+
+ALTER DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#" OWNER TO postgres;
+
+ALTER DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#"
+    ADD CONSTRAINT constraint_1 CHECK (true);
+
+COMMENT ON DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#"
+    IS 'test_comment';
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/msql_create_domain_numeric.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/msql_create_domain_numeric.sql
new file mode 100644
index 000000000..bd1dec186
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/msql_create_domain_numeric.sql
@@ -0,0 +1,12 @@
+CREATE DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#"
+    AS numeric(5,2)
+    DEFAULT 3
+    NOT NULL;
+
+ALTER DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#" OWNER TO postgres;
+
+ALTER DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#"
+    ADD CONSTRAINT constraint_1 CHECK (true);
+
+COMMENT ON DOMAIN public."Dom1_$%{}[]()&*^!@""'`\/#"
+    IS 'test_comment';
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/test.json b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/test.json
index fa8b38191..ff4b11c5e 100644
--- a/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/test.json
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/domains/tests/default/test.json
@@ -1,16 +1,18 @@
 {
   "scenarios": [{
       "type": "create",
-      "name": "Create Domain",
+      "name": "Create Domain with text data type",
       "endpoint": "NODE-domain.obj",
       "sql_endpoint": "NODE-domain.sql_id",
+      "msql_endpoint": "NODE-domain.msql_id",
       "data": {
 	"name": "Dom1_$%{}[]()&*^!@\"'`\\/#",
 	"schema": "public",
         "schema_id": "<SCHEMA_ID>",
         "basensp": "public",
         "description": "test_comment",
-        "basetype": "bigint",
+        "basetype": "text",
+	"collname": "pg_catalog.\"C\"",
         "typdefault": "5",
         "typnotnull": "true",
         "constraints": [{
@@ -20,46 +22,88 @@
 	}],
 	"seclabels": []
       },
-      "expected_sql_file": "create_domain.sql"
+      "expected_sql_file": "create_domain.sql",
+      "expected_msql_file": "msql_create_domain.sql"
     }, {
       "type": "alter",
       "name": "Alter domain comment",
       "endpoint": "NODE-domain.obj_id",
       "sql_endpoint": "NODE-domain.sql_id",
+      "msql_endpoint": "NODE-domain.msql_id",
       "data": {
         "description": "test updated domain comment"
       },
-      "expected_sql_file": "alter_domain_comment.sql"
+      "expected_sql_file": "alter_domain_comment.sql",
+      "expected_msql_file": "msql_alter_domain_comment.sql"
     }, {
       "type": "alter",
       "name": "Alter domain null type",
       "endpoint": "NODE-domain.obj_id",
       "sql_endpoint": "NODE-domain.sql_id",
+      "msql_endpoint": "NODE-domain.msql_id",
       "data": {
         "typnotnull": "false"
       },
-      "expected_sql_file": "alter_domain_null_type.sql"
+      "expected_sql_file": "alter_domain_null_type.sql",
+      "expected_msql_file": "msql_alter_domain_null_type.sql"
     }, {
       "type": "alter",
       "name": "Alter domain default expression",
       "endpoint": "NODE-domain.obj_id",
       "sql_endpoint": "NODE-domain.sql_id",
+      "msql_endpoint": "NODE-domain.msql_id",
       "data": {
         "typdefault": "3"
       },
-      "expected_sql_file": "alter_domain_default_expression.sql"
+      "expected_sql_file": "alter_domain_default_expression.sql",
+      "expected_msql_file": "msql_alter_domain_default_expression.sql"
     }, {
       "type": "alter",
       "name": "Alter domain name",
       "endpoint": "NODE-domain.obj_id",
       "sql_endpoint": "NODE-domain.sql_id",
+      "msql_endpoint": "NODE-domain.msql_id",
       "data": {
         "name": "Dom2_$%{}[]()&*^!@\"'`\\/#"
       },
-      "expected_sql_file": "alter_domain_name.sql"
+      "expected_sql_file": "alter_domain_name.sql",
+      "expected_msql_file": "msql_alter_domain_name.sql"
     }, {
       "type": "delete",
-      "name": "Drop domain",
+      "name": "Drop domain of text data type",
+      "endpoint": "NODE-domain.delete_id",
+      "data": {
+        "name": "Dom2_$%{}[]()&*^!@\"'`\\/#"
+      }
+    }, {
+      "type": "create",
+      "name": "Create Domain with numeric data type",
+      "endpoint": "NODE-domain.obj",
+      "sql_endpoint": "NODE-domain.sql_id",
+      "msql_endpoint": "NODE-domain.msql_id",
+      "data": {
+	"name": "Dom1_$%{}[]()&*^!@\"'`\\/#",
+	"schema": "public",
+        "schema_id": "<SCHEMA_ID>",
+        "basensp": "public",
+        "description": "test_comment",
+        "basetype": "numeric",
+        "typlen": 5,
+        "precision": 2,
+        "typdefault": "3",
+        "typnotnull": "true",
+        "constraints": [{
+		"conname": "constraint_1",
+		"consrc": "true",
+		"convalidated": "true"
+	}],
+	"seclabels": []
+      },
+      "expected_sql_file": "create_domain_numeric.sql",
+      "expected_msql_file": "msql_create_domain_numeric.sql"
+    }, {
+      "type": "delete",
+      "name": "Drop domain of numeric data type",
       "endpoint": "NODE-domain.delete_id",
       "data": {
         "name": "Dom2_$%{}[]()&*^!@\"'`\\/#"
