我正在用c#代码创建数据库和表格,所以最后我想显示如下结果:
hadoop fs -cat [dir]/* | hadoop fs -put - [destination file]
注意:我只是考虑插入操作的数据类型,可用性,精度和比例值
现在我的问题是我应该执行单个表还是我应该一次执行所有表的列表,最重要的是如何通过打开连接1次并在创建所有数据库和表之后关闭连接来处理此表最后显示每个表的结果???
我正在考虑下面的类,它会将结果返回给我的网络服务:
TableName Result
Table1 Success
Table2 Success
Table3 Error:Inapproproiate datatype precision for decimal
public class Tables
{
public string Name { get; set; }
public List<Column> Columns { get; set; }
}
public class Column
{
public string Name { get; set; }
public string Datatype { get; set; }
public string IsNullable { get; set; }
public Int32? Size { get; set; }
public byte? NumericPrecision { get; set; }
public Int32? NumericScale { get; set; }
}
[HttpPost]
public ActionResult CreateDatabase(string database,List<Tables> tables)
{
//Here i am thinking to call just method of repository that will create whole database structure for me..
}
public class DatabaseRepo
{
public void CreateDb(string database,List<Tables> tables)
{
var queryList = new List<string>();
queryList.Add("CREATE DATABASE " + database);
foreach (var table in tables)
{
queryList.Add(CreateTableScript(table.Name, table.Columns)); //This method will create table script for me.
}
}
}
有人可以指导我这样做吗?