@@ -3,11 +3,12 @@ import { ref, watch } from 'vue'
33import  { API  } from  ' ./net' 
44import  type  { QueryObject  } from  ' ./net' 
55import  type  { Store  } from  ' ./store' 
6+ import  { Driver , GetDriverName , ExtensionKind  } from  ' ./store' 
67import  type  { Pair  } from  ' ./types' 
78import  { GetDataManagerPreference , SetDataManagerPreference  } from  ' ./cache' 
89import  { ElMessage  } from  ' element-plus' 
910import  { Codemirror  } from  ' vue-codemirror' 
10- import  { sql , StandardSQL  } from  " @codemirror/lang-sql" 
11+ import  { sql , StandardSQL ,  MySQL ,  PostgreSQL ,  Cassandra  } from  " @codemirror/lang-sql" 
1112import  HistoryInput  from  ' ../components/HistoryInput.vue' 
1213import  type  { Ref  } from  ' vue' 
1314import  { Refresh , Document  } from  ' @element-plus/icons-vue' 
@@ -47,14 +48,27 @@ const storeChangedEvent = (s: string) => {
4748  stores .value .forEach ((e :  Store ) =>  { 
4849    if  (e .name  ===  s ) { 
4950      kind .value  =  e .kind .name  
51+       switch  (GetDriverName (e )){ 
52+         case  Driver .MySQL : 
53+           sqlConfig .value .dialect  =  MySQL  
54+           break ; 
55+         case  Driver .Postgres : 
56+           sqlConfig .value .dialect  =  PostgreSQL  
57+           break ; 
58+         case  Driver .Cassandra : 
59+           sqlConfig .value .dialect  =  Cassandra  
60+           break ; 
61+         default : 
62+           sqlConfig .value .dialect  =  StandardSQL  
63+       } 
5064      return  
5165    } 
5266  }) 
5367
5468  switch  (kind .value ) { 
55-     case  ' atest-store-elasticsearch '  : 
56-     case  ' atest-store-etcd '  : 
57-     case  ' atest-store-redis '  : 
69+     case  ExtensionKind . ExtensionKindElasticsearch : 
70+     case  ExtensionKind . ExtensionKindEtcd : 
71+     case  ExtensionKind . ExtensionKindRedis : 
5872      sqlQuery .value  =  ' *'  
5973      complexEditor .value  =  false  
6074      break  
@@ -89,7 +103,7 @@ const queryDataFromTable = (data: QueryData) => {
89103} 
90104const   describeTable =  (data :  QueryData ) =>  {
91105  switch  (kind .value ) { 
92-     case  ' atest-store-cassandra '  : 
106+     case  ExtensionKind . ExtensionKindCassandra : 
93107      sqlQuery .value  =  ` @describeTable_${queryDataMeta .value .currentDatabase }:${data .label } `  
94108      break  
95109    default : 
@@ -102,17 +116,17 @@ const queryTables = () => {
102116} 
103117watch (kind , (k ) =>  {
104118  switch  (k ) { 
105-     case  ' atest-store-orm '  : 
106-     case  ' atest-store-cassandra '  : 
107-     case  ' atest-store-iotdb '  : 
119+     case  ExtensionKind . ExtensionKindORM : 
120+     case  ExtensionKind . ExtensionKindCassandra : 
121+     case  ExtensionKind . ExtensionKindIotDB : 
108122      queryTip .value  =  ' Enter SQL query'  
109123      executeQuery () 
110124      break ; 
111-     case  ' atest-store-etcd '  : 
112-     case  ' atest-store-redis '  : 
125+     case  ExtensionKind . ExtensionKindEtcd : 
126+     case  ExtensionKind . ExtensionKindRedis : 
113127      queryTip .value  =  ' Enter key'  
114128      break ; 
115-     case  ' atest-store-elasticsearch '  : 
129+     case  ExtensionKind . ExtensionKindElasticsearch : 
116130      queryTip .value  =  ' field:value OR field:other'  
117131      break ; 
118132  } 
@@ -207,9 +221,9 @@ const sqlConfig = ref({
207221const   executeQuery =  async  () =>  {
208222  if  (sqlQuery .value  ===  ' '  ) { 
209223    switch  (kind .value ) { 
210-       case  ' atest-store-elasticsearch '  : 
211-       case  ' atest-store-etcd '  : 
212-       case  ' atest-store-redis '  : 
224+       case  ExtensionKind . ExtensionKindElasticsearch : 
225+       case  ExtensionKind . ExtensionKindEtcd : 
226+       case  ExtensionKind . ExtensionKindRedis : 
213227        if  (sqlQuery .value  ===  ' '  ) { 
214228          sqlQuery .value  =  ' *'  
215229        } 
@@ -227,16 +241,16 @@ const executeWithQuery = async (sql: string) => {
227241  try  { 
228242    const   data =  await  API .DataQueryAsync (query .value ); 
229243    switch  (kind .value ) { 
230-       case  ' atest-store-orm '  : 
231-       case  ' atest-store-cassandra '  : 
232-       case  ' atest-store-iotdb '  : 
233-       case  ' atest-store-opengemini '  : 
234-       case  ' atest-store-elasticsearch '  : 
244+       case  ExtensionKind . ExtensionKindORM : 
245+       case  ExtensionKind . ExtensionKindCassandra : 
246+       case  ExtensionKind . ExtensionKindIotDB : 
247+       case  ExtensionKind . ExtensionKindOpengeMini : 
248+       case  ExtensionKind . ExtensionKindElasticsearch : 
235249        ormDataHandler (data ) 
236250        success  =  true  
237251        break ; 
238-       case  ' atest-store-etcd '  : 
239-       case  ' atest-store-redis '  : 
252+       case  ExtensionKind . ExtensionKindEtcd : 
253+       case  ExtensionKind . ExtensionKindRedis : 
240254        keyValueDataHandler (data ) 
241255        break ; 
242256      default : 
0 commit comments