diff options
Diffstat (limited to 'sqlQueries.go')
| -rw-r--r-- | sqlQueries.go | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/sqlQueries.go b/sqlQueries.go index 99a35d2..805248c 100644 --- a/sqlQueries.go +++ b/sqlQueries.go @@ -11,16 +11,27 @@ const ( TIMEZONE = "UTC" ) -//Retrieves all rawdata older than tim -func fetchRawData(db *sql.DB, tim time.Time) (rDat []RawData, err error) { +//Retrieves limit rawdata entries that are older than tim +//limit <= 0 returns all entries that are older than tim +func fetchRawData(db *sql.DB, tim time.Time, limit int) (rDat []RawData, err error) { - prepSel, err := db.Prepare("SELECT ip_src,ip_dst,time,port,packet_size FROM raw_data WHERE time < ?") + var prepSel *sql.Stmt + if limit > 0 { + prepSel, err = db.Prepare("SELECT ip_src,ip_dst,time,port,packet_size FROM raw_data WHERE time < ? LIMIT ?") + } else { + prepSel, err = db.Prepare("SELECT ip_src,ip_dst,time,port,packet_size FROM raw_data WHERE time < ?") + } if err != nil { log.Println("Failed to prepare select") return } - rows, err := prepSel.Query(tim) + var rows *sql.Rows + if limit > 0 { + rows, err = prepSel.Query(tim, limit) + } else { + rows, err = prepSel.Query(tim) + } if err != nil { log.Println("Failed to query prepared selection") return |
