日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

oracle与mysql创建表时的区别

發(fā)布時間:2023/11/27 生活经验 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle与mysql创建表时的区别 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

oracle創(chuàng)建表時,不支持在建表時同時增加字段注釋。故采用以下方式:

#創(chuàng)建表
CREATE TABLE predict_data as  (id             integer       NOT NULL,    uid            varchar2(80),mid            varchar2(80),time           date        ,content        varchar2(300),constraint predict_data primary key (id)
);
#字段注釋
comment on table predict_data is '預測表';
comment on column predict_data.id is '主鍵';
comment on column predict_data.uid is '用戶名';
comment on column predict_data.mid is '博文id';
comment on column predict_data.time is '發(fā)文時間';
comment on column predict_data.content is '發(fā)文內(nèi)容';

mysql創(chuàng)建表時,支持在建表時同時增加字段注釋。故采用以下方式:

CREATE TABLE predict_data (id               int                NOT NULL     COMMENT '主鍵', uid               varchar(80)      NOT NULL     COMMENT '用戶標記',mid               varchar(80)      DEFAULT NULL COMMENT    '博文標記'    ,time              datetime          DEFAULT NULL COMMENT    '發(fā)博時間'    ,content        varchar(300)   DEFAULT NULL COMMENT    '博文內(nèi)容'    ,CONSTRAINTpredict_data PRIMARY KEY (id),
) ENGINE=InnoDB DEFAULT CHARSET=gbk COLLATE=gbk_bin;

注意:mysql在建立表的時候,不能使用as,即不能使用create table tablename as,否則報錯“1064 - You have an error in your SQL syntax;”

?

number(12,2)在MySQL中如何表示 ?

DECIMAL(12,2)
FLOAT(12,2)
DOUBLE(12,2)

?

MySQL的五種日期和時間類型

?

?

MySQl中有多種表示日期和時間的數(shù)據(jù)類型。其中YEAR表示年份,DATE表示日期,TIME表示時間,DATETIME和TIMESTAMP表示日期和實踐。它們的對比如下:
YEAR ,字節(jié)數(shù)為1,取值范圍為“1901——2155”
DATE,字節(jié)數(shù)為4,取值范圍為“1000-01-01——9999-12-31”
TIME,字節(jié)數(shù)為3,取值范圍為“-838:59:59——838:59:59”
DATETIME,字節(jié)數(shù)為8,取值范圍為“1000-01-01 00:00:00——9999-12-31 23:59:59”
TIMESTAMP,字節(jié)數(shù)為4,取值范圍為“19700101080001——20380119111407”
? 當插入值超出有效取值范圍時,系統(tǒng)會報錯,并將零值插入到數(shù)據(jù)庫中。
  1. YEAR類型
    給YEAR類型復制可以有三種方法。
    第一種是直接插入4位字符串或者4位數(shù)字。
    第二種是插入2位字符串,這種情況下如果插入‘00’~‘69’,則相當于插入2000~2069;如果插入‘70’~‘99’,則相當于插入1970~1999。第二種情況下插入的如果是‘0’,則與插入‘00’效果相同,都是表示2000年。
    第三種是插入2位數(shù)字,它與第二種(插入兩位字符串)不同之處僅在于:如果插入的是一位數(shù)字0,則表示的是0000,而不是2000年。所以在給YEAR類型賦值時,一定要分清0和‘0’,雖然兩者相差個引號,但實際效果確實相差了2000年。
  2. TIME類型
    TIME類型表示為“時:分:秒”,盡管小時范圍一般是0~23,但是為了表示某些特殊時間間隔,MySQL將TIME的小時范圍擴發(fā)了,而且支持負值。
    對TIME類型賦值,標準格式是‘HH:MM:SS’,但不一定非要是這種格式。
    如果插入的是‘D HH:MM:SS’格式,則類似插入了‘(D*24+HH):MM:SS’。比如插入‘2 23:50:50’,相當于插入了‘71:50:50’。
    如果插入的是‘HH:MM’或‘SS’格式,則效果是其他未被表示位的值賦為零值。比如插入‘30’,相當于插入了‘00:00:30’;如果插入‘11:25’,相當于插入了‘11:25:00’。
    另外也可以插入‘D HH’和‘D HH:MM’,效果按上面的例子可以推理出來了吧。
    在MySQl中,對于'HHMMSS'格式,系統(tǒng)能夠自動轉(zhuǎn)化為標準格式。
    如果我們想插入當前系統(tǒng)的時間,則可以插入CURRENT_TIME或者NOW()。TIME類型只占3個字節(jié),如果只是存儲時間數(shù)據(jù),它最合適了。
  3. DATE類型
    MySQL是以YYYY-MM-DD格式來顯示DATE類型的值,插入數(shù)據(jù)時,數(shù)據(jù)可以保持這種格式。另外,MySQL還支持一些不嚴格的語法格式,分隔符“-”可以用“@”、“.”等眾多富豪來替代。
    在插入數(shù)據(jù)時,也可以使用“YY-MM-DD”格式,YY轉(zhuǎn)化成對應(yīng)的年份的規(guī)則與YEAR類型類似。
    如果我們想插入當前系統(tǒng)的時間,則可以插入CURRENT_DATE或者NOW()。
  4. DATETIME類型
    標準格式為“YYYY-MM-DD HH:MM:SS”,具體賦值方法與上面各種類型的方法相似。
  5. TIMESTAMP類型
    TIMESTAMP的取值范圍比較小,沒有DATETIME的取值范圍大,因此輸入值時一定要保證在TIMESTAMP的范圍之內(nèi)。它的插入也與插入其他日期和時間數(shù)據(jù)類型類似。
    那么TIMESTAMP類型如何插入當前時間?第一,可以使用CURRENT_TIMESTAMP;第二,輸入NULL,系統(tǒng)自動輸入當前的TIMESTAMP;第三,無任何輸入,系統(tǒng)自動輸入當前的TIMESTAMP。
    另外有很特殊的一點:TIMESTAMP的數(shù)值是與時區(qū)相關(guān)。
    1. alter ?table emp change com comm float(7,2); ? 修改表列名

轉(zhuǎn)載于:https://www.cnblogs.com/mike-mei/p/9686687.html

總結(jié)

以上是生活随笔為你收集整理的oracle与mysql创建表时的区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。