JDBC连接数据库的步骤都有哪些?
展开全部 1、利用DriverManager连接数据库1.1最简单粗暴的方法:public static Connection getConnection() throws ClassNotFoundException{ String url="jdbc:mysql:///jdbc";//我连的数据库是MySQL中的jdbc数据库 String username="root"; String password="";//我的MySQL数据库的密码是空字符串 String driverClass="com.mysql.jdbc.Driver"; Connection ct=null; Class.forName(driverClass); try { ct=DriverManager.getConnection(url, username, password); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return ct; } 1.2利用io流读取文件的方式;public static Connection getConnection() throws ClassNotFoundException, IOException { String driver = null; String jdbcurl = null; String user = null; String password = null; // 读取类路径下的jdbc.propreties文件(配置文件) InputStream in = JDBCtool.class.getClassLoader().getResourceAsStream("jdbc.properties"); // 以上为输入流 Properties pt = new Properties();// 创建properties pt.load(in);// 取键值对(加载对应的输入流) driver = pt.getProperty("driver"); jdbcurl = pt.getProperty("jdbcurl"); user = pt.getProperty("user"); password = pt.getProperty("password"); Connection ct = null; Class.forName(driver); try { ct = DriverManager.getConnection(jdbcurl, user, password); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return ct; } 将diver、jdbcurl、user、password这些信息存储到类路径下的jdbc.propreties文件中(以下是该文件中的内容)2、利用c3p0连接池连接数据库准备工作:1、导入c3p0的jar包,切记一定要把其相依赖的jar包——mchange-commons-java-0.2.3.4.jar也导进来哦;2、编写c3p0-config.xml文件 root com.mysql.jdbc.Driver jdbc:mysql:///jdbc 5 5 5 10 20 5 获取数据库连接的代码如下:private static DataSource ds=null; //数据库连接池应只被初始化一次 static{ ds=new ComboPooledDataSource("helloc3p0"); } //获取数据库连接 public static Connection getConnection() throws ClassNotFoundException, SQLException, IOException{ return ds.getConnection(); } 3、利用DBCP连接池连接数据库——本人基本不用这个方法,故不详细阐述了总结:强烈推荐使用第二种方式c3p0连接池的方式!!!
asp连接sql数据库有几种方法啊???
用ASP连接各种数据库的方法一、ASP的对象存取数据库方法 在ASP中,用来存取数据库的对象统称ADO(Active Data Objects),主要含有三种对象:Connection、Recordset 、Command Connection:负责打开或连接数据 Recordset:负责存取数据表 Command:负责对数据库执行行动查询命令 二、连接各数据库的驱动程序 连接各数据库可以使用驱动程序,也可以使用数据源,不过我建议大家使用驱动程序,因为使用驱动程序非常方便、简单,而使用数据源比较麻烦。
ODBC链接 适合数据库类型 链接方式 access "Driver={microsoft access driver(*.mdb)};dbq=*.mdb;uid=admin;pwd=pass;" dBase "Driver={microsoft dbase driver(*.dbf)};driverid=277;dbq=------------;" Oracle "Driver={microsoft odbc for oracle};server=oraclesever.world;uid=admin;pwd=pass;" MSSQL server "Driver={sql server};server=servername;database=dbname;uid=sa;pwd=pass;" MS text "Driver={microsoft text driver(*.txt; *.csv)};dbq=-----;extensions=asc,csv,tab,txt;Persist SecurityInfo=false;" Visual Foxpro "Driver={microsoft Visual Foxpro driver};sourcetype=DBC;sourceDB=*.dbc;Exclusive=No;" MySQL "Driver={mysql};database=yourdatabase;uid=username;pwd=yourpassword;option=16386;" OLEDB链接 适合的数据库类型 链接方式 access "Provider=microsoft.jet.oledb.4.0;data source=your_database_path;user id=admin;password=pass;" Oracle "Provider=OraOLEDB.Oracle;data source=dbname;user id=admin;password=pass;" MS SQL Server "Provider=SQLOLEDB;data source=machinename;initial catalog=dbname;userid=sa;password=pass;" MS text "Provider=microsof.jet.oledb.4.0;data source=your_path;Extended Properties′text;FMT=Delimited′" 而我们在一般情况下使用Access的数据库比较多,在这里我建议大家连接Access数据库使用下面的方法:dim conn set conn = server.createobject("adodb.connection") conn.open = "provider=microsoft.jet.oledb.4.0;" & "data source = " & server.mappath("../db/bbs.mdb") 其中../db/bbs.mdb是你的数据库存放的相对路径!如果你的数据库和ASP文件在同一目录下,你只要这样写就可以了:dim conn set conn = server.createobject("adodb.connection") conn.open = "provider=microsoft.jet.oledb.4.0;" & "data source = " & server.mappath("bbs.mdb") 有许多初学者在遇到数据库连接时总是会出问题,然而使用上面的驱动程序只要你的数据库路径选对了就不会出问题了。
Shell脚本如何链接数据库并导出数据
展开全部 介绍 在日常维护工作当中经常会需要对数据进行导出操作,而mysqldump是导出数据过程中使用非常频繁的一个工具;它自带的功能参数非常多,文章中会列举出一些常用的操作,在文章末尾会将所有的参数详细说明列出来。
语法:默认不带参数的导出,导出文本内容大概如下:创建数据库判断语句-删除表-创建表-锁表-禁用索引-插入数据-启用索引-解锁表。
Usage: mysqldump [OPTIONS] database [tables]OR mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]OR mysqldump [OPTIONS] --all-databases [OPTIONS]插入测试数据复制代码CREATE DATABASE db1 DEFAULT CHARSET utf8;USE db1;CREATE TABLE a1(id int);insert into a1() values(1),(2);CREATE TABLE a2(id int);insert into a2() values(2);CREATE TABLE a3(id int);insert into a3() values(3);CREATE DATABASE db2 DEFAULT CHARSET utf8;USE db2;CREATE TABLE b1(id int);insert into b1() values(1);CREATE TABLE b2(id int);insert into b2() values(2);复制代码1.导出所有数据库该命令会导出包括系统数据库在内的所有数据库mysqldump -uroot -proot --all-databases >/tmp/all.sql2.导出db1、db2两个数据库的所有数据mysqldump -uroot -proot --databases db1 db2 >/tmp/user.sql3.导出db1中的a1、a2表注意导出指定表只能针对一个数据库进行导出,且导出的内容中和导出数据库也不一样,导出指定表的导出文本中没有创建数据库的判断语句,只有删除表-创建表-导入数据mysqldump -uroot -proot --databases db1 --tables a1 a2 >/tmp/db1.sql4.条件导出,导出db1表a1中id=1的数据如果多个表的条件相同可以一次性导出多个表字段是整形mysqldump -uroot -proot --databases db1 --tables a1 --where='id=1' >/tmp/a1.sql字段是字符串,并且导出的sql中不包含drop table,create tablemysqldump -uroot -proot --no-create-info --databases db1 --tables a1 --where="id='a'" >/tmp/a1.sql5.生成新的binlog文件,-F有时候会希望导出数据之后生成一个新的binlog文件,只需要加上-F参数即可mysqldump -uroot -proot --databases db1 -F >/tmp/db1.sql6.只导出表结构不导出数据,--no-datamysqldump -uroot -proot --no-data --databases db1 >/tmp/db1.sql7.跨服务器导出导入数据mysqldump --host=h1 -uroot -proot --databases db1 |mysql --host=h2 -uroot -proot db2将h1服务器中的db1数据库的所有数据导入到h2中的db2数据库中,db2的数据库必须存在否则会报错mysqldump --host=192.168.80.137 -uroot -proot -C --databases test |mysql --host=192.168.80.133 -uroot -proot test 加上-C参数可以启用压缩传递。
8.将主库的binlog位置和文件名追加到导出数据的文件中,--dump-slave注意:--dump-slave命令如果当前服务器是从服务器那么使用该命令会执行stop slave来获取master binlog的文件和位置,等备份完后会自动执行start slave启动从服务器。
但是如果是大的数据量备份会给从和主的延时变的更大,使用--dump-slave获取到的只是当前的从服务器的数据执行到的主的binglog的位置是(relay_mater_log_file,exec_master_log_pos),而不是主服务器当前的binlog执行的位置,主要是取决于主从的数据延时。
该参数在在从服务器上执行,相当于执行show slave status。
当设置为1时,将会以CHANGE MASTER命令输出到数据文件;设置为2时,会在change前加上注释。
该选项将会打开--lock-all-tables,除非--single-transaction被指定。
在执行完后会自动关闭--lock-tables选项。
--dump-slave默认是1mysqldump -uroot -proot --dump-slave=1 --databases db1 >/tmp/db1.sqlmysqldump -uroot -proot --dump-slave=2 --database db1 >/tmp/db1.sql9.将当前服务器的binlog的位置和文件名追加到输出文件,--master-data该参数和--dump-slave方法一样,只是它是记录的是当前服务器的binlog,相当于执行show master status,状态(file,position)的值。
注意:--master-data不会停止当前服务器的主从服务10.--opt等同于--add-drop-table, --add-locks, --create-options, --quick, --extended-insert, --lock-tables, --set-charset, --disable-keys 该选项默认开启, 可以用--skip-opt禁用.mysqldump -uroot -p --host=localhost --all-databases --opt11.保证导出的一致性状态--single-transaction该选项在导出数据之前提交一个BEGIN SQL语句,BEGIN 不会阻塞任何应用程序且能保证导出时数据库的一致性状态。
它只适用于多版本存储引擎(它不显示加锁通过判断版本来对比数据),仅InnoDB。
本选项和--lock-tables 选项是互斥的,因为LOCK TABLES 会使任何挂起的事务隐含提交。
要想导出大表的话,应结合使用--quick 选项。
--quick, -q不缓冲查询,直接导出到标准输出。
默认为打开状态,使用--skip-quick取消该选项。
12.--lock-tables, -l开始导出前,锁定所有表。
用READ LOCAL锁定表以允许MyISAM表并行插入。
对于支持事务的表例如InnoDB和BDB,--single-transaction是一个更好的选择,因为它根本不需要锁定表。
请注意当导出多个数据库时,--lock-tables分别为每个数据库...
数据库中所谓的定义模式和定义数据库有什么区别?数据库里所谓的关...
1。
试述数据,数据库,数据库系统,数据库管理系统的概念。
A: (L)数据(Data):描述事物的符号记录称为数据。
中的数据类型是数字,文本,图形,图像,声音,文字等。
数据和它的语义是分不开的。
在现代计算机系统的解析数据的概念是广泛的。
早期的计算机系统主要用于科学计算,数据处理整数,实数,浮点数,和其他传统的数学数据。
现代计算机可以存储和处理的对象是非常广泛的,表明这些对象的数据也更复杂。
数据和它的语义是分不开的。
500可以代表一个项目的价格是500元,也可以是一个学术会议参加者和500,也可以说,重量为500克一袋奶粉。
(2)数据库(DataBase,DB):数据库是长期存储在计算机中组织,共享的数据集合。
根据一定的数据模型组织,描述信息,并存储在数据库中的数据,与一个较小的程度的冗余,较高的数据独立性的可扩展性和易用性,并且可以对各种用户共享。
(3)数据库系统(DataBas. SYTEM,简称为DBS):数据库系统是计算机系统中引入数据库系统的结构后,一般由数据库,数据库管理系统(开发工具) ,应用系统,构成了一个数据库管理员。
分析数据库系统和数据库是两个概念。
该数据库系统是一个包括机械系统,该数据库是数据库系统的一个组成部分。
但在每天的日常工作??中经常被提及的数据库系统作为数据库。
希望读者可以区分的背景下,人的讲话或文章从数据库系统和数据库,不会引起混乱。
(4)数据库管理系统(数据库管理系统正?DBMS)数据库管理系统是位于用户和操作系统层的科学数据组织和存储,高效地获取和维护数据管理软件数据。
数据的DBMS的主要功能定义功能,数据处理功能,操作的数据库管理功能,数据库的建立和维护功能。
分析数据库管理系统是一个庞大,复杂的软件系统,在计算机的基本软件。
许多DBMS产品专门开发的DBMS厂商开发。
在著名的IBM是在DBZ关系数据库管理系统和IMS层次数据库管理系统,Oracle公司orade关系数据库管理系统的小号油ASE公司小号油酶的关系数据库管理系统的美国的国家微软SQL即成,关系数据库管理系统。
2。
使用数据库系统的好处是什么? A: 数据库系统的好处是由数据库管理系统或优势的特点。
使用数据库系统的诸多好处,例如,可以大大提高工作效率的应用程序开发,使用用户友好的数据库系统管理维护负担,等。
数据库系统可以大大提高工作效率的应用程序开发。
由于应用程序没有考虑定义的数据存储和数据访问路径,这些努力的DBMS完成数据库系统。
一个通俗的比喻,使用的DBMS上的好参谋,好助手,如果有的话,具体的技术工作由助理完成。
开发人员可以专注于应用逻辑设计,而无需担心数据管理的许多复杂的细节。
还需要改变逻辑结构的应用程序逻辑的改变,数据,数据库系统提供独立的数据和程序之间的数据逻辑结构的变化是有责任的DBA,开发人员就不必应用程序或需要几个应用程序,它不仅简化了编写应用程序,而且还大大降低了维护和应用程序。
数据库系统管理数据库系统的使用可以减少维护系统的负担。
DBMS数据库应用程序和统一的管理和控制对数据库的维护,包括数据的完整性,安全性,多用户并发控制,故障恢复,由DBMS执行。
总之,使用数据库系统的优点是很多的,无论是集中管理数据,控制数据冗余,提高利用率和数据的一致性,也有利于应用程序的开发和维护的。
他们今后的工作中具体应用的读者仔细体味和总结。
3。
的师叔文件系统的差异和连接与数据库系统。
A: 文件系统的区别,数据库系统:面向应用的文件系统,共享,冗余,数据独立性,记录结构,整体非结构化的应用控制。
面向真实世界的数据库系统中,共享是高的,冗余度小,具有较高的物理独立性和一定的逻辑独立性,描述的数据模型,由数据库管理系统提供的数据安全性的整体结构的,完整的,并发控制和恢复能力。
联系 文件系统和数据库系统的数据文件系统和数据库系统是计算机系统管理软件。
解析文件系统是操作系统的重要组成部分,DBMS是独立的操作系统软件。
数据库管理系统来实现的操作系统的基础上,通过操作系统的文件系统中的组织和存储在数据库中的数据来实现。
4。
引用的例子适合的文件系统,而不是数据库系统;举出的合适的数据库系统中的应用的例子。
A: (L)适用于临时数据存储在文件系统而不是数据库系统的数据备份,应用实例,软件或应用程序使用的文件是比较合适的。
早期的相对简单的,固定的系统也是适合使用的文件系统。
(2)适用于应用程序的数据库系统,而不是文件系统的例子,几乎所有的企业或部门的信息系统,数据库系统的基础上,并使用该数据库。
例如,一个工厂的管理信息系统(其中包括许多子系统,如库存管理,物资采购系统,作业调度系统,设备管理系统,人事管理系统等),学校的学生管理系统,人事管理系统,图书博物馆的图书馆管理系统等,适用于数据库系统。
我希望读者能举出自己的理解的应用实例。
5。
特性的数据库系统中。
A: 数据库系统的主要特点: (L)数据结构的数据库系统,以实现整体结构化的数据,这是对数据库的主要特征之一,也是数...
Access数据库实训心得
持续一个月的数据库实训,让我参与了软件工程化的开发过程。
其中体会最深的便是我们这个实训网的几个之最:一.项目最大:项目大是因为我们这个事业起点网站涉及到用户众多-高校,企业,学生,老师,专家,第二个原因是网站的功能多-用户管理,网上实习,网上竞赛,毕业实习设计,项目管理,人才库管理,人才推荐,搜索 ... 项目大很容易造成系统范围的泛滥,在我们的开发初期,由于需求不太明确,功能实现没有重点,造成了需求范围的扩大,给项目开发进度造成了严重的滞后性。
然后我们召开了会议讨论了这个问题,一致认同先把项目的基本功能实现,将网站的基本架构搭建起来,最后再在这个基础上继续增加我们网站的其他功能。
因此在这个过程中,我深刻体会到了软件工程初期阶段的需求分析以及概要设计的重要性,这两个文档是指导我们后期开发的最重要的依据。
二.数据库表最多:如此庞大的系统,就需要庞大的数据库来支持,所以项目大的直接后果就是我们的数据库表特别多,而且表与表之间的依赖关系也复杂,实体类之间的关系众多,设计起来有一定的难度。
数据库的另外一个问题是-数据表的属性,数据表属性的设计完全是依赖于我们刚开始做的需求分析文档,如果需求分析不完整的话,就会造成数据库表属性的缺失,从用户的角度看,就会觉得你的系统提供的数据不够全面,信息量小。
三.开发团队最大:我们团队一共有十四个人,这个对于我们的项目经理来说,是一个相当严峻的问题,毕竟十四个人的团队相当于其他几个小组加起来的人数总和,管理起来有相当大的难度。
对于我们这些小组成员来说,由于沟通渠道太多,造成了我们项目中遇到问题,不知道去跟哪个小组成员沟通。
为了解决这个问题,我们在团队中又选出了三个小组长,小组成员遇到问题,先去咨询小组长,然后小组长提供反馈信息。
四.项目各个模块间藕合度高:网站涉及的各个功能模块之间的联系紧密,模块之间的接口设计的好坏是项目最终集成成功与否的最重要因素。
用户管理这一个部分要为每个模块提供接口,主要是用户的编号以及用户的类型等。
每个页面之间的链接也是其中重要的模块接口。
这个问题由于我们前期做好了充分的沟通以及按照概要设计中的接口说明去设计自己的模块,所以后期的模块整合没有遇到什么太大的不兼容性等问题。
接下来就谈谈我这一个月中的工作: 需求分析阶段:需求分析阶段我完成了网上竞赛模块的需求分析,其中遇到的主要问题是阅读材料后发现网上实习,网上竞赛,毕业设计指导这几个模块的功能是类似的,提取需求分析后不够明确,经过几次跟汤老师的交流后,确定了这几个模块之间的具体差别,网上竞赛模块的基本需求也大致确定了,网上竞赛模块的基本功能就是学生通过网站报名参加竞赛,企业审核通过后,专家对作品进行评分,排名。
概要设计阶段:在需求分析的基础上,对网上竞赛模块进行了比较具体的概要设计,流程图(IPO图以及用例图);这个阶段的主要难点是对网上竞赛业务流程的描述,如何实现学生报名,企业发布,专家评审的步骤操作,与及跟其他模块对该模块的限制。
数据库设计阶段:我负责整合初步数据库设计说明书,分配组员按照各自的功能模块的具体需求设计自己模块需要的数据表,然后对这些数据表进行整合。
在这个过程中遇到的问题就是数据库实在是太大了,最后下来一共有30多张表,表与表之间的关系复杂,关联性大,需要设置的外键较多,很难将所有的属性字段给提取出来,属性的类型设置也是一个问题,采用数值型还是采用字符串性在数据库设计中尤为重要,因为在后台搜索方面,数值型比较快捷,而在数据显示方面,字符串型又有直接读出不用转换的好处。
每个表的主键我们采用了用实体的编号去标记它,因为这样实体间关联起来会更加简单。
数据库的设计关键是要对整个项目的整体的把握,并且要细化对每个实体类的具体属性要求。
详细设计阶段:我觉得是最重要的一个方面,一个完整的详细设计说明应该可以帮助程序员完成具体的实现,程序员可以不用考虑模块之间的耦合问题,只需要将单一的功能按照逻辑顺序编写出来就可以了。
网站整体构架搭好了,我们就可以在里面填充自己的功能了。
但是因为时间太仓促了,我们这个阶段也就缩水了,带来后面的问题就是后期代码编写的时候比较混乱,函数接口较难统,界面风格多样化。
这个阶段,我的主要工作是跟队友一起设计出了网上竞赛模块的学生,企业,管理员,高校以及专家的界面。
编码阶段:我们是用ASP.net开发的,主要任务就是从工具中选出你想要的控件,然后在控件响应函数中填充代码,完成相应的事件响应。
这里遇到的最大问题是页面的排版问题,因为自己是第一次开发网站,造成了自己设计的界面风格单调,不太美观,现在就尽量做到页面的整齐。
这个阶段主要做的就是:写代码→编译→调试→写代码。
这一个月中我学到了很多东西,技术方面就是学会了用ASP.Net编写网站,最重要的是让我经历了软件工程化的所有阶段,让我对整个软件工程有了感性的认识,而且将大学三年所学到的...
odbc测试成功,但是后台软件还是连接不上数据库
1选择“开始”→“管理工具”→“数据源(ODBC)”选项,显示“ODBC数据源管理器”对话框。
2.切换到“系统DSN”选项卡,默认情况下计算机中没有部署和任何数据库的连接。
3.单击“添加”按钮,显示“创建新数据源”对话框。
在“选择您想为其安装数据源的驱动程序”列表中,选择“SQL Server”选项。
数据库方向学哪些课程
学数据库【设计】,最好要学【数据库概论】这本书。
此书是教你如何设计一个好的【结构】的数据库的书,还教你如何使用SQL查询语句,还有很多数据库发展的历史。
虽然抽象一些。
如果,你看不下去,可以先学某个具体的数据库软件的教程。
学会了一个数据库软件的使用后,然后,试着做一个程序,在做程序的过程中,你就会体会到【数据库概论】的作用。
当然是你亲自花时间设计数据库程序,你才能体会到。
如果,不是设计数据库,只是使用数据库。
你只需要学习相关的数据库软件的使用,就可以了。
转载请注明出处51数据库 » 软件开发与数据库的链接总结
小狐仙Bobi