@@ -16,6 +16,8 @@ def __init__(self, connxml):
1616 self ._server = connxml .get ('server' )
1717 self ._username = connxml .get ('username' )
1818 self ._authentication = connxml .get ('authentication' )
19+ self ._schema = connxml .get ('schema' )
20+ self ._service = connxml .get ('service' )
1921 self ._class = connxml .get ('class' )
2022 self ._port = connxml .get ('port' , None )
2123 self ._query_band = connxml .get ('query-band-spec' , None )
@@ -26,7 +28,7 @@ def __repr__(self):
2628
2729 @classmethod
2830 def from_attributes (cls , server , dbname , username , dbclass , port = None , query_band = None ,
29- initial_sql = None , authentication = '' ):
31+ initial_sql = None , authentication = '' , schema = '' , service = '' ):
3032 """Creates a new connection that can be added into a Data Source.
3133 defaults to `''` which will be treated as 'prompt' by Tableau."""
3234
@@ -35,6 +37,8 @@ def from_attributes(cls, server, dbname, username, dbclass, port=None, query_ban
3537 xml .server = server
3638 xml .dbname = dbname
3739 xml .username = username
40+ xml .schema = schema
41+ xml .service = service
3842 xml .dbclass = dbclass
3943 xml .port = port
4044 xml .query_band = query_band
@@ -206,3 +210,43 @@ def initial_sql(self, value):
206210 pass
207211 else :
208212 self ._connectionXML .set ('one-time-sql' , value )
213+
214+ @property
215+ def schema (self ):
216+ """Database schema for the connection. Not the table name."""
217+ return self ._schema
218+
219+ @schema .setter
220+ def schema (self , value ):
221+ """
222+ Set the connection's schema property.
223+
224+ Args:
225+ value: New name of the database schema. String.
226+
227+ Returns:
228+ Nothing.
229+
230+ """
231+ self ._schema = value
232+ self ._connectionXML .set ('schema' , value )
233+
234+ @property
235+ def service (self ):
236+ """Database service for the connection. Not the table name."""
237+ return self ._service
238+
239+ @service .setter
240+ def service (self , value ):
241+ """
242+ Set the connection's service property.
243+
244+ Args:
245+ value: New name of the database service. String.
246+
247+ Returns:
248+ Nothing.
249+
250+ """
251+ self ._service = value
252+ self ._connectionXML .set ('service' , value )
0 commit comments