(txn *sql.Tx)
| 224 | } |
| 225 | |
| 226 | func getViews(txn *sql.Tx) ([]*storepb.ViewMetadata, error) { |
| 227 | var views []*storepb.ViewMetadata |
| 228 | |
| 229 | query := ` |
| 230 | SELECT |
| 231 | name, sql |
| 232 | FROM sqlite_schema |
| 233 | WHERE type ='view' AND name NOT LIKE 'sqlite_%' |
| 234 | ORDER BY name;` |
| 235 | rows, err := txn.Query(query) |
| 236 | if err != nil { |
| 237 | return nil, err |
| 238 | } |
| 239 | defer rows.Close() |
| 240 | for rows.Next() { |
| 241 | view := &storepb.ViewMetadata{} |
| 242 | if err := rows.Scan(&view.Name, &view.Definition); err != nil { |
| 243 | return nil, err |
| 244 | } |
| 245 | views = append(views, view) |
| 246 | } |
| 247 | if err := rows.Err(); err != nil { |
| 248 | return nil, util.FormatErrorWithQuery(err, query) |
| 249 | } |
| 250 | |
| 251 | return views, nil |
| 252 | } |
no test coverage detected