@@ -244,6 +244,7 @@ def test_if_exists(self):
244
244
df_if_exists_1 = DataFrame ({'col1' : [1 , 2 ], 'col2' : ['A' , 'B' ]})
245
245
df_if_exists_2 = DataFrame ({'col1' : [3 , 4 , 5 ], 'col2' : ['C' , 'D' , 'E' ]})
246
246
table_name = 'table_if_exists'
247
+ sql_select = "SELECT * FROM %s" % table_name
247
248
248
249
# test if invalid value for if_exists raises appropriate error
249
250
self .assertRaises (ValueError ,
@@ -258,6 +259,19 @@ def test_if_exists(self):
258
259
cur .execute ("DROP TABLE %s" % table_name )
259
260
cur .close ()
260
261
262
+ # test if_exists='replace'
263
+ sql .write_frame (frame = df_if_exists_1 , con = self .db , name = table_name ,
264
+ flavor = 'sqlite' , if_exists = 'replace' )
265
+ sql .write_frame (frame = df_if_exists_2 , con = self .db , name = table_name ,
266
+ flavor = 'sqlite' , if_exists = 'replace' )
267
+ self .assertEqual (sql .tquery (sql_select , con = self .db ),
268
+ [(3 , 'C' ), (4 , 'D' ), (5 , 'E' )])
269
+ if sql .table_exists (table_name , self .db , flavor = 'sqlite' ):
270
+ cur = self .db .cursor ()
271
+ cur .execute ("DROP TABLE %s" % table_name )
272
+ cur .close ()
273
+
274
+
261
275
262
276
class TestMySQL (unittest .TestCase ):
263
277
0 commit comments