达内数据库五天笔记
- 格式:doc
- 大小:247.50 KB
- 文档页数:45
1、语法的基本规则(记/用)2、面向对象的概念和思想(尽量理解)3、Java官方类库(sun提供的)(记/会用)Java基础第一天(2014年7月11日星期五):1、RDBMS关系型数据库管理系统2、Java SE标准版3、Java EE企业版4、Java ME微缩版5、java基本术语:①JDK Java开发工具包,sun官方提供的Java下载安装包。
分操作系统和版本。
②JRE Java运行环境,下载安装JDK即可得到JRE。
需要配置环境变量。
③JVM Java虚拟机,是Java的核心功能的提供者。
Java程序必须运行在JVM中。
④GC内存垃圾的回收机制,由JVM提供。
⑤IDE集成开发环境,设计大规模的商业开发工具,主流包括:Eclipse/Jbuilder/Netbeans⑥API应用程序接口,在Java中特质sun官方类库的说明文档。
6、path配置Java中可执行文件(命令)在原有path基础上加上:C:\jdk1.7.0_07\bin用;隔开多个目录7、classpath配置Java类库的路径.;即可。
8、jvm只会从classpath查找类文件。
9、public 类名必须与文件名一致。
10、代码中必须有main方法才能运行。
11、在Java中,package语句用于分目录,用javac –d . xx.java编译Java 包名.类名。
12、Sun提供的常用包:ng 核心包Java.awt/javax.swing/java.awt.eventJava.appletJava.ioJava.etJava.util:工具包(算法、数据结构、集合、日期等)Java.sql/javax.sql:数据库操作作业:1、整理笔记2、术语/jvm功能3、掌握今天的代码,熟悉Java代码结构。
能打出来,一遍过。
4、编程题:要求输入长方形长和宽,输出周长和面积。
(整数int即可)第二天(2014年7月14日星期一):1、package xx; //为class文件分目录Import xx.xx //导入包中的类Public class 类名{Public static void main (String [] args ){//Main方法主体}}2、注释(comments) 标识符(identifiers)关键字(Keywords)3、标识符:①支持字母、数字、_、$,但数字不能打头。
2024年达内两周的实习心得前言:作为一名计算机科学专业的学生,我一直对自己的专业知识和技术能力有着很高的追求。
因此,当我有机会参加达内计算机培训机构的实习时,我充满了期待和激情。
在这里,我将分享我在2024年参加达内两周实习的心得体会。
第一天:第一天我来到达内公司,我首先见到了我的导师李老师。
他给了我一个友好的微笑,并简单介绍了实习的具体安排和要求。
之后,我进入了我的实习岗位——软件开发组。
这里有一支充满活力和创造力的团队,他们有着丰富的开发经验和技术知识。
我感到很荣幸能够成为这个团队的一员。
第二天至第五天:在过去的几天里,我主要进行了一些基础的编程练习和任务。
这些任务涉及到了多种编程语言和技术,例如Java、Python、HTML、CSS等。
在完成这些任务的过程中,我加深了对这些语言和技术的理解和应用能力。
同时,我也学会了如何与团队合作,与其他组员一起讨论问题、交流经验,并共同解决难题。
第六天至第九天:在这几天里,我参与了一个真实项目的开发。
这个项目是一个电子商务网站的前端开发工作。
我的任务是设计并实现网站的用户注册和登录模块。
在这个过程中,我学会了使用Vue.js和Element UI这样的前端框架进行开发。
我也熟悉了前后端分离的开发模式,并学会了与后端开发人员进行接口对接。
通过这个项目,我不仅提升了自己的编程能力,还锻炼了我的项目管理和沟通能力。
第十天至第十四天:在实习的最后几天里,我主要参与了一个团队项目的开发工作。
这个项目是一个在线教育平台的后端开发工作。
我的任务是设计并实现平台的用户评论和评分功能。
在这个过程中,我学会了使用Spring Boot框架进行后台开发,并熟悉了数据库设计和管理。
我积极与团队中的其他成员进行合作,解决遇到的问题,并保证项目能够按时完成。
总结:通过这两周的实习,我受益匪浅。
我不仅学到了很多专业知识和技术,还锻炼了自己的团队合作和沟通能力。
在实习的过程中,我也遇到了一些困难和挑战,但通过不断的努力和学习,我成功地克服了它们,并取得了不错的成果。
达内java培训学习笔记达内Java培训学习笔记在这个信息化浪潮不断推动着科技技术的发展的时代,学习一门技能是非常有必要的。
其中,Java是一个广泛应用、高效稳定的开发语言,为各大公司提供了许多解决方案。
而达内Java培训就是一个非常好的学习途径,通过它我们能够更深入的了解Java,学习更高效的Java编程技术。
我的学习笔记主要涵盖了Java的基础知识和一些实际开发案例经验,以下是我对于Java培训课程的总结:1. Java语言基础Java语言基础课程非常重要,它包括了Java的基本数据类型、流程控制语句、面向对象编程等。
例如,Java基本数据类型包括int、boolean、double等,他们的作用在于描述程序中的数据类型和变量类型。
流程控制语句即if-else语句,switch-case语句等,通过这些语句我们可以实现程序的逻辑控制。
面向对象开发则是Java的核心思想,掌握好面向对象编程思想能够帮助我们有效的组织程序的结构。
建议在学习Java基础课程时多做练习,加深对基础知识的理解与掌握。
2. Java Web开发Java Web开发中,最重要的就是Servlet与JSP的开发。
Servlet负责用户请求的接受,JSP负责返回结果的展示,他们是Java Web开发的基础知识。
进一步地,学习Spring、Spring MVC和Mybatis等框架,这些框架能够提高Web开发的效率和代码的可维护性,也是我们开发Java Web应用所必备的技能。
3. Maven的使用Maven是一个Apache开发的项目管理工具,通过它能更方便的管理一个项目的构建,依赖等。
Maven的使用需要在掌握了Java语言基础之后,对于长期从事Java开发的人员,Maven的使用是必不可少的。
学习Maven需要了解一些常用的概念,例如: Maven通常依赖中央仓库、本地仓库和仓库管理。
通过练习一些Demo,可以很好的掌握Maven的基本使用方法。
达内学习心得:JDBC总结:系列笔记之四参赛学员:常彦博获奖奖项:二等奖说明:(又花了几个小时把JDBC笔记转成了word版!笔记内容真实,都是课上及TTS上内容,不是从网上复制粘贴来的!同时也不会去刷点击率!不想评分的按F5刷新页面即可!不用选择分数,一旦选择就不能改了!也可以拿到电子版后再来评分!Q在下)1)此笔记为本人系列笔记之一:Java、Oracle、PL/SQL、JDBC、XML、HTML、CSS、JavaScript、Servlet……2)笔记内容整理了:JDBC(范传奇老师主讲,占笔记内容100%)。
3)此笔记已打印出成品,一共19页!(不包括目录)。
排版格式大部分按照毕业论文做的!有目录、章节、页眉、页脚、缩进、一二三级标题等。
同时排版格式也照顾到了双面打印,所以电子版可直接双面打印,不需要调格式。
因此,本人的系列笔记平均花费20个小时以上(笔记纯手工输入)!每天的总结、排版很辛苦!之前有很多朋友拿到了我分享的笔记,因此还望各位尊重他人劳动成果(你懂得~~)。
4)评选系统由于不能上传word版,所以格式、布局上不太好看,如文中的注意事项有特殊项目符号,这里显示的是字母u和字母v,有的图片也不能显示!内容太长,老是提交失败!只能一点一点发!5)希望大家多多支持,评选结束后,我会找时间统一分享给大家所有的笔记!之前拿到过的朋友,也可以再要,因为修改、更新了很多内容。
———————————————————————————————————————————————————————————————————目录一、JDBC概述11.1 什么是JDBC 11.2什么是驱动11.3 SQL lite 11.4如何使用Java连接某种数据库11.5连接数据库并操作11.6连接数据库时常见的错误1二、JDBC核心API 22.1 Connection 22.2 Statement 22.3 ResultSet 22.4 DriverManager 22.5 UUID32.6案例:使用JDBC连接数据库,并操作SQL语句32.7案例:通过JDBC创建表42.8案例:使用JDBC向表中插入数据42.9遍历Student_chang表5三、JDBC核心API:PreparedStatement 63.1Statement的缺点63.2PreparedStatement的优点63.3案例详见第五章StudentDAO类6四、Connection封装7五、DAO 85.1持久类封装85.2 DAO层85.3 Properties类85.4案例:注册系统8六、批处理126.1批处理的优点126.2 JDBC批处理API 126.3案例:详见8.4案例step7 12七、事务处理137.1事务特性ACID 137.2 JDBC中对事务的支持(API)13八、DAO事务封装148.1ThreadLocal原理148.2原理图148.3ThreadLocal核心API 148.4案例:登录系统(使用ThreadLocal实现连接共享)14九、分页查询179.1分页查询的基本原理179.2为何使用分页查询179.3 Oracle分页查询SQL语句179.4 MySQL分页查询SQL语句179.5“假”分页179.6案例:分页查询18一、JDBC概述1.1 什么是JDBC1)Java的设计者希望使用相同的方式访问不同的数据库。
达内java笔记目录CoreJava DAY01 Java概述 1CoreJava DAY02 数据类型和控制结构 6CoreJava DAY03 数组11CoreJava DAY04 15CoreJava DAY05 面向对象17CoreJava DAY06 类的加载过程、实例化、继承、多态20CoreJava DAY07 修饰符26CoreJava DAY08 常用类29CoreJava DAY09 高级语言特征30CoreJava DAY10 主方法,静态导入,包装类,枚举32CoreJava DAY11 内部类36CoreJava DAY12 集合List 40CoreJava DAY13 集合Set 46CoreJava DAY14 集合Map 49CoreJava DAY15 异常、断言52CoreJava DAY16 反射、注释57CoreJava DAY17 GUI 64CoreJava DAY18 awt event 81CoreJava DAY19-20 多线程 85CoreJava DAY21-22 IO 95CoreJava DAY23 网络编程107CoreJava DAY01 Java概述############################################# ################################## ########## CoreJava DA Y01(2009.02.21) ############ ########## Made by NieXu ############ ###############################################################################一、学习CoreJava的要求1、上课一定要听懂(理解)2、课后一定要练习3、练完后要思考二、Java的优势1、Java中省去了对指标的操作,但并不是没有指标了,只是被封装了而已,代替指标的是种新的变量,叫做引用,这个引用里面也是保存的一个对象的地址,它和指针的差别就是比指针功能要弱化了,也更简单了。
达内实训报告一、实训概述2021年7月,我参加了由达内科技举办的Java开发工程师实训课程。
整个实训课程历时3个月,共12周,每周课时为40小时。
在实训期间,我通过授课、作业、项目实战等多种方式,收获了许多宝贵的经验和技能。
二、实训内容1. Java编程语言:在实训的前几周,我们主要学习了Java基础语法、面向对象编程、集合框架等知识,这些都为后面的项目实战打下了坚实的基础。
2. Spring框架:在学习完Java基础知识后,我们开始了对Spring框架的学习。
Spring框架是当今Java开发中最流行的框架之一,它包含了众多的模块,如Spring MVC、Spring Security、Spring Boot等,完全覆盖了现代企业级应用程序的各个方面。
3. MySQL数据库:我们还学习了MySQL数据库的使用和管理,包括数据库的设计、优化和维护。
MySQL是当今最流行的开源关系型数据库之一,具有强大的性能和可扩展性。
4. 项目实战:在完成了学习和练习后,我们进入了项目实战阶段。
在这个阶段中,我们分成了小组,每个小组都负责一个真实的软件开发项目,包括需求分析、设计、开发、测试、部署等全过程。
我们在项目实战中体会到了团队协作的重要性和自己在其中的角色。
三、实践成果1. 对技术的掌握:实训期间,我成功掌握了Java编程语言的基础知识、Spring框架的核心知识和MySQL数据库的使用技能,这类技术的掌握都是我今后能够从事Java开发工作的基础。
2. 真实项目经验:通过项目实战,我掌握了软件开发的全流程,并且实践了自己的技能,体验了团队协作和沟通的重要性,获得了在真实工作中所需要的经验。
3. 学习积累:除了了解了一些具体技术知识和项目实战经验,我还体验了达内科技先进的教育理念和教学方式,领悟到了学习的重点和方法。
四、总结通过本次实训,我不仅获得了有关Java开发的专业知识、实际工作经验和行业应用技能,还体验了通过合作、沟通、团队协作实现项目的过程。
JDBC第一天 2007年6月4日一、JDBC原理概述1,JDBC是一套协议,是JAVA开发人员和数据库厂商达成的协议,也就是由Sun定义一组接口,由数据库厂商来实现,并规定了JAVA开发人员访问数据库所使用的方法的调用规范。
2,JDBC的实现是由数据库厂商提供,以驱动程序形式提供。
3,JDBC在使用前要先加载驱动。
JDBC对于使用者要有一致性,对不同的数据库其使用方法都是相同的。
4、driver开发必须要实现Driver接口。
JDBC驱动程序的类型 目前比较常见的JDBC驱动程序可分为以下四个种类: (1)JDBC-ODBC桥加ODBC驱动程序 JavaSoft桥产品利用ODBC驱动程序提供JDBC访问。
注意,必须将ODBC二进制代码(许多情况下还包括数据库客户机代码)加载到使用该驱动程序的每个客户机上。
因此,这种类型的驱动程序最适合于企业网(这种网络上客户机的安装不是主要问题),或者是用Java编写的三层结构的应用程序服务器代码。
(2)本地API 这种类型的驱动程序把客户机API上的JDBC调用转换为Oracle、Sybase、Informix、DB2或其它DBMS的调用。
注意,象桥驱动程序一样,这种类型的驱动程序要求将某些二进制代码加载到每台客户机上。
(3)JDBC网络纯Java驱动程序 这种驱动程序将JDBC转换为与DBMS无关的网络协议,之后这种协议又被某个服务器转换为一种DBMS协议。
这种网络服务器中间件能够将它的纯Java客户机连接到多种不同的数据库上。
所用的具体协议取决于提供者。
通常,这是最为灵活的JDBC驱动程序。
有可能所有这种解决方案的提供者都提供适合于Intranet用的产品。
为了使这些产品也支持Internet访问,它们必须处理Web所提出的安全性、通过防火墙的访问等方面的额外要求。
几家提供者正将JDBC驱动程序加到他们现有的数据库中间件产品中。
(4)本地协议纯Java驱动程序 这种类型的驱动程序将JDBC调用直接转换为DBMS所使用的网络协议。
线程(第十八天)一、进程概念1.在java里面每个JVM相当于一个进程,所以在java里面只存在多线程,无多进程2.进程下面是线程二、线程的概念3.Java使用多线程解决并行问题,main()方法是java中的主线程,可以有其他的附加线程。
4.进程就是应用程序的行实例,每个进程都有自己私有的虚拟地址空间,每个进程都有一个主线程,但可以建立另外的线程,进程中的线程是并行执行的,每个线程占用CPU的时间由系统来划分。
5.线程的特点:1)多线程之间栈内存是独立的,堆内存共享,而进程之间内存是独立的2)线程之间互不依赖,但可能互相影响3)多线程之间乱序执行,但每个线程内部代码顺序执行三、使用的线程方式二:1、实现Runnable接口;重写run()2、借助Thread启动线程四、线程的调用:start()是启动新线程,而调用run()方法就相当于其他方法的调用,而不是以线程方式调用;线程中的过时方法禁止使用;四、线程中常用方法:1、currentThread()返回对当前正在执行的线程对象的引用,//主要是在通过实现Runnable时使用,而使用Thread时,直接使用this 例:……System.out.println(Thread.currentThread().getName()+"run"+i);……结果:Thread-0run0Thread-1run02、getPriority()返回线程的优先级。
最小为1,最大为10,默认为53、setDaemon(boolean on)将该线程标记为守护线程或用户线程,守护线程的生命周,期依赖于其他非守护线程;主线程结束,守护线程在执行一个时间片以后会自动停止;GC()机制4、join()等待该线程终止。
在a线程中,调用B线程.join,A停止,B继续运行,直到join停止或B运行结束;5、sleep(long millis)在指定的毫秒数内让当前正在执行的线程休眠(暂停执行);导致当前线程休眠(无法执行)6、yield()暂停当前正在执行的线程对象,并执行其他线程;当前线程让位,让位后,所有优先级不低于当前线程的都可能执行;五、导致如下状况的原因1、运行——>就绪A.运行的线程在时间片用完后回到就绪状态B.让位方法yield()可以使运行进程回到就绪状态2、运行——>消亡A.run()方法结束,B.未捕获的异常终端该线程(一个异常中断一个线程)3、运行——>阻塞A.调用sleep()方法,B.调用join()方法,C.等待用户输入4、阻塞——>就绪A.sleep()时间到了,B.join()时间到了或着join线程结束,C.用户提交输入补充:throws 只针对检测异常,如果不写编译不通过ava线程的三要术:CPU(Thread)、Data、Code(Runnable)。
本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除!== 本文为word格式,下载后可方便编辑和修改! ==达内学习日志day10篇一:达内笔记jsd基础day011.碰到问题如何解决:1)找同桌、同学2)找项目经理3)找讲师2.学习java的窍门:1)多想2)多练3.小要求:1)课堂气氛活跃一些笔记:1.Linux:1)基础知识:1.1)开源的操作系统,免费1.2)主要是服务器操作的系统,而java是服务器端开发2)Linux与Windows目录结构的差别:2.1)文件系统不同:Linux:目录 Windows:盘符2.2)外部设备映射不同:Linux:挂载点 Windows:盘符2.3)安全级别不同:Linux:高 Windows:低3)常用命令:3.1)pwd:显示当前工作目录3.2)ls:查看当前工作目录的内容3.3)cd:改变当前工作目录绝对路径:相对于根目录的位置,以/开头相对路径:相对于当前目录的位置.:当前目录..:上一级目录2.java开发环境:1)java编译运行过程:1.1).java源文件,经过编译,生成.class字节码文件JVM加载.class并运行.class1.2)跨平台,一次编程到处使用2)JVM:java虚拟机加载.class并运行.classJRE:java运行环境除了包含JVM以外还包含了运行java程序所必须的环境JRE=JVM+java系统类库JDK:java开发工具包除了包含JRE以外还包含了开发java程序所必须的命令工具 JDK=JRE+编译、运行等工具运行的最小环境为JRE开发的最小环境为JDK3)配置环境变量:-------暂时了解JAVA_HOME:指向jdk的安装路径CLASSPATH:表示类的搜索路径,一般简写为. PATH:指向jdk下的bin目录3.eclipse课后作业:第7题不用写写java程序分三步:1)新建一个java工程----------小区2)新建一个java包------------楼号+ 单元号3)新建一个java类------------房号public class HelloWorld{public static void main(String[] args){ System.out.println("你好");}}IBM公司用java语言写了一个eclipse让人们用eclipse来写java代码先装jdk,再运行eclipseLinux如何运行一个程序--------写出这个程序的完整路径/opt/eclipse/eclipse/home/soft01/workspaceJDK=JVM+java系统类库+编译、运行等工具PATH:/a/b;/c/d;/e/fjavac编译java运行java编译运行过程:1)编译期:java源文件,经过编译,生成.class字节码文件2)运行期:JVM加载.class并运行.classQQ:java语言写的java版QQ,经过编译,生成.class字节码文件 Windows装JVM--------Windows系统Linux装JVM----------Linux系统IOS装JVM------------IOS系统跨平台,一次编译到处使用C语言编译运行过程:.c源文件,经过编译,直接生成可执行程序(0,1)不同系统的01是不一样的Windows:你:10101010Linux:你:01010101IOS:你:11110000QQ:c语言写的Windows版QQ-------运行在Windows系统上 Linux版QQ---------运行在Linux系统上 IOS版QQ-----------运行在IOS系统上当日事当日毕。
·达内Oracle的五天笔记1.1. SQLPLUS的命令初始化表的位置:set NLS_LANG=american_7ascii (设置编码才可以使用下面脚本) cd $ORACLE_HOME/rdbms cd demo summit2.sql*********************************我们目前使用的是oralce 9i 9201 版本select * from v$version;恢复练习表命令:sqlplus **/** @summit2.sql //shell要在这个文件的位置。
登陆oracle的命令:sqlplus 用户名/密码show user 显示当前登陆的身份.set pause onset pause off 分页显示.oracle中默认日期和字符是左对齐,数字是右对齐table or view does not exist ; 表或示图不存在edit 命令用于自动打开vi修改刚修执行过的sql的命令。
修改方法二:l 3 先定位到行 c /旧串/新串执行出错时,利用错误号来查错误:!oerr ora 942 (装完系统后会装一个oerr工具,用于通过错误号来查看错误的具体信息)想在sql中执行unix命令时,把所有的命令前加一个!就可以,或者host( 用于sql从切换至unix环境中去)/*** 初次使用时注意 ****运行角本时的命令:先切换到unix环境下,cd $oracle_home cd sqlplus cd demo 下面有两个角本建表语句。
@demobld.sqlsqlplus nanjing/nanjing @demobid.sql 直接运行角本,后面跟当前目录或者是绝对路径保存刚才的sql语句: save 命令第二次保存时要替换之前的角本 save文件名 replace把刚才保的sql重新放入 buffer 中spool on 开启记录spool off 关闭记录spool 文件名此命令会把所有的操作存在某个文件中去常见缩写:nls national language support 国家语言支持1.2. SQL的结构|DDL 数据库定义|DML 数据库管理SQL――Commit rollback|DCL 数据库控制|grant+revoke 权限管理表分为:系统表(数据字典),用户表注:知道数据字典可以更便于使用数据库。
1.3. SQL语句1.3.1. 纵向投影操作 selectselect * from student;select name||?‘||id||? EMPLOYEE from employee;select name,salary*13 from employee;NVL function如果原来的数值是null的话,由指定数值替代。
select last_name,title,salary*NVL(commission_pct,0)/100 COMM from s_emp;1.3.2. column使用column(col) columnName clear/format/heading/justify formatcolumn salary format $9999999.00 设置数字显示形式column name fromat a15; 设置字符串显示15个字符column salary justify left/right/center 输出格式column salary heading text 设置显示的字段名column clear 清除格式column last_name;显示该字段名所用的格式column salary justify left format $99,999.00 ( 定义工资的显示形式 )1.3.3. order byORDER BY 排序升序和降序 ASC 升序(默认) DESC 降序select * from s_emp order by dept_id , salary desc部门号升序,工资降序关键字distinct也会触发排序操作。
select * from employee order by 1; //按第一字段排序NULL被认为无穷大。
order by 可以跟别名。
1.3.4. where 选择操作(横向投影)where 条件一定是根据某个字段来进行过滤操作.select * from s_emp where dept_id=42; 查看部门号为42的所有员工select * from s_emp where salary>1000 查看工资高于1000的所有员工select salary from s_emp where first_name='Geroge' 找出名字为Geroge的员工的工资数select table_name from user_tables where table_name='S_EMP'; 查某个具体表名时,表名的字符串必须要为大写或者采用 upper(table_name)select * from user_talbes where table_name like ‘s\_%’ escape ‘\?使用转义字符对关键字进行转义。
逻辑运算:BETWEEN AND 在什么之间NOT BETWEEN AND 注意区间:[ ]是一个闭区间IN( LIST) 在某个集合中NOT IN (list) 空值会有影响 (等于list其中任何一个就行,为提高效率常把比例高的放在前面)LIKE 模糊配置NOT LIKE 通配比较IS NULL 是空ANDORNOT练习3:(查出s_emp表中所有员工的一年的总收入)select first_name , salary*12*( 1+nvl(commission_pct/100 , 0 ) ) " year salary " from s_emp; nvl函数专用于处理空值的影响.练习4:(找出表名以S_开头的所有表)对于一些特殊字符,要用到escape转义,并不是一定要用\,escape后面定义是什么字符为转义字符,那就用哪个字符select table_name from user_tables where table_name like 'S\_%' escape '\';1.3.5. 单行函数单行函数: (dual 哑表 )字符函数:lower 转小写 select lower('SQLPLUS') from dual;-->对纯字符串处理的时候upper 转大写 select upper('sqlplus') from dual;initcap 首字符大写 select initcap('tarena') from dual;concat 连接字符串 select concat(first_name , last_name) froms_emp;等效于||substr 求子串 select substr('tarenasd0603' ,1,6) from dual; (取前六个字符) select substr('tarenasd0603',-2) from dual; (取后两个字符)length 求字符长度select length('tarena') from dual;nvl 空值函数两个参数的类型要匹配,统一的,表示:如果有,则返回前面的参数,如果没有就返回后面的参数eg:select first_name,salary from s_emp where lower(first_name)='george';select first_name , substr(first_name , -2 ) from s_emp; (查出s_emp表中所有用户名字的最后两个字符)默认的是从左向右,如果是-2则表示从右向左数练习5: select first_name , salary from s_emp wherelower(first_name)='george';数值函数:round 函数(四舍五入) select round(45.935, 2) from dual; 不带参数时默认0位小数trunc 函数(截取,不管后面的数字) select trunc(45.995, 1) from dual;日期函数:oracle数据库中存放时间格式的数据,是以oracle特定的格式存贮的,占7个字节,与查询时显示的时间格式无关,具体哪个字节表示什么,我不太清楚,请高手补充。
存贮的时间包括年月日时分秒,最小精度为秒,不存贮秒以下的时间单位。
因此在一些前台支持毫秒级的程序(如PB客户端程序)连接到oracle 数据库时应注意这点。
查询时显示的时间格式,由会话环境决定,或者由用户定义,与数据库无关。
select sysdate from dual; 从伪表查系统时间,以默认格式输出。
sysdate+(5/24/60/60) 在系统时间基础上延迟5秒sysdate+5/24/60 在系统时间基础上延迟5分钟sysdate+5/24 在系统时间基础上延迟5小时sysdate+5 在系统时间基础上延迟5天所以日期计算默认单位是天内置函数:months_between(sysdate,addmonth(sysdate,5)) //两个月有多少天。
add_months(sysdate,-5) 在系统时间基础上延迟5月add_months(sysdate,-5*12) 在系统时间基础上延迟5年last_day(sysdate) 一个月最后一天next_day(sysdate,’riday? 下个星期星期几。
round (sysdate,’day? 不是四除五入了,是过了中午留下,不过的略掉trunc(sysdate,’onth? 不到一月都省略例子:上月末的日期:select last_day(add_months(sysdate, -1)) from dual;本月的最后一秒:select trunc(add_months(sysdate,1),'month') - 1/24/60/60 from dual本周星期一的日期:select trunc(sysdate,'day')+1 from dual年初至今的天数:select ceil(sysdate - trunc(sysdate, 'year')) from dual;格式转换函数:to_char显示日期:从数字转化为char to_char(date,'格式')从日期转化为char to_char(date, 'fmt' )yyyy 2007 年份year two thousand seven 年份mm 03 (格式缩写显示也缩写)month march 月份dy fri 星期几缩写day Friday 星期几dd 16 一个月第几天mi 30 分钟ss 35 秒钟hh 18 小时rr 07 年最近时间yy 07 年当前世纪年份select to_char(sysdate, 'yyyy mm dd hh24:mi:ss') from dual; select to_char(sysdate, 'fmyyyy mm dd hh24:mi:ss') from dual;查出三月分入职的员工:select first_name,start_date from s_emp where to_char(start_date,'mm')='03';to_date表达日期:字符转日期select to_date('2000 11 20', 'yyyy mm dd ') from dual;select round(to_date('10-OCT-06' ,'dd-mon-RR') ) from dual;to_number字符转数字select to_number('10') from dual ;函数、表达式、隐式数据类型转换会导致索引用不上,where条件后面只能放单行函数,它起了一个过滤的的作用。