mysql 和 oracle 的一些区别
1、seq
?在oracle中獲取下一個ID可以用seq,在mysql中可以設置某列自增
但是在同時添加主從表是設置自增不好在同一個事物中處理。
?
結合網上提供的方法,這里寫了個可以獲得每個表的seq的函數(shù)
CREATE DEFINER=`root`@`%` FUNCTION `nextval`(seq_name VARCHAR(50)) RETURNS bigint(20) BEGINDECLARE value BIGINT;update myseq set seq = last_insert_id(seq+1) where tablename = lower(seq_name); SELECT seq INTO value from myseq WHERE tablename = lower(seq_name); RETURN value;END;
?
?
2、在執(zhí)行insert into 時不能出現(xiàn)表別名
?
3、需要注意數(shù)據(jù)庫中表和視圖大小寫,否則會出錯
?
4、獲得當前時間可用system(),或者now(),
?? 在oracle中的 to_date(''%s'',''yyyy-mm-dd hh24:mi:ss'')需要用 ( str_to_date(’‘%s’‘, '%Y-%c-%d %H:%i:%s'))
? 或者 ( DATE_FORMAT('2010-10-04 22:23:00', '%Y-%c-%d %H:%i:%s'))? 替換
? DATE_FORMAT(date,format)
根據(jù)format 字符串安排date 值的格式。
以下說明符可用在 format 字符串中:
說明符說明
%a工作日的縮寫名稱 (Sun..Sat)
%b月份的縮寫名稱 (Jan..Dec)
%c月份,數(shù)字形式(0..12)
%D帶有英語后綴的該月日期 (0th, 1st, 2nd, 3rd, ...)
%d該月日期, 數(shù)字形式 (00..31)
%e該月日期, 數(shù)字形式(0..31)
%f微秒 (000000..999999)
%H小時(00..23)
%h小時(01..12)
%I小時 (01..12)
%i分鐘,數(shù)字形式 (00..59)
%j一年中的天數(shù) (001..366)
%k小時 (0..23)
%l小時 (1..12)
%M月份名稱 (January..December)
%m月份, 數(shù)字形式 (00..12)
%p上午(AM)或下午( PM)
%r時間 , 12小時制 (小時hh:分鐘mm:秒數(shù)ss 后加 AM或PM)
%S秒 (00..59)
%s秒 (00..59)
%T時間 , 24小時制 (小時hh:分鐘mm:秒數(shù)ss)
%U周 (00..53), 其中周日為每周的第一天
%u周 (00..53), 其中周一為每周的第一天
%V周 (01..53), 其中周日為每周的第一天 ; 和 %X同時使用
%v周 (01..53), 其中周一為每周的第一天 ; 和 %x同時使用
%W工作日名稱 (周日..周六)
%w一周中的每日 (0=周日..6=周六)
%X該周的年份,其中周日為每周的第一天, 數(shù)字形式,4位數(shù);和%V同時使用
%x該周的年份,其中周一為每周的第一天, 數(shù)字形式,4位數(shù);和%v同時使用
%Y年份, 數(shù)字形式,4位數(shù)
%y年份, 數(shù)字形式 (2位數(shù))
%%‘%’文字字符
所有其它字符都被復制到結果中,無需作出解釋。
注意:‘%’字符要求在格式指定符之前。
?
5、在oracle 中用rownum來限制行數(shù),這個rownum必行寫在where 后面
? 但是在mysql中是用limit 而且只能是在sql 語句的最后面。
轉載于:https://www.cnblogs.com/jing_lee/archive/2010/08/04/1792121.html
總結
以上是生活随笔為你收集整理的mysql 和 oracle 的一些区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 1.MVC的工作流程
- 下一篇: CSS中属性的书写顺序