------------------------------------------------------------------------------
| 77 | |
| 78 | //------------------------------------------------------------------------------ |
| 79 | vtkStdString vtkSQLiteDatabase::GetColumnSpecification( |
| 80 | vtkSQLDatabaseSchema* schema, int tblHandle, int colHandle) |
| 81 | { |
| 82 | std::ostringstream queryStr; |
| 83 | queryStr << schema->GetColumnNameFromHandle(tblHandle, colHandle); |
| 84 | |
| 85 | // Figure out column type |
| 86 | int colType = schema->GetColumnTypeFromHandle(tblHandle, colHandle); |
| 87 | std::string colTypeStr; |
| 88 | switch (static_cast<vtkSQLDatabaseSchema::DatabaseColumnType>(colType)) |
| 89 | { |
| 90 | case vtkSQLDatabaseSchema::SERIAL: |
| 91 | colTypeStr = "INTEGER NOT NULL"; |
| 92 | break; |
| 93 | case vtkSQLDatabaseSchema::SMALLINT: |
| 94 | colTypeStr = "SMALLINT"; |
| 95 | break; |
| 96 | case vtkSQLDatabaseSchema::INTEGER: |
| 97 | colTypeStr = "INTEGER"; |
| 98 | break; |
| 99 | case vtkSQLDatabaseSchema::BIGINT: |
| 100 | colTypeStr = "BIGINT"; |
| 101 | break; |
| 102 | case vtkSQLDatabaseSchema::VARCHAR: |
| 103 | colTypeStr = "VARCHAR"; |
| 104 | break; |
| 105 | case vtkSQLDatabaseSchema::TEXT: |
| 106 | colTypeStr = "TEXT"; |
| 107 | break; |
| 108 | case vtkSQLDatabaseSchema::REAL: |
| 109 | colTypeStr = "REAL"; |
| 110 | break; |
| 111 | case vtkSQLDatabaseSchema::DOUBLE: |
| 112 | colTypeStr = "DOUBLE"; |
| 113 | break; |
| 114 | case vtkSQLDatabaseSchema::BLOB: |
| 115 | colTypeStr = "BLOB"; |
| 116 | break; |
| 117 | case vtkSQLDatabaseSchema::TIME: |
| 118 | colTypeStr = "TIME"; |
| 119 | break; |
| 120 | case vtkSQLDatabaseSchema::DATE: |
| 121 | colTypeStr = "DATE"; |
| 122 | break; |
| 123 | case vtkSQLDatabaseSchema::TIMESTAMP: |
| 124 | colTypeStr = "TIMESTAMP"; |
| 125 | } |
| 126 | |
| 127 | if (!colTypeStr.empty()) |
| 128 | { |
| 129 | queryStr << " " << colTypeStr; |
| 130 | } |
| 131 | else // if ( colTypeStr.size() ) |
| 132 | { |
| 133 | vtkGenericWarningMacro("Unable to get column specification: unsupported data type " << colType); |
| 134 | return {}; |
| 135 | } |
| 136 |
nothing calls this directly
no test coverage detected