MCPcopy Create free account
hub / github.com/Kitware/VTK / GetTriggerSpecification

Method GetTriggerSpecification

IO/SQL/vtkSQLDatabase.cxx:302–340  ·  view source on GitHub ↗

------------------------------------------------------------------------------

Source from the content-addressed store, hash-verified

300
301//------------------------------------------------------------------------------
302vtkStdString vtkSQLDatabase::GetTriggerSpecification(
303 vtkSQLDatabaseSchema* schema, int tblHandle, int trgHandle)
304{
305 vtkStdString queryStr = "CREATE TRIGGER ";
306 queryStr += schema->GetTriggerNameFromHandle(tblHandle, trgHandle);
307
308 int trgType = schema->GetTriggerTypeFromHandle(tblHandle, trgHandle);
309 // odd types: AFTER, even types: BEFORE
310 if (trgType % 2)
311 {
312 queryStr += " AFTER ";
313 }
314 else
315 {
316 queryStr += " BEFORE ";
317 }
318 // 0/1: INSERT, 2/3: UPDATE, 4/5: DELETE
319 if (trgType > 1)
320 {
321 if (trgType > 3)
322 {
323 queryStr += "DELETE ON ";
324 }
325 else // if ( trgType > 3 )
326 {
327 queryStr += "UPDATE ON ";
328 }
329 }
330 else // if ( trgType > 1 )
331 {
332 queryStr += "INSERT ON ";
333 }
334
335 queryStr += schema->GetTableNameFromHandle(tblHandle);
336 queryStr += " ";
337 queryStr += schema->GetTriggerActionFromHandle(tblHandle, trgHandle);
338
339 return queryStr;
340}
341
342//------------------------------------------------------------------------------
343vtkSQLDatabase* vtkSQLDatabase::CreateFromURL(const char* URL)

Callers 1

EffectSchemaMethod · 0.95

Tested by

no test coverage detected