<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>LeeBera</title>
    <link>https://leeseongho.tistory.com/</link>
    <description></description>
    <language>ko</language>
    <pubDate>Sat, 8 Aug 2026 15:15:57 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>leebera_</managingEditor>
    <item>
      <title>디버깅용 SHA-1, SHA-256 발급</title>
      <link>https://leeseongho.tistory.com/207</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;MacOS, Linux&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #666666; text-align: left;&quot;&gt;~/.android 로 이동하여 아래 명령 입력&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1685985444307&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android&lt;/code&gt;&lt;/pre&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;Window&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #666666; text-align: left;&quot;&gt;C:\Users\your_user_name\.android 로 이동하여 아래 명령 입력&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1685985859308&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;keytool -list -v -keystore debug.keystore&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>개발/Android</category>
      <category>sha</category>
      <author>leebera_</author>
      <guid isPermaLink="true">https://leeseongho.tistory.com/207</guid>
      <comments>https://leeseongho.tistory.com/207#entry207comment</comments>
      <pubDate>Tue, 6 Jun 2023 02:39:46 +0900</pubDate>
    </item>
    <item>
      <title>[Error][Firebase CLI] Failed to list Firebase projects</title>
      <link>https://leeseongho.tistory.com/206</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;문제점&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;로그인을 했었지만 인증이 제대로 되지 않아 프로젝트 목록을 불러오지 못한 것.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;해결방법&lt;/b&gt;&lt;/h2&gt;
&lt;pre id=&quot;code_1685758884627&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;firebase login --reauth&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 명령을 통해 재인증한 뒤 목록을 불러오면 정상적으로 목록 출력 가능.&lt;/p&gt;</description>
      <category>개발/Server</category>
      <category>CLI</category>
      <category>Firebase</category>
      <author>leebera_</author>
      <guid isPermaLink="true">https://leeseongho.tistory.com/206</guid>
      <comments>https://leeseongho.tistory.com/206#entry206comment</comments>
      <pubDate>Sat, 3 Jun 2023 11:20:49 +0900</pubDate>
    </item>
    <item>
      <title>compileSdkVersion minSdkVersion targetSdkVersion 값과 정의된 위치</title>
      <link>https://leeseongho.tistory.com/205</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;참고 글을 보던 중 flutter.gradle이란게 있는 것을 알게 되었고 혹시나해서 이를 검색해봤더니 flutter sdk 내에 있었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;열어보니 바로 해당 값을 찾을 수 있었다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2023-05-14 오후 1.29.59.png&quot; data-origin-width=&quot;1274&quot; data-origin-height=&quot;890&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nZiqP/btsfpdKxQIr/PKz0atEr9WXiJ2XDWK8xek/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nZiqP/btsfpdKxQIr/PKz0atEr9WXiJ2XDWK8xek/img.png&quot; data-alt=&quot;flutter.gradle&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nZiqP/btsfpdKxQIr/PKz0atEr9WXiJ2XDWK8xek/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnZiqP%2FbtsfpdKxQIr%2FPKz0atEr9WXiJ2XDWK8xek%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1274&quot; height=&quot;890&quot; data-filename=&quot;스크린샷 2023-05-14 오후 1.29.59.png&quot; data-origin-width=&quot;1274&quot; data-origin-height=&quot;890&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;flutter.gradle&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위와 같이 정의되어 있는 것을 볼 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;flutter sdk 폴더 이름이 flutter인 경우 경로는 아래와 같다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;flutter/packages/flutter_tools/gradle/flutter.gradle&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지금부턴 해당 파일에서 값들을 어떻게 가져오는지를 분석 및 파악한다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2023-05-14 오후 1.40.19.png&quot; data-origin-width=&quot;1154&quot; data-origin-height=&quot;246&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/yTRe6/btsfbzBMz4Y/7Nd6OysSePfCS4hDthT9Q1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/yTRe6/btsfbzBMz4Y/7Nd6OysSePfCS4hDthT9Q1/img.png&quot; data-alt=&quot;android/app/build.gradle&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/yTRe6/btsfbzBMz4Y/7Nd6OysSePfCS4hDthT9Q1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyTRe6%2FbtsfbzBMz4Y%2F7Nd6OysSePfCS4hDthT9Q1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1154&quot; height=&quot;246&quot; data-filename=&quot;스크린샷 2023-05-14 오후 1.40.19.png&quot; data-origin-width=&quot;1154&quot; data-origin-height=&quot;246&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;android/app/build.gradle&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;flutter.~~~를 사용하는 블록 이전에 apply를 통해 아까 compileSdkVersion, minSdkVersion 등이 정의된 gradle 파일을 불러오게 되어있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아까 flutter.gradle에서 cimpileSdkVersion이 정의된 클래스 이름이 FlutterExtension 이었는데 해당하는 클래스 이름으로 검색해봤다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2023-05-14 오후 1.43.46.png&quot; data-origin-width=&quot;1540&quot; data-origin-height=&quot;1462&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bGfvTw/btsfghs10I4/RyXQJ62YmFEP7OCzxTgBQK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bGfvTw/btsfghs10I4/RyXQJ62YmFEP7OCzxTgBQK/img.png&quot; data-alt=&quot;flutter.gradle&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bGfvTw/btsfghs10I4/RyXQJ62YmFEP7OCzxTgBQK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbGfvTw%2Fbtsfghs10I4%2FRyXQJ62YmFEP7OCzxTgBQK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1540&quot; height=&quot;1462&quot; data-filename=&quot;스크린샷 2023-05-14 오후 1.43.46.png&quot; data-origin-width=&quot;1540&quot; data-origin-height=&quot;1462&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;flutter.gradle&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 처럼 FlutterExtension을 flutter란 이름으로 생성하는 부분이 있었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;이를 통해 build.gradle에 flutter.compileSdkVersion이 왜 flutter.gradle의 값으로 들어가는지 알 수 있었다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고&lt;/p&gt;
&lt;figure id=&quot;og_1684039676645&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;object&quot; data-og-title=&quot;How Flutter apps are compiled with Gradle for Android&quot; data-og-description=&quot;Flutter makes it easy and fast to build beautiful apps for mobile and beyond - flutter/flutter&quot; data-og-host=&quot;github.com&quot; data-og-source-url=&quot;https://github.com/flutter/flutter/wiki/How-Flutter-apps-are-compiled-with-Gradle-for-Android&quot; data-og-url=&quot;https://github.com/flutter/flutter/wiki/How-Flutter-apps-are-compiled-with-Gradle-for-Android&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cC35W4/hySBHUCsRC/FGEmWhTw2lNRySb4mWwJUK/img.png?width=1386&amp;amp;height=640&amp;amp;face=0_0_1386_640&quot;&gt;&lt;a href=&quot;https://github.com/flutter/flutter/wiki/How-Flutter-apps-are-compiled-with-Gradle-for-Android&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://github.com/flutter/flutter/wiki/How-Flutter-apps-are-compiled-with-Gradle-for-Android&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cC35W4/hySBHUCsRC/FGEmWhTw2lNRySb4mWwJUK/img.png?width=1386&amp;amp;height=640&amp;amp;face=0_0_1386_640');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;How Flutter apps are compiled with Gradle for Android&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Flutter makes it easy and fast to build beautiful apps for mobile and beyond - flutter/flutter&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;github.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>개발/Flutter</category>
      <category>Android</category>
      <category>sdk</category>
      <category>version</category>
      <author>leebera_</author>
      <guid isPermaLink="true">https://leeseongho.tistory.com/205</guid>
      <comments>https://leeseongho.tistory.com/205#entry205comment</comments>
      <pubDate>Sun, 14 May 2023 13:49:40 +0900</pubDate>
    </item>
    <item>
      <title>다중 네비게이터 사용 시의 modal_bottom_sheet 문제</title>
      <link>https://leeseongho.tistory.com/204</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;root가 아닌 자식에서 modal_bottom_sheet을 1 개의 네비게이터 사용하듯이 열면 아래 이미지와 같은 문제가 발생한다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2023-02-26 오후 7.14.55.png&quot; data-origin-width=&quot;1134&quot; data-origin-height=&quot;1872&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bzWbb9/btr0HTm31Uf/KHrCjE9p9LewbZydIYN4Lk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bzWbb9/btr0HTm31Uf/KHrCjE9p9LewbZydIYN4Lk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bzWbb9/btr0HTm31Uf/KHrCjE9p9LewbZydIYN4Lk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbzWbb9%2Fbtr0HTm31Uf%2FKHrCjE9p9LewbZydIYN4Lk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;660&quot; data-filename=&quot;스크린샷 2023-02-26 오후 7.14.55.png&quot; data-origin-width=&quot;1134&quot; data-origin-height=&quot;1872&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이를 해결하기 위해선 root 네비게이터를 쓰도록 해야한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일반적인 dialog처럼&amp;nbsp; modal_bottom_sheet에도 적용 가능하므로 아래와 같이 한 줄 추가하면 해결된다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2023-02-26 오후 7.15.11.png&quot; data-origin-width=&quot;437&quot; data-origin-height=&quot;181&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/YCzT6/btr0JOFxu5Y/TxWicbaNvYsrKbFGkstVf0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/YCzT6/btr0JOFxu5Y/TxWicbaNvYsrKbFGkstVf0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/YCzT6/btr0JOFxu5Y/TxWicbaNvYsrKbFGkstVf0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FYCzT6%2Fbtr0JOFxu5Y%2FTxWicbaNvYsrKbFGkstVf0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;360&quot; height=&quot;149&quot; data-filename=&quot;스크린샷 2023-02-26 오후 7.15.11.png&quot; data-origin-width=&quot;437&quot; data-origin-height=&quot;181&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래와 같이 하위 네비게이터가 아닌 root 네비게이터에서 modal 창이 나온다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2023-02-26 오후 7.15.27.png&quot; data-origin-width=&quot;1134&quot; data-origin-height=&quot;1872&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ca4CTt/btr0OaH2Bt1/CT4hFctbB4U9sGVESiI9e0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ca4CTt/btr0OaH2Bt1/CT4hFctbB4U9sGVESiI9e0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ca4CTt/btr0OaH2Bt1/CT4hFctbB4U9sGVESiI9e0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fca4CTt%2Fbtr0OaH2Bt1%2FCT4hFctbB4U9sGVESiI9e0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;660&quot; data-filename=&quot;스크린샷 2023-02-26 오후 7.15.27.png&quot; data-origin-width=&quot;1134&quot; data-origin-height=&quot;1872&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>개발/Flutter</category>
      <category>dialog</category>
      <category>flutter</category>
      <category>modal_bottom_sheet</category>
      <category>navigator</category>
      <category>useRootNavigator</category>
      <author>leebera_</author>
      <guid isPermaLink="true">https://leeseongho.tistory.com/204</guid>
      <comments>https://leeseongho.tistory.com/204#entry204comment</comments>
      <pubDate>Sun, 26 Feb 2023 19:22:54 +0900</pubDate>
    </item>
    <item>
      <title>TextField 위젯의 높이가 남은 공간 모두 차지하도록 설정</title>
      <link>https://leeseongho.tistory.com/203</link>
      <description>&lt;script src=&quot;https://gist.github.com/leebera33/19933194b7a879d56c49ccb38e7771b4.js&quot;&gt;&lt;/script&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;맨 마지막 TextField 위젯의 expands를 true, maxLines를 null로 주고 Expanded 위젯으로 감싸 남은 공간을 모두 차지하도록 설정&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2023-01-31 오전 3.14.40.png&quot; data-origin-width=&quot;1120&quot; data-origin-height=&quot;992&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/buKedD/btrXBN3ZP3n/T0yTwdpvGfdRoE9j1rgRA1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/buKedD/btrXBN3ZP3n/T0yTwdpvGfdRoE9j1rgRA1/img.png&quot; data-alt=&quot;마지막 TextField는 남은 공간 모두 차지&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/buKedD/btrXBN3ZP3n/T0yTwdpvGfdRoE9j1rgRA1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbuKedD%2FbtrXBN3ZP3n%2FT0yTwdpvGfdRoE9j1rgRA1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;354&quot; data-filename=&quot;스크린샷 2023-01-31 오전 3.14.40.png&quot; data-origin-width=&quot;1120&quot; data-origin-height=&quot;992&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;마지막 TextField는 남은 공간 모두 차지&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;추가적으로 마지막 TextField의 hintText가 가운데로 정렬되는데 TextField 내에 아래 코드를 적용시키면 왼쪽 위에 나오게 됨&lt;/p&gt;
&lt;pre class=&quot;groovy&quot;&gt;&lt;code&gt;textAlignVertical: TextAlignVertical(y: -1)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>개발/Flutter</category>
      <category>expand</category>
      <category>Fill</category>
      <category>textfield</category>
      <author>leebera_</author>
      <guid isPermaLink="true">https://leeseongho.tistory.com/203</guid>
      <comments>https://leeseongho.tistory.com/203#entry203comment</comments>
      <pubDate>Tue, 31 Jan 2023 03:17:00 +0900</pubDate>
    </item>
    <item>
      <title>화면 눌러 focus 해제</title>
      <link>https://leeseongho.tistory.com/200</link>
      <description>&lt;pre class=&quot;typescript&quot; data-ke-language=&quot;typescript&quot;&gt;&lt;code&gt;GestureDetector(
	onTap: () =&amp;gt; FocusScope.of(context).unfocus(),
    child: ...
);&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 방식으로 설정하여 child 내의 위젯 중 focus를 가지고 있는 상태에서 focus대상이 아닌 곳을 누르면 해제&lt;/p&gt;</description>
      <category>개발/Flutter</category>
      <category>flutter</category>
      <category>focus</category>
      <category>Gesture</category>
      <author>leebera_</author>
      <guid isPermaLink="true">https://leeseongho.tistory.com/200</guid>
      <comments>https://leeseongho.tistory.com/200#entry200comment</comments>
      <pubDate>Sun, 4 Dec 2022 00:21:55 +0900</pubDate>
    </item>
    <item>
      <title>status bar color 변경</title>
      <link>https://leeseongho.tistory.com/199</link>
      <description>&lt;pre id=&quot;code_1670080481418&quot; class=&quot;typescript&quot; data-ke-language=&quot;typescript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import 'package:flutter/services.dart';

SystemChrome.setSystemUIOverlayStyle(
	const SystemUiOverlayStyle(
		statusBarColor: Colors.blue,
		statusBarIconBrightness: Brightness.light,
		statusBarBrightness: Brightness.light,
	),
);&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;brightness는 아이콘의 색상을 light(흰색), dark(검은색) 중에서 설정하는 것&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;statusBarIconBrightness는 android의 status bar icon의 색상 결정&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;statusBarBrightness는 iOS의 status bar icon의 색상 결정(안먹히는 것으로 보임, 더 테스트 해봐야 함)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1670076868042&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;How to change status bar color in Flutter?&quot; data-og-description=&quot;I am trying to change the status bar color to white. I found this pub on flutter. I tried to use the example code on my dart files.&quot; data-og-host=&quot;stackoverflow.com&quot; data-og-source-url=&quot;https://stackoverflow.com/questions/52489458/how-to-change-status-bar-color-in-flutter&quot; data-og-url=&quot;https://stackoverflow.com/questions/52489458/how-to-change-status-bar-color-in-flutter&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cBV6Ob/hyQL8T3Pyu/ABLcqFozJQcuRuoxYkOSn0/img.png?width=316&amp;amp;height=316&amp;amp;face=0_0_316_316&quot;&gt;&lt;a href=&quot;https://stackoverflow.com/questions/52489458/how-to-change-status-bar-color-in-flutter&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://stackoverflow.com/questions/52489458/how-to-change-status-bar-color-in-flutter&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cBV6Ob/hyQL8T3Pyu/ABLcqFozJQcuRuoxYkOSn0/img.png?width=316&amp;amp;height=316&amp;amp;face=0_0_316_316');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;How to change status bar color in Flutter?&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;I am trying to change the status bar color to white. I found this pub on flutter. I tried to use the example code on my dart files.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;stackoverflow.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>개발/Flutter</category>
      <category>appbar</category>
      <category>flutter</category>
      <category>statusbar</category>
      <author>leebera_</author>
      <guid isPermaLink="true">https://leeseongho.tistory.com/199</guid>
      <comments>https://leeseongho.tistory.com/199#entry199comment</comments>
      <pubDate>Sun, 4 Dec 2022 00:18:24 +0900</pubDate>
    </item>
    <item>
      <title>폴더 디렉토리 차이</title>
      <link>https://leeseongho.tistory.com/189</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;어느 순간 내가 이 두 용어를 혼합해서 사용하고 있다는 것을 알았다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 무슨 차이인지 모르는 상태로 그냥 생각나는 대로 쓰고 있었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;분명 차이가 있을 것이라 생각하고 정리하게 되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;디렉토리&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파일 시스템이 파일을 묶어내는 목록의 구조&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문서 파일이나 구조화된 목록(하위 디렉토리)들을 컴퓨터에 저장하는 방식을 의미&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;폴더&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GUI에서 특정 조건에 의해 묶인 목록을 나타내기 위한 방식&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;디렉토리와 다른 점&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파일 계층에서 실제 파일들이 묶여있는 구조 외에 특정 OS에선 가상 폴더와 스마트 폴더라는 개념도 존재한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이들은 파일 시스템에서 검색의 결과들을 묶거나 그 외의 특수한 공통 개념들을 묶어 반영하는 목록의 구조가 된다. &lt;span style=&quot;color: #9d9d9d;&quot;&gt;(이 점 때문에 특정 조건에 의해 묶인 목록이라고 했다.)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 이들은 파일 계층에서 디렉토리로 보여주지 않는다. (내부엔 목록 자체가 실재하지 않는 것)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;결론&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;무언가를 묶어준다는 점에선 비슷하지만 같다곤 할 수 없다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;디렉토리는 파일 시스템을 통해 컴퓨터 내부에서 실제로 저장되는 구조를 얘기하고 폴더는 우리가 눈으로 볼 수 있게 나오는 목록들을 얘기한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 중요한건 커뮤니케이션을 할 때 해당 용어들을 듣고 사람들이 생각하는게 같냐는 것인데, 디렉토리든 폴더든 어떤 용어를 쓰더라도 웬만해선 같은 것을 얘기할테니 뭘 쓰든 문제가 발생할 여지는 없단 생각이 든다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고&lt;/p&gt;
&lt;figure id=&quot;og_1667648513837&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;What is the difference between a directory and a folder?&quot; data-og-description=&quot;Most people use the terms &amp;quot;folder&amp;quot; and &amp;quot;directory&amp;quot; interchangeably. From a programmer point of view, is there a difference, and if so, what is it? Does it depend on the OS, or is&quot; data-og-host=&quot;stackoverflow.com&quot; data-og-source-url=&quot;https://stackoverflow.com/questions/5078676/what-is-the-difference-between-a-directory-and-a-folder&quot; data-og-url=&quot;https://stackoverflow.com/questions/5078676/what-is-the-difference-between-a-directory-and-a-folder&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/5hA6I/hyQsdn54jb/IAgaiYlOmdDUONQGrq1cJ1/img.png?width=316&amp;amp;height=316&amp;amp;face=0_0_316_316,https://scrap.kakaocdn.net/dn/6TX6H/hyQr5XTDf0/F7ZCBE41jErsrFWehzbG5k/img.png?width=469&amp;amp;height=469&amp;amp;face=0_0_469_469,https://scrap.kakaocdn.net/dn/2dmHE/hyQtpUKu3X/BDzDn7OhpDjUlIWrVbKNp0/img.jpg?width=215&amp;amp;height=234&amp;amp;face=0_0_215_234&quot;&gt;&lt;a href=&quot;https://stackoverflow.com/questions/5078676/what-is-the-difference-between-a-directory-and-a-folder&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://stackoverflow.com/questions/5078676/what-is-the-difference-between-a-directory-and-a-folder&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/5hA6I/hyQsdn54jb/IAgaiYlOmdDUONQGrq1cJ1/img.png?width=316&amp;amp;height=316&amp;amp;face=0_0_316_316,https://scrap.kakaocdn.net/dn/6TX6H/hyQr5XTDf0/F7ZCBE41jErsrFWehzbG5k/img.png?width=469&amp;amp;height=469&amp;amp;face=0_0_469_469,https://scrap.kakaocdn.net/dn/2dmHE/hyQtpUKu3X/BDzDn7OhpDjUlIWrVbKNp0/img.jpg?width=215&amp;amp;height=234&amp;amp;face=0_0_215_234');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;What is the difference between a directory and a folder?&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Most people use the terms &quot;folder&quot; and &quot;directory&quot; interchangeably. From a programmer point of view, is there a difference, and if so, what is it? Does it depend on the OS, or is&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;stackoverflow.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1667648525047&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Directory (computing) - Wikipedia&quot; data-og-description=&quot;File system structure for locating files In computing, a directory is a file system cataloging structure which contains references to other computer files, and possibly other directories. On many computers, directories are known as folders, or drawers,[1] &quot; data-og-host=&quot;en.wikipedia.org&quot; data-og-source-url=&quot;https://en.wikipedia.org/wiki/Directory_%28computing%29#Folder_metaphor&quot; data-og-url=&quot;https://en.wikipedia.org/wiki/Directory_%28computing%29#Folder_metaphor&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/djeZ5H/hyQse1BS9r/YnBKFPiwPWHgMWYBIp6znK/img.png?width=720&amp;amp;height=370&amp;amp;face=0_0_720_370,https://scrap.kakaocdn.net/dn/dCNKLF/hyQr90jBSR/bPyKcpXETACZZQkhO4zbH1/img.png?width=720&amp;amp;height=370&amp;amp;face=0_0_720_370,https://scrap.kakaocdn.net/dn/MHKqr/hyQtABYCIN/ZB6D6yHfmxnCnKydOeytlk/img.png?width=640&amp;amp;height=329&amp;amp;face=0_0_640_329&quot;&gt;&lt;a href=&quot;https://en.wikipedia.org/wiki/Directory_%28computing%29#Folder_metaphor&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://en.wikipedia.org/wiki/Directory_%28computing%29#Folder_metaphor&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/djeZ5H/hyQse1BS9r/YnBKFPiwPWHgMWYBIp6znK/img.png?width=720&amp;amp;height=370&amp;amp;face=0_0_720_370,https://scrap.kakaocdn.net/dn/dCNKLF/hyQr90jBSR/bPyKcpXETACZZQkhO4zbH1/img.png?width=720&amp;amp;height=370&amp;amp;face=0_0_720_370,https://scrap.kakaocdn.net/dn/MHKqr/hyQtABYCIN/ZB6D6yHfmxnCnKydOeytlk/img.png?width=640&amp;amp;height=329&amp;amp;face=0_0_640_329');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Directory (computing) - Wikipedia&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;File system structure for locating files In computing, a directory is a file system cataloging structure which contains references to other computer files, and possibly other directories. On many computers, directories are known as folders, or drawers,[1]&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;en.wikipedia.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1667650669516&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;File system - Wikipedia&quot; data-og-description=&quot;From Wikipedia, the free encyclopedia Jump to navigation Jump to search Format or program for storing files and directories This article is about the way computers organise data stored on media such as disk. For library and office filing systems, see Libra&quot; data-og-host=&quot;en.wikipedia.org&quot; data-og-source-url=&quot;https://en.wikipedia.org/wiki/File_system#Directories&quot; data-og-url=&quot;https://en.wikipedia.org/wiki/File_system#Directories&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/DCRd1/hyQr6vL28P/vOKD6XgwGSN3Lz37L0C8sK/img.png?width=1200&amp;amp;height=1776&amp;amp;face=0_0_1200_1776,https://scrap.kakaocdn.net/dn/d1Lopt/hyQtBVcBj0/jsIkIa2UuSluceWHXNfPS1/img.png?width=800&amp;amp;height=1184&amp;amp;face=0_0_800_1184,https://scrap.kakaocdn.net/dn/bk76PC/hyQshxftXp/wW93Acsh3vVzHXQculxuU1/img.png?width=640&amp;amp;height=947&amp;amp;face=0_0_640_947&quot;&gt;&lt;a href=&quot;https://en.wikipedia.org/wiki/File_system#Directories&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://en.wikipedia.org/wiki/File_system#Directories&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/DCRd1/hyQr6vL28P/vOKD6XgwGSN3Lz37L0C8sK/img.png?width=1200&amp;amp;height=1776&amp;amp;face=0_0_1200_1776,https://scrap.kakaocdn.net/dn/d1Lopt/hyQtBVcBj0/jsIkIa2UuSluceWHXNfPS1/img.png?width=800&amp;amp;height=1184&amp;amp;face=0_0_800_1184,https://scrap.kakaocdn.net/dn/bk76PC/hyQshxftXp/wW93Acsh3vVzHXQculxuU1/img.png?width=640&amp;amp;height=947&amp;amp;face=0_0_640_947');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;File system - Wikipedia&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;From Wikipedia, the free encyclopedia Jump to navigation Jump to search Format or program for storing files and directories This article is about the way computers organise data stored on media such as disk. For library and office filing systems, see Libra&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;en.wikipedia.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>개발</category>
      <category>directory</category>
      <category>file system</category>
      <category>folder</category>
      <author>leebera_</author>
      <guid isPermaLink="true">https://leeseongho.tistory.com/189</guid>
      <comments>https://leeseongho.tistory.com/189#entry189comment</comments>
      <pubDate>Sat, 5 Nov 2022 21:27:31 +0900</pubDate>
    </item>
    <item>
      <title>[Error][Docker] failed to create network network-name: Error response from daemon: Pool overlaps with other one on this address space</title>
      <link>https://leeseongho.tistory.com/188</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;문제점&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;network-name이란 네트워크를 생성하는 데 다른 네트워크의 ip주소 범위와 겹쳐 발생하는 에러이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본인의 상황을 예시로 설명하겠다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저 생성되어있던 다중 컨테이너 그룹1의 서브넷 네트워크를 172.16.0.0/16으로 생성했었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;새로 생성하는 다중 컨테이너 그룹2의 서브넷 네트워크를 172.16.2.0/24로 생성하는데 문제가 발생했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저 생성되어 있던 그룹1의 호스트 주소가 172.16.0.0 ~ 172.16.255.255 까지 있을 수 있다. 근데 새로 생성하려는 그룹2의 서브넷 네트워크가 그룹1의 서브넷 네트워크의 호스트 주소에 포함되어 둘이 겹치게 되어 문제가 발생했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;해결방법&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;방법은 여럿 존재한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. 그룹1의 접두어를 /24로 변경&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. 그룹1과 그룹2가 겹치는 네트워크 ip주소인 172.16을 그룹 둘 중 한 곳 변경&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3. 애초에 호스트(컨테이너) 수에 맞게 접두어를 설정 (호스트가 9개 정도다 -&amp;gt; /28)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>개발/Server</category>
      <category>Docker</category>
      <category>docker-compose</category>
      <category>network</category>
      <category>subnet</category>
      <author>leebera_</author>
      <guid isPermaLink="true">https://leeseongho.tistory.com/188</guid>
      <comments>https://leeseongho.tistory.com/188#entry188comment</comments>
      <pubDate>Wed, 2 Nov 2022 18:11:20 +0900</pubDate>
    </item>
    <item>
      <title>[MySQL/MariaDB] 대소문자 구분</title>
      <link>https://leeseongho.tistory.com/176</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a style=&quot;text-decoration: none;&quot; href=&quot;#usage&quot;&gt;사용법만 보려면 클릭&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;VAR, VARCHAR, TEXT 타입은 non binary string&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문자열을 검색할 때 피연산자의  collation을 이용해서 검색(3번째 참고 글에 '&lt;span style=&quot;color: #000000;&quot;&gt;If the collation is not case sensitive,&lt;/span&gt;' 라는 부분이 있는 것을 보아 모든 collation이 그렇진 않은 것 같다. 현재 내가 사용중인 mariadb 내의 db(schema)에서 default로 설정되어있는 collation인 utf8mb4_general_ci 는 대소문자를 구분하지 않는다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;BINARY, VARBINARY, BLOB 타입은 binary string&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;검색할 때 피연산자에 있는 바이트의 숫자 값을 이용&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;간단하게 생각해서 아스키로 생각해볼 수 있는데 아스키에서 대문자는 65~90, 소문자는 97~122로 서로 다르다.(대소문자 구분이 가능하단 의미)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;non binary string이랑 binary string을 비교하면 binary string을 기준으로 비교(대소문자 구분 가능)&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;usage&quot; data-ke-size=&quot;size16&quot;&gt;대소문자 비교를 위해서 where절에서 값을 binary타입으로 캐스팅&lt;/p&gt;
&lt;pre id=&quot;code_1661500670842&quot; class=&quot;sql&quot; data-ke-language=&quot;sql&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;select * from table_name where column_name = binary 'something';&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고한 stackoverflow글에서 Nitesh의 답변에 따르면 column 앞에 binary를 붙이면 index를 사용하지 않아 성능저하가 발생하므로 값에 binary를 붙임&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;-&amp;gt; column에 binary를 붙여 non binary string이였던 것을 binary로 바꾸게 되면 당연히 원래의 타입과 다르기 때문에 인덱싱에 문제가 되므로 성능 저하가 발생할 수 있다고 생각됨, 그래서 column은 인덱싱을 통해 빠르게 넘어가도록 그대로 두고 비교하려는 literal string을 binary로 만들어준 뒤 비교를 하여 binary를 기준으로 비교되게해서 대소문자 구분이 될 수 있도록 함.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;더 찾아보니 마지막 참고 글인 mysql document에 '&lt;span style=&quot;background-color: #ffffff; color: #555555;&quot;&gt;Be aware that if you apply&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;a href=&quot;https://dev.mysql.com/doc/refman/8.0/en/cast-functions.html#operator_binary&quot;&gt;BINARY&lt;/a&gt;&lt;span style=&quot;background-color: #ffffff; color: #555555;&quot;&gt;,&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;a href=&quot;https://dev.mysql.com/doc/refman/8.0/en/cast-functions.html#function_cast&quot;&gt;CAST()&lt;/a&gt;&lt;span style=&quot;background-color: #ffffff; color: #555555;&quot;&gt;, or&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;a href=&quot;https://dev.mysql.com/doc/refman/8.0/en/cast-functions.html#function_convert&quot;&gt;CONVERT()&lt;/a&gt;&lt;span style=&quot;background-color: #ffffff; color: #555555;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;to an indexed column, MySQL may not be able to use the index efficiently.&lt;/span&gt;' 이러한 문구가 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;비교하려는 column이 index가 적용된 column인 경우에만 조심하면 되는 것 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고&lt;/p&gt;
&lt;figure id=&quot;og_1661500885653&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;How can I make SQL case sensitive string comparison on MySQL?&quot; data-og-description=&quot;I have a function that returns five characters with mixed case. If I do a query on this string it will return the value regardless of case. How can I make MySQL string queries case sensitive?&quot; data-og-host=&quot;stackoverflow.com&quot; data-og-source-url=&quot;https://stackoverflow.com/questions/5629111/how-can-i-make-sql-case-sensitive-string-comparison-on-mysql&quot; data-og-url=&quot;https://stackoverflow.com/questions/5629111/how-can-i-make-sql-case-sensitive-string-comparison-on-mysql&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/YUdWS/hyPzjCXwra/D1q49i8OLWui1Ejj7pJfoK/img.png?width=316&amp;amp;height=316&amp;amp;face=0_0_316_316&quot;&gt;&lt;a href=&quot;https://stackoverflow.com/questions/5629111/how-can-i-make-sql-case-sensitive-string-comparison-on-mysql&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://stackoverflow.com/questions/5629111/how-can-i-make-sql-case-sensitive-string-comparison-on-mysql&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/YUdWS/hyPzjCXwra/D1q49i8OLWui1Ejj7pJfoK/img.png?width=316&amp;amp;height=316&amp;amp;face=0_0_316_316');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;How can I make SQL case sensitive string comparison on MySQL?&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;I have a function that returns five characters with mixed case. If I do a query on this string it will return the value regardless of case. How can I make MySQL string queries case sensitive?&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;stackoverflow.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1661500888022&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;MySQL :: MySQL 8.0 Reference Manual :: B.3.4.1 Case Sensitivity in String Searches&quot; data-og-description=&quot;B.3.4.1&amp;nbsp;Case Sensitivity in String Searches For nonbinary strings (CHAR, VARCHAR, TEXT), string searches use the collation of the comparison operands. For binary strings (BINARY, VARBINARY, BLOB), comparisons use the numeric values of the bytes in the ope&quot; data-og-host=&quot;dev.mysql.com&quot; data-og-source-url=&quot;https://dev.mysql.com/doc/refman/8.0/en/case-sensitivity.html&quot; data-og-url=&quot;https://dev.mysql.com/doc/refman/8.0/en/case-sensitivity.html&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://dev.mysql.com/doc/refman/8.0/en/case-sensitivity.html&quot; data-source-url=&quot;https://dev.mysql.com/doc/refman/8.0/en/case-sensitivity.html&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('&amp;quot;&amp;quot;');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;MySQL :: MySQL 8.0 Reference Manual :: B.3.4.1 Case Sensitivity in String Searches&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;B.3.4.1&amp;nbsp;Case Sensitivity in String Searches For nonbinary strings (CHAR, VARCHAR, TEXT), string searches use the collation of the comparison operands. For binary strings (BINARY, VARBINARY, BLOB), comparisons use the numeric values of the bytes in the ope&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;dev.mysql.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1662101528574&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;What is difference between binary and non-binary string data types&quot; data-og-description=&quot;Answer No: 106 Some text from &amp;quot;MySQL 5 Certification Study Guide&amp;quot; about binary and non-binary string data types is as below: Three data types store non-binary strings: CHAR, VARCHAR, and TEXT. Three data types store binary strings: BINARY, VARBINARY, and B&quot; data-og-host=&quot;www.mysqlfaqs.net&quot; data-og-source-url=&quot;https://www.mysqlfaqs.net/mysql-faqs/Data-Types/What-is-difference-between-binary-and-non-binary-string-data-types&quot; data-og-url=&quot;https://www.mysqlfaqs.net/mysql-faqs/Data-Types/What-is-difference-between-binary-and-non-binary-string-data-types&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://www.mysqlfaqs.net/mysql-faqs/Data-Types/What-is-difference-between-binary-and-non-binary-string-data-types&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://www.mysqlfaqs.net/mysql-faqs/Data-Types/What-is-difference-between-binary-and-non-binary-string-data-types&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;What is difference between binary and non-binary string data types&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Answer No: 106 Some text from &quot;MySQL 5 Certification Study Guide&quot; about binary and non-binary string data types is as below: Three data types store non-binary strings: CHAR, VARCHAR, and TEXT. Three data types store binary strings: BINARY, VARBINARY, and B&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;www.mysqlfaqs.net&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;figure id=&quot;og_1662103632532&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;MySQL :: MySQL 8.0 Reference Manual :: 12.11 Cast Functions and Operators&quot; data-og-description=&quot;MySQL 8.0 Reference Manual &amp;nbsp;/&amp;nbsp; Functions and Operators &amp;nbsp;/&amp;nbsp; Cast Functions and Operators 12.11&amp;nbsp;Cast Functions and Operators Table&amp;nbsp;12.15&amp;nbsp;Cast Functions and Operators Name Description Deprecated BINARY Cast a string to a binary string 8.0.27 CAST() Cas&quot; data-og-host=&quot;dev.mysql.com&quot; data-og-source-url=&quot;https://dev.mysql.com/doc/refman/8.0/en/cast-functions.html&quot; data-og-url=&quot;https://dev.mysql.com/doc/refman/8.0/en/cast-functions.html&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://dev.mysql.com/doc/refman/8.0/en/cast-functions.html&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://dev.mysql.com/doc/refman/8.0/en/cast-functions.html&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;MySQL :: MySQL 8.0 Reference Manual :: 12.11 Cast Functions and Operators&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;MySQL 8.0 Reference Manual &amp;nbsp;/&amp;nbsp; Functions and Operators &amp;nbsp;/&amp;nbsp; Cast Functions and Operators 12.11&amp;nbsp;Cast Functions and Operators Table&amp;nbsp;12.15&amp;nbsp;Cast Functions and Operators Name Description Deprecated BINARY Cast a string to a binary string 8.0.27 CAST() Cas&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;dev.mysql.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>개발/DB</category>
      <category>case sensitive</category>
      <category>MariaDB</category>
      <category>mysql</category>
      <author>leebera_</author>
      <guid isPermaLink="true">https://leeseongho.tistory.com/176</guid>
      <comments>https://leeseongho.tistory.com/176#entry176comment</comments>
      <pubDate>Fri, 26 Aug 2022 17:06:15 +0900</pubDate>
    </item>
  </channel>
</rss>