change ids to int64
This commit is contained in:
		
							
								
								
									
										21
									
								
								db.go
									
									
									
									
									
								
							
							
						
						
									
										21
									
								
								db.go
									
									
									
									
									
								
							@@ -462,7 +462,7 @@ func (t *TableInfo) buildSelect(key string, columns []string, restriction string
 | 
				
			|||||||
	return query
 | 
						return query
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func (t *TableInfo) Insert(record AssRow) (int, error) {
 | 
					func (t *TableInfo) Insert(record AssRow) (int64, error) {
 | 
				
			||||||
	columns := ""
 | 
						columns := ""
 | 
				
			||||||
	values := ""
 | 
						values := ""
 | 
				
			||||||
	t, err := t.GetSchema()
 | 
						t, err := t.GetSchema()
 | 
				
			||||||
@@ -470,7 +470,7 @@ func (t *TableInfo) Insert(record AssRow) (int, error) {
 | 
				
			|||||||
		log.Println(err)
 | 
							log.Println(err)
 | 
				
			||||||
		return -1, err
 | 
							return -1, err
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	var id int
 | 
						var id int64
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for key, element := range record {
 | 
						for key, element := range record {
 | 
				
			||||||
		columns += key + ","
 | 
							columns += key + ","
 | 
				
			||||||
@@ -480,11 +480,17 @@ func (t *TableInfo) Insert(record AssRow) (int, error) {
 | 
				
			|||||||
		err = t.db.conn.QueryRow("INSERT INTO " + t.Name + "(" + removeLastChar(columns) + ") VALUES (" + removeLastChar(values) + ") RETURNING id").Scan(&id)
 | 
							err = t.db.conn.QueryRow("INSERT INTO " + t.Name + "(" + removeLastChar(columns) + ") VALUES (" + removeLastChar(values) + ") RETURNING id").Scan(&id)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	if t.db.Driver == "mysql" {
 | 
						if t.db.Driver == "mysql" {
 | 
				
			||||||
		_, err = t.db.conn.Query("INSERT INTO " + t.Name + "(" + removeLastChar(columns) + ") VALUES (" + removeLastChar(values) + ")")
 | 
							/*		_, err = t.db.conn.Query("INSERT INTO " + t.Name + "(" + removeLastChar(columns) + ") VALUES (" + removeLastChar(values) + ")")
 | 
				
			||||||
 | 
									if err != nil {
 | 
				
			||||||
 | 
										return id, err
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									err = t.db.conn.QueryRow("SELECT LAST_INSERT_ID()").Scan(&id)*/
 | 
				
			||||||
 | 
							stmt, err := t.db.conn.Prepare("INSERT INTO " + t.Name + "(" + removeLastChar(columns) + ") VALUES (" + removeLastChar(values) + ")")
 | 
				
			||||||
		if err != nil {
 | 
							if err != nil {
 | 
				
			||||||
			return id, err
 | 
								return id, err
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		err = t.db.conn.QueryRow("SELECT LAST_INSERT_ID();").Scan(&id)
 | 
							res, err := stmt.Exec()
 | 
				
			||||||
 | 
							id, err = res.LastInsertId()
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	return id, err
 | 
						return id, err
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@@ -542,12 +548,13 @@ func (t *TableInfo) Delete(record AssRow) error {
 | 
				
			|||||||
	return nil
 | 
						return nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func (t *TableInfo) UpdateOrInsert(record AssRow) (int, error) {
 | 
					func (t *TableInfo) UpdateOrInsert(record AssRow) (int64, error) {
 | 
				
			||||||
	id := -1
 | 
						var id int64
 | 
				
			||||||
 | 
						id = -1
 | 
				
			||||||
	for key, element := range record {
 | 
						for key, element := range record {
 | 
				
			||||||
		if key == "id" {
 | 
							if key == "id" {
 | 
				
			||||||
			sid := fmt.Sprintf("%v", element)
 | 
								sid := fmt.Sprintf("%v", element)
 | 
				
			||||||
			id, _ = strconv.Atoi(sid)
 | 
								id, _ = strconv.ParseInt(sid, 10, 64)
 | 
				
			||||||
			break
 | 
								break
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user