protected override Key CreateKey(DataRow row)
 {
     Key key = new Key();
     key.Name = row["relname"].ToString();
     key.ColumnName = row["relname"].ToString();
     key.IsPrimary = Convert.ToBoolean(row["indisprimary"]);
     return key;
 }
 protected override Key CreateKey(DataRow row)
 {
     Key key = new Key();
     key.Name = row["PK_NAME"].ToString();
     key.ColumnName = row["FKCOLUMN_NAME"].ToString();
     key.IsPrimary = false;
     return key;
 }
 protected override Key CreateKey(DataRow row)
 {
     Key key = new Key();
     key.Name = row["Key_name"].ToString();
     key.ColumnName = row["Column_name"].ToString();
     key.IsPrimary = row["Key_name"].ToString() == "PRIMARY"?true:false;
     return key;
 }
 protected override Key CreateKey(DataRow row)
 {
     Key key = new Key();
     key.Name = row["CONSTRAINT_NAME"].ToString();
     key.ColumnName = row["COLUMN_NAME"].ToString();
     if (row["CONSTRAINT_TYPE"].ToString() == "P")
     {
         key.IsPrimary = true;
     }
     else
     {
         key.IsPrimary = false;
     }
     return key;
 }
		protected override DataSet KeySchema(Table table, DataAccessProviderFactory dataAccessProvider, IDbConnection connection)
		{
			DataSet dsPkeys = new DataSet();
			IDbCommand sqlSp = dataAccessProvider.CreateCommand("sp_pkeys",connection);
			sqlSp.CommandType = CommandType.StoredProcedure;			
			IDbDataParameter param = dataAccessProvider.CreateParameter();			
			param.Direction = ParameterDirection.Input;
			param.DbType = DbType.String;
			param.ParameterName = "@table_name";
			param.Value = table.Name;
			sqlSp.Parameters.Add(param);
            IDbDataParameter schemaParameter = dataAccessProvider.CreateParameter();			
			schemaParameter.Direction = ParameterDirection.Input;
			schemaParameter.DbType = DbType.String;
			schemaParameter.ParameterName = "@table_owner";
			schemaParameter.Value = table.Schema;
			sqlSp.Parameters.Add(schemaParameter);
			IDbDataAdapter da = dataAccessProvider.CreateDataAdapter();
			da.SelectCommand = sqlSp;
			da.Fill(dsPkeys);
			foreach(DataRow row in dsPkeys.Tables[0].Rows)
			{
				Key key = new Key();
				key.Name = row["PK_NAME"].ToString();
				key.ColumnName = row["COLUMN_NAME"].ToString();
				key.IsPrimary = true;
				_Keys.Add(key);				
			}
	
			DataSet ds = new DataSet();			
			sqlSp = dataAccessProvider.CreateCommand("sp_fkeys",connection);
			sqlSp.CommandType = CommandType.StoredProcedure;			
			param = dataAccessProvider.CreateParameter();			
			param.Direction = ParameterDirection.Input;
			param.DbType = DbType.String;
			param.ParameterName = "@pktable_name";
			param.Value = table.Name;
			sqlSp.Parameters.Add(param);
			da = dataAccessProvider.CreateDataAdapter();
			da.SelectCommand = sqlSp;
			da.Fill(ds);
			ds.Merge(dsPkeys);
			return ds;
		}
Exemplo n.º 6
0
 public void Remove(Key key)
 {
     List.Remove(key);
 }
Exemplo n.º 7
0
 public int IndexOf(Key key)
 {
     return List.IndexOf(key);
 }
Exemplo n.º 8
0
 public bool Contains(Key key)
 {
     return List.Contains(key);
 }
Exemplo n.º 9
0
 public void Add(Key key)
 {
     List.Add(key);
 }