DATABASE 2 - MySQL

MySQL 테이블의 생성

 

댓글

댓글 본문
  1. クレヨンしんちゃん
    ㅇㄹ
  2. zsezse1003
    오늘은 여기까지
  3. 완료!
  4. 흰색두부김치
    완료
  5. Amousk
    테이블 생성 완료.
  6. 쑤우
    완료. 감사합니다~
  7. 티케이12
    6.2 완료
  8. MySQL 테이블의 생성

    어떤 분야든 cheat sheet를 검색해보면 잘정리된 정보 검색 가능

    데이터베이스는 컬럼↓의 데이터 타입을 강제할 수 있음
    ex(ID 컬럼 : 1,2,3,4,5(숫자) / title 컬럼: MySQL,ORACLE(문자)

    MySQL datatype number 확인

    CREATE TABLE topic(
      id INT(11) NOT NULL AUTO_INCREMENT, //c1 datatype(length) -> length: 얼마까지 노출시킬지                       정함,
                          NOT NULL: 값이 없는 것을 허용안함,                       AUTO_INCREMENT: id 값 자동 +1(중복 방지)
      title VARCHAR(100) NOT NULL, //VARCHAR 문자열 데이터타입 선언
      description TEXT NULL, //TEXT 문자열 데이터타입 선언(본문이므로 많은 글자 수 필요) NULL: 값이               없는 것을 허용
      created DATETIME NOT NULL, //DATETIME 날짜 데이터타입 선언
      author VARCHAR(30) NULL,
      profile VARCHAR(100) NULL,
      PRIMARY KEY(id)); //topic 테이블의 id 컬럼이 메인키라는 것을 선언, PRIMARY KEY 1.성능적 측면
               2.중복을 방지

    데이터베이스 규제 정책 덕분에 원하는 형식으로 깔끔하게 유지하는데 큰 도움
  9. jaehyunlee
    05/29 고3 완료
  10. 아자요
    데이터베이스 도전

    20.05.26일 / 완료
  11. CindyBelita
    완료
  12. 아무 오류 없이 완료돼어요 ㅎㅎㅎㅎ
  13. 감사합니다 찜찜했는데 해결되었어요!!^^
    대화보기
    • Lucas Trowman
      완료!
    • 김바다
      20/4/24 학습 완료~
    • OneJae EE
      20.04.17 금 / 37세 비전공자 / 완료
    • 한강
      완료했습니다~~!!! 200416
    • urban77
      20/4/14 학습 완료
    • 감사합니다!
    • bigman
      감사합니다..
    • wombat
      03/24/20 학습완료!
    • CREATE TABLE `opentutorials`.`new_table` (
      `id` INT NOT NULL AUTO_INCREMENT,
      `title` VARCHAR(100) NOT NULL,
      `description` TEXT NULL,
      `subsmission` DATETIME NOT NULL,
      `author` VARCHAR(30) NULL,
      `profile` VARCHAR(100) NULL,
      PRIMARY KEY (`id`)
      );

      전 이렇게 했더니 수많은 오류 끝에 됬어요
    • Goreng
      감사합니다.
    • crazylion
      감사합니다^^
    • 희진
      완료! 감사합니다
    • Query OK, 0 rows affected, 1 warning (0.02 sec) 관련 에러가 뜨시는 분들에게 도움이 되었으면 합니다.

      일단, 에러가 뜨는 이유는 현재 업로드 된 강의와 실습을 하시는 분들의 mysql 버전이 달라서 에러가 나는 것 같습니다.
      검색결과, mysql 8.0.17 버전부터는 int 데이터 타입의 width를 설정하는 것을 더 이상 지원하지 않고, 향후 버전부터 제거 될 기능 중 하나라고 합니다.

      실습을 하시는 도중이시거나 완료하신 후에 조금 찜찜하시다면,
      ALTER TABLE 테이블명 MODIFY COLUMN 컬럼명 데이터타입 조건;
      ( 강의에서 보셨던 것들을 그대로 입력하셨다면, ALTER TABLE topic MODIFY COLUMN id int NOT NULL AUTO_INCREMENT; )
      을 입력하시면 에러가 없어지신 것을 확인하실 수 있으실 겁니다.

      추가적으로 명령어 작성 후, warning이 발견되면, show warnings \g 명령어를 입력하신 다음, 나오는 코드번호와 메시지를 구글링하셔서 찾아보시는 것도 도움이 되실거라고 생각합니다.
    • pcy1541
      질문입니다.
      Query OK, 0 rows affected, 1 warning (0.02 sec)
      이렇게 뜨면 오류인가요 정상적으로 된것인가요?
    • warn이 하나 뜨는데 일단 쿼리 ok는 됐어요..
      warn메시지는 어떻게 보나요?ㅠㅠ 그리고 위쪽 화살표나오면 전체가 다시 안뜨고 한줄씩 뜨는데 다시 쳐야하는건가요
    • 저도 궁금해서 소문자로 해봤는데 소문자도 문제없이 잘 돼요^^
      대화보기
      • 반달곰
        질문 입니다.
        강의를 듣고 그대로 따라 하다보니까요
        명령어들이 대문자로 되어있네요
        꼭 대문자 이어야 하나요??
        아니면 소문자도 되나요??
        어떤 법칙(원칙)이 있나요??
        어뚱한 질문일지는 몰라도
        이제 입문(왕초보)이다 보니~~~
      • 반달곰
        강의 감사합니다.^^
        정말로 듣고 싶었던 강의 입니다.
        고맙습니다.
      • 마가레또
        20191126
      • 완료 191120
      • 완료 191120
      • CRAHMA
        CREATE TABLE topic (
        id INT(11) NOT NULL AUTO_INCREMENT,
        title VARCHAR(100) NOT NULL,
        description TEXT,
        created DATETIME NOT NULL,
        author VARCHAR(30),
        profile VARCHAR(100),
        PRIMARY KEY(id));

        AUTO_INCREMENT = CELL이 1씩 증가되며 초기값을 정할수있다.
        PRIMARY KEY(id) = 해당LINE의 대표가되는 CELL을 정하는 명령어
      • 히히재밋다
        도움많이되요^^
      • Ram Lee
        다시 보기! 재밌어요!
      • 완료!
      • Gyeong-Hwan Doh
        완료^^
      • 20191007 Ted 완료!
      • 굼벵이
        완료
      • javacong
        CREATE TABLE topic(
        id INT(11) NOT NULL AUTO_INCREMENT,
        title VARCHAR(100) NOT NULL,
        description TEXT NULL,
        created DATETIME NOT NULL,
        author VARCHAR(30) NULL,
        profile VARCHAR(100) NULL,
        PRIMARY KEY(id)
        );
      • silver94
        항상 감사드립니다!!!
      • 박수연
        컴퓨터 전원을 껐다가 키면 생성한 테이블이며 데이터베이스가 다 날아가있는데, 전원을 껐다 켜도 이전에 생성한 데이터베이스와 테이블이 저장되게 하려면 어떻게 해야 하나요 ㅠㅠ?
      • 추연호
        이고잉님 table을 생성했더니 Warning 이 한가지 나오는데 메시지는 Integer display width is deprecated and will be removed in a future release.라고 합니다. 아마 INT(11) 에서 11에 해당하는 display width가 앞으로 삭제될 것이라는 내용인거 같은데, 이 점에 대해 어떻게 대처해야 할까요?
      • CREATE TABLE topic(
        id INT(11) NOT NULL AUTO_INCREMENT,
        title VARCHAR(100) NOT NULL,
        descriotion TEXT NULL,
        created DATETIME NOT NULL,
        author VARCHAR(30) NULL,
        profile VARCHAR(100) NULL,
        PRIMARY KEY(id)
        );
      • Ray Kim
        엑셀보다 더욱 많은 기능을 할 수 있다는 점에서 놀랐네요!!
      • Eugene
        터미널에서 mysql을 실행하려고 하면
        homebrew (mac OS에서 프로그램을 쉽게 다운로드&삭제할 수 있는 패키지 관리자)를 사용해서
        mysql을 설치해줘야한다고 알고있어요ㅠ
        그래서 아마 file이나 diretory가 없다고 나온거 같아요ㅠ

        이고잉님이 알려주신 방법으로 mysql 사이트에 들어가서 설치해주신것과 같이
        homebrew에서 mysql을 설치해주셔야 하는거쥬!


        자세한 내용은 여기에 있습니다!!
        https://whitepaek.tistory.com/3 <-homebrew에 대한 설명 및 설치방법

        https://whitepaek.tistory.com......130 <-homebrew를 이용한 mysql설치방법
        대화보기
        • 고잉고잉
          엑셀과 Mysql과의 중요한 차이점.
          1. 엑셀에는 어떠한 종류의 데이터를 담을 수 있지만, Mysql에는 data types을 강제할 수 있다.
          2. 아이디와 같이 꼭 있어야 하는 값 혹은 없어도 되는 값들을 미리 설정할 수 있다.
          3. Mysql은 데이터의 길이를 제한할 수 있다.
          4. PRIMARY KEY(column name) - 특정 컬럼의 데이터가 중복되는것을 막아, 각각의 행이 고유한 값을 갖게 한다.
          이런 Mysql의 특징들 덕분에 덕분에 우리는 우리가 관리할 데이터베이스가 쉽고 깔끔하게 정리하고 유지할 수 있다.
        • creed
          190615 감사합니다.
        버전 관리
        egoing
        현재 버전
        선택 버전
        graphittie 자세히 보기