Adds ReadTable function to DBTools
This commit is contained in:
parent
2afcb35da1
commit
383715715c
2 changed files with 42 additions and 0 deletions
|
|
@ -160,6 +160,47 @@ namespace TShockAPI.DB
|
||||||
com.ExecuteNonQuery();
|
com.ExecuteNonQuery();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static List<object> ReadTable(string tablename, string getcolumn, List<ColumnData> WhereStatements)
|
||||||
|
{
|
||||||
|
StringBuilder sb = new StringBuilder();
|
||||||
|
List<object> ReturnedValues = new List<object>();
|
||||||
|
|
||||||
|
sb.Append("SELECT * FROM " + tablename + " ");
|
||||||
|
|
||||||
|
using (var com = database.CreateCommand())
|
||||||
|
{
|
||||||
|
//Where Statement (if any)
|
||||||
|
if (WhereStatements.Count > 0)
|
||||||
|
{
|
||||||
|
sb.Append("WHERE ");
|
||||||
|
int count = 0;
|
||||||
|
|
||||||
|
foreach (ColumnData columnname in WhereStatements)
|
||||||
|
{
|
||||||
|
count++;
|
||||||
|
if (WhereStatements.Count != count)
|
||||||
|
{
|
||||||
|
sb.Append(columnname.Name + " =" + columnname.Value + " AND ");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
sb.Append(columnname.Name + " =" + columnname.Value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
com.CommandText = sb.ToString();
|
||||||
|
|
||||||
|
using (var reader = com.ExecuteReader())
|
||||||
|
{
|
||||||
|
while (reader.Read())
|
||||||
|
ReturnedValues.Add(reader.Get<object>(getcolumn));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return ReturnedValues;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public class Column
|
public class Column
|
||||||
|
|
|
||||||
|
|
@ -64,6 +64,7 @@ namespace TShockAPI.DB
|
||||||
{typeof(decimal), (s, i) => s.GetDecimal(i)},
|
{typeof(decimal), (s, i) => s.GetDecimal(i)},
|
||||||
{typeof(float), (s, i) => s.GetFloat(i)},
|
{typeof(float), (s, i) => s.GetFloat(i)},
|
||||||
{typeof(double), (s, i) => s.GetDouble(i)},
|
{typeof(double), (s, i) => s.GetDouble(i)},
|
||||||
|
{typeof(object), (s, i) => s.GetValue(i)},
|
||||||
};
|
};
|
||||||
|
|
||||||
public static T Get<T>(this IDataReader reader, string column)
|
public static T Get<T>(this IDataReader reader, string column)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue