MySQL數(shù)據(jù)類型(2)

mysql的數(shù)據(jù)類型:

  • 字符型
  • 數(shù)值型
  • 日期時間型
  • 內建類型
字符型:
  • CHAR(不區(qū)分字符大小寫),BINARY(區(qū)分字符大小寫): 定長數(shù)據(jù)類型
  • VARCHAR(不區(qū)分字符大小寫),VARBINARY(區(qū)分字符大小寫): 變長數(shù)據(jù)類型,需要結束符。
  • TEXT: TINYTEXT(255個字符,2**8),TEXT(65535個字符,2**16),MEDIUMTEXT(1600多萬個字符,2**24),LOGTEXT(40多億個字符,2**32)
  • BLOB: TINYBLOB,BLOB,MEDIUMBLOB,LONGBLOB(支持的字符數(shù)個數(shù)同上)
  • ENUM,SET:
數(shù)值型:

精確數(shù)值型:

  • 整型數(shù)據(jù):TINYINT(2**8),SMALLINT(2**16),MEDIUMINT,INT,BIGINT
  • 十進制型:DECIMAL
    近似數(shù)值型:
  • 浮點型:FLOAT,DOUBLE
日期時間型:
  • DATE(占用3個字節(jié))
  • TIME(占用3個字節(jié))
  • DATETIME(占用8個字節(jié),需要額外說明哪部分是日期和時間)
  • TIMESTAMP 時間戳
  • YEAR(2),YEAR(4)
字符型類型修飾符:
  • NOT NULL: 非空約束
  • NULL: 不寫則為NULL
  • DEFAULT 'STRING': 指明默認值
  • CHARACTER SET ' ': 使用的字符集(一般在my.cnf配置文件里指明)
  • COLLATION: 使用的排序規(guī)則
    mysql> SHOW CHARACTER SET;
    mysql>SHOW COLLATION;
整型修飾符:
  • NOT NULL
  • NULL
  • DEFAULT NUMBER
  • AUTO_INCREMENT: UNSIGNED(無符號,緊跟在數(shù)據(jù)類型之后),PRIMARY KEY|UNIQUE KEY NOT NULL
    mysql > select last_insert_id();(查看字段自增到哪里)
日期時間型修飾符:
  • NOT NULL
  • NULL
  • DEFAULT
內建類型SET和ENUM的修飾符:
  • NOT NULL
  • NULL
  • DEFAULT

mysql的SQL MODE: 定義mysql對約束等的響應行為
mysql> set global sql_mode='mode';

mysql> set @@global.sql_mode='mode';
需要修改權限,僅對修改后新創(chuàng)建的會話有效,對已經(jīng)建立的會話無效

mysql> set session sql_mode='mode';

mysql> set @@session.sql_mode='mode';

常用的mode: TRADITIONAL,STRICT_TRANS_TABLES,or STRICT_ALL_TABLES

SQL語句:

  • DDL: 數(shù)據(jù)定義語言,creat,alter,drop

  • DDL可使用的DB組件: 數(shù)據(jù)庫,表,索引,試圖,用戶,存儲過程,觸發(fā)器,事件調度器等。

  • DML: 數(shù)據(jù)操縱語言,insert,delete,update,select

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容