Центрируйте одно из двух одноуровневых отделений

Основное различие между таблицами EXTERNAL и MANAGED заключается в поведении удаления таблицы / раздела. Когда вы удаляете MANAGED таблицу / раздел, местоположение с файлами данных также удаляется. При удалении таблицы EXTERNAL местоположение с файлами данных остается без изменений.

Таблица

EXTERNAL и MANAGED хранятся в месте, указанном в DDL . Вы можете создать таблицу поверх существующего местоположения с файлами данных, уже находящимися в этом местоположении, и это будет работать как для EXTERNAL, так и для MANAGED, не имеет значения.

Вы даже можете создать таблицы EXTERNAL и MANAGED поверх одного и того же местоположения, см. Этот ответ с более подробной информацией и тестами: https://stackoverflow.com/a/54038932/ 2700344

Если вы указали местоположение, данные будут храниться в этом месте для обоих типов таблиц. Если вы не указали местоположение, данные будут в расположении по умолчанию: /user/hive/warehouse/database_name.db/table_name для управляемых и внешних таблиц.

См. Также официальные документы Hive по Управляемые и внешние таблицы

.

8
задан cdleary 5 December 2008 в 09:25
поделиться

5 ответов

Прием я просто раньше заставлял это работать, должен иметь дополнение слева от контейнера, и мы можем поощрить лево-одноуровневый элемент находиться в этом пространстве путем предоставления ему равного, но отрицательного поля.

Для завершения изображения, мы также помещаем дополнение справа от контейнера равного размера к ширине лево-одноуровневого элемента.

<html>
  <head>
      <style type='text/css'>      
        #container {
            width: 500px;
            padding-left:50px;
            padding-right:50px;     
            }      
        #left-sibling {
            border: solid 1px #000;
            float: left;
            width:50px;
            margin-left:-50px;  
        }      
        #right-sibling {
            border: solid 1px #000;
            text-align: center;

        }
        #container2 {
            width: 500px;   
            }  
</style>
  </head>
    <body>
        <div id='container'>      
            <div id='left-sibling'>Spam</div>
            <div id='right-sibling'>Eggs<br />Eggs<br />Eggs<br /></div>
        </div>
        <div id='container'> 
            <div id='left-sibling' style="display:none;">Spam</div>    
            <div id='right-sibling'>Eggs<br />Eggs<br />Eggs<br /></div>
        </div>
        <div id='container2'> 
            <div id='right-sibling'>Eggs<br />Eggs<br />Eggs<br /></div>
        </div>
      </body>
</html>
6
ответ дан 5 December 2019 в 15:27
поделиться

Попытайтесь установить налево-одноуровневый-элемент ширины и равное дополнительное право: направо-одноуровневый-элемент

как так

<html>
  <head>
    <style type='text/css'>
      #container {
        width: 500px;
      }
      #left-sibling {
        float: left;
        width:50px;
      }
      #right-sibling {
        text-align: center;
        padding-right:50px;
      }
    </style>
  </head>
  <body>
    <div id='container'>
      <div id='left-sibling'>Spam</div>
      <div id='right-sibling'>Eggs</div>
    </div>
  </body>
</html>
2
ответ дан 5 December 2019 в 15:27
поделиться

Можно измениться float: left; на #left-sibling кому: position: absolute;. Это вынет его из нормального потока, таким образом, это не будет больше влиять на правильный одноуровневый элемент.

Конечно, это могло иметь другие побочные эффекты с Вашим дизайном.

1
ответ дан 5 December 2019 в 15:27
поделиться

Необходимо всегда устанавливать ширину на пущенных в ход элементах, иначе вещи становятся странными :)

Если Вы помещаете a

border: solid 1px #000; 

правило об обоих отделениях, Вы будете видеть то, что происходит - #right-sibling отделение, заполняет всю ширину родительского отделения (#container), поэтому хотя текст на самом деле выровненный к центру, похоже, что это не!

1
ответ дан 5 December 2019 в 15:27
поделиться

Текст - выравнивается, атрибут управляет выравниванием содержания в контейнере, где атрибут применяется. Путем добавления следующих стилей легко видеть:

#left-sibling { float: left; width:100px; border:1px Solid Blue; }
#right-sibling { text-align: center; width:100px; border:1px Solid Red; }

Я предложил бы добавить doctype к документу для предотвращения quirksmode

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

и следующие стили:

#container { width: 500px; position:relative; border:1px Solid Black; }
#left-sibling { float:left; position:absolute; top:0px; left:0px; width:100px; border:1px Solid Blue; }
#right-sibling { width:100px; position:relative; margin-left:auto; margin-right:auto; border:1px Solid Red; }

Вы, конечно, хотели бы скорректировать размер одноуровневых элементов для установки потребностям. Границы делают хорошее задание, показывающее, что действительно происходит.

1
ответ дан 5 December 2019 в 15:27
поделиться