连接到数据库的程序的源代码

连接到数据库的程序的源代码
连接到数据库的程序的源代码

这个程序是连接到数据库的一个程序,主要功能是在上方的文本输入框中输入查询语句,实现从数据库中查询的功能,还可以在下方的过滤文本框中输入要过滤的文本,实现过滤查询结果的功能。

现在的问题是编译能够成功,但是运行时会报错。错误信息及源代码在下面给出,请问原因为何?多谢指教。

//这是ResultSetTableModel类,用作JTable的构造函数的参数。

package ResultSetTableModel;

import java.sql.*;

import javax.swing.table.*;

public class ResultSetTableModel extends AbstractTableModel

{

private Connection connection;

private Statement statement;

private ResultSet resultset;

private ResultSetMetaData metadata;

private int numberofrows;

private boolean connectedtodatabase=false;

public ResultSetTableModel(String url,String username,String password,String query) {

try

{

connection=DriverManager.getConnection(url,username,password);

statement=connection.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet .CONCUR_READ_ONL Y);

connectedtodatabase=true;

setQuery(query);

}

catch(SQLException sqlexception)

{

System.out.println("error on connecting to database");

}

}

public void setQuery(String query) throws SQLException,IllegalStateException {

if(!connectedtodatabase)

{

throw new IllegalStateException("Not connected to database");

}

resultset=statement.executeQuery(query);

metadata=resultset.getMetaData();

}

public void disconnectFromDatabase()

{

if(connectedtodatabase)

{

try

{

resultset.close();

statement.close();

connection.close();

}

catch(SQLException sqlException)

{

sqlException.printStackTrace();

}

finally

{

connectedtodatabase=false;

}

}

}

public int getColumnCount() throws IllegalStateException

{

int currentrow=1;

if(!connectedtodatabase)

{

throw new IllegalStateException("Not connected to database");

}

try

{

https://www.360docs.net/doc/5d10278984.html,st();

currentrow=resultset.getRow();

}

catch(SQLException sqlexception)

{

sqlexception.printStackTrace();

}

return currentrow;

}

public Class getColumnClass(int column) throws IllegalStateException {

if(!connectedtodatabase)

{

throw new IllegalStateException("Not connected to database");

}

try

{

String className=metadata.getColumnClassName(column+1);

return Class.forName(className);

}

catch(Exception exception)

{

exception.printStackTrace();

}

finally

{

return Object.class;

}

}

public String getColumnName(int column) throws IllegalStateException {

String columnname="null";

if(!connectedtodatabase)

{

throw new IllegalStateException("Not connected to database");

}

try

{

columnname=metadata.getColumnName(column+1);

}

catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

finally

{

return columnname;

}

}

public int getRowCount() throws IllegalStateException

{

int rowcount=0;

if(!connectedtodatabase)

{

throw new IllegalStateException("Not connected to database");

}

try

{

https://www.360docs.net/doc/5d10278984.html,st();

rowcount=numberofrows=resultset.getRow();

}

catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

finally

{

return numberofrows;

}

}

public String getValueAt(int row,int column) throws IllegalStateException {

if(!connectedtodatabase)

{

throw new IllegalStateException("Not connected to database");

}

try

{

resultset.absolute(row+1);

return resultset.getObject(column+1).toString();

}

catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return "";

}

}

//这是QueryData类,其中实现了图形界面

package ResultSetTableModel;

import java.awt.*;

import javax.swing.*;

import java.awt.event.*;

import java.sql.SQLException;

import java.util.regex.*;

import javax.swing.table.*;

public class QueryData extends JFrame

{

static final String DATABASEURL="jdbc:oracle:thin:@localhost:1521:orcl";

static final String DATABASEUSERNAME="scott";

static final String DATABASEPASSWORD="123456";

private JButton submitquery;

private Box boxnorth,boxsouth;

private JTextArea inquerysentence;

private JTextField filtercondition;

private JButton applyfilter;

private ResultSetTableModel tablemodel;

private JTable resulttable;

public QueryData()

{

super("Displaying query results");

Box boxnorth,boxsouth;

JTextArea inquerysentence;

JTextField filtercondition;

JButton applyfilter;

ResultSetTableModel tablemodel=new ResultSetTableModel(DA TABASEURL,DATABASEUSERNAME,DATABASEPASSWORD,"sel ect * from emp");

boxnorth=Box.createHorizontalBox();

boxsouth=Box.createHorizontalBox();

inquerysentence=new JTextArea("select * from emp",30,100);

inquerysentence.setWrapStyleWord(true);

inquerysentence.setLineWrap(true);

submitquery=new JButton("Submit Query");

boxnorth.add(new JScrollPane(inquerysentence));

boxnorth.add(submitquery);

JTable resulttable=new JTable(tablemodel);

JLabel filterflag=new JLabel("Filter");

filtercondition=new JTextField();

applyfilter=new JButton("Apply Filter");

boxsouth.add(filterflag);

boxsouth.add(filtercondition);

boxsouth.add(applyfilter);

add(boxnorth,BorderLayout.NORTH);

add(new JScrollPane(resulttable),BorderLayout.CENTER);

add(boxsouth,BorderLayout.SOUTH);

setSize(500,500);

setVisible(true);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

submitQuery(inquerysentence.getText());

applyFilter(filtercondition.getText());

}

public void submitQuery(final String sentencetoinquery)

{

submitquery.addActionListener(

new ActionListener()

{

public void actionPerformed(ActionEvent actionevent)

{

try

{

tablemodel.setQuery(sentencetoinquery);

}

catch(SQLException sqlexception)

{

JOptionPane.showMessageDialog(null,

sqlexception.getMessage(),"Database error",

JOptionPane.ERROR_MESSAGE

);

}

}

}

);

}

public void applyFilter(final String filtercondition)

{

final TableRowSorter sorter=new TableRowSorter(tablemodel);

resulttable.setRowSorter(sorter);

applyfilter.addActionListener(

new ActionListener()

{

public void actionPerformed(ActionEvent actionevent)

{

if(filtercondition.length()==0)

{

sorter.setRowFilter(null);

}

else

{

try

{

sorter.setRowFilter(RowFilter.regexFilter(filtercondition));

}

catch(Exception exception)

{

JOptionPane.showMessageDialog(null,

"Bad regex pattern","Bad regex pattern",

JOptionPane.ERROR_MESSAGE

);

}

}

}

}

);

}

public static void main(String[] args) {

new QueryData();

}

}

//下面是运行时的错误信息

error on connecting to database

Exception in thread "main" https://www.360docs.net/doc/5d10278984.html,ng.IllegalStateException: Not connected to database

at

ResultSetTableModel.ResultSetTableModel.getColumnCount(ResultSetTableModel. java:64)

at javax.swing.JTable.createDefaultColumnsFromModel(JTable.java:1287)

at javax.swing.JTable.tableChanged(JTable.java:4386)

at javax.swing.JTable.setModel(JTable.java:3688)

at javax.swing.JTable.(JTable.java:634)

at javax.swing.JTable.(JTable.java:575)

at ResultSetTableModel.QueryData.(QueryData.java:41)

at ResultSetTableModel.QueryData.main(QueryData.java:117)

完整word版超管理系统数据库课程设计含源文件

超市管理系统数据库设计 一、超市管理数据库 超市需建立一个管理数据库存储以下信息: *超市信息包括超市代号,超市名,经理名及超市运营开销。 *一个超市内有多个部门,每个部门有部门号、部门主管姓名、地址,电话及每个月的部门运营 开销。 *每个部门有多个员工,每个员工有员工号、姓名、年龄、性别,职位及月工资。 *每个部门销售多种商品,商品有商品号、商品名、规格,采购成本和零售价格、批发价格。 *商品采购自供货商,供货商有供货商号,供货商名,联系电话,联系地址。 *所有的商品存在商场或仓库中。 *商场有多个仓库,仓库有仓库号,仓库管理姓名、电话及仓库的运营成本。 应完成的主要功能:(1)基础信息管理功能,如超市信息的管理功能,包括录入、修改、查询、输出超市的信息;部门信息的管理功能,包括录入、修改、查询、输出部门的信息;还有员工,商品,采购商,仓库等的信息管理功能。(2)超市的进销存功能模块,包括进货,销售,库存以 及超市盘点等常见功能。 (3)超市的利润统计功能,包括月利润和年利润统计。并能输出各种报表,如员工工资月报表,年报表;每个部门销售的商品数量的月报表;仓库存储商品数量的月报表;超市运营开销和部门运营开销的月报表等。 二、开发环境 数据库选用微软的SQL SERVER。开发环境可以选择:(1)Delphi; (2)Visual Basic; (3) C++ builder; (4) Visual C++;(5)Visual C#;(6)自选。只选择其中的一种软件开发工具实现即可。 三、基本要求 (1)完成上面所提及的所有需求 (2)要求撰写不少于2500字符的Word文档。 (3)文档中至少要包括:ER模型图、系统功能图、数据字典、表关系的详细说明。 (4)用户界面设计:采用图形界面菜单驱动,界面要友好,操作要简单,C/S 和B/S架构自由选择。 (5)用户手册,描述软件系统所具有的功能及基本的使用方法。使用户能了解该软件的用途,并能确定在什么情况下、如何使用它。 四、文档格式 1、概述 包括项目背景、编写目的、软件定义、开发环境等内容。 2、需求分析 问题陈述、需完成的功能。

软件工程-数据库设计规范与命名规则

数据库设计规范、技巧与命名规范 一、数据库设计过程 数据库技术是信息资源管理最有效的手段。 数据库设计是指:对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,有效存储数据, 满足用户信息要求和处理要求。 数据库设计的各阶段: A、需求分析阶段:综合各个用户的应用需求(现实世界的需求)。 B、在概念设计阶段:形成独立于机器和各DBMS产品的概念模式(信息世界模型),用E-R图来描述。 C、在逻辑设计阶段:将E-R图转换成具体的数据库产品支持的数据模型,如关系模型,形成数据库逻辑模式。 然后根据用户处理的要求,安全性的考虑,在基本表的基础上再建立必要的视图(VIEW)形成数据的外模式。 D、在物理设计阶段:根据DBMS特点和处理的需要,进行物理存储安排,设计索引,形成数据库内模式。 1. 需求分析阶段 需求收集和分析,结果得到数据字典描述的数据需求(和数据流图描述的处理需求)。 需求分析的重点:调查、收集与分析用户在数据管理中的信息要求、处理要求、安全性与完整性要求。 需求分析的方法:调查组织机构情况、各部门的业务活动情况、协助用户明确对新系统的各种要求、确定新系统的边界。 常用的调查方法有:跟班作业、开调查会、请专人介绍、询问、设计调查表请用户填写、查阅记录。 分析和表达用户需求的方法主要包括自顶向下和自底向上两类方法。自顶向下的结构化分析方法(Structured Analysis, 简称SA方法)从最上层的系统组织机构入手,采用逐层分解的方式分析系统,并把每一层用数据流图和数据字典描述。 数据流图表达了数据和处理过程的关系。系统中的数据则借助数据字典(Data Dictionary,简称DD)来描述。 2. 概念结构设计阶段 通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型,可以用E-R图表示。 概念模型用于信息世界的建模。概念模型不依赖于某一个DBMS支持的数据模型。概念模型可以转换为计算机上某一 DBMS 支持的特定数据模型。 概念模型特点: (1) 具有较强的语义表达能力,能够方便、直接地表达应用中的各种语义知识。 (2) 应该简单、清晰、易于用户理解,是用户与数据库设计人员之间进行交流的语言。 概念模型设计的一种常用方法为IDEF1X方法,它就是把实体-联系方法应用到语义数据模型中的一种语义模型化技术, 用于建立系统信息模型。 使用IDEF1X方法创建E-R模型的步骤如下所示:

各种数据库的连接连接Connection方法

package com.jdbc.myConnection; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class ConnectionFactory { //获取Oracle连接 public static Connection getOracleConnection() { Connection con = null; try { Class.forName("oracle.jdbc.OracleDriver"); String url = "jdbc:oracle:thin:@localhost:1521:orcl"; con = DriverManager.getConnection(url, "scott", "tiger"); } catch (Exception e) { e.printStackTrace(); } return con; } //获取SQLServer的test数据库连接 public static Connection getSQLServerConnection() { return getMySQLConnection("test"); } //获取SQLServer 连接 public static Connection getSQLServerConnection(String databaseName) { Connection con = null; try { Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); String url = "jdbc:microsoft:sqlServer://localhost:1433;databaseName=" + databaseName; con = DriverManager.getConnection(url, "sa", "sa"); } catch (Exception e) { e.printStackTrace(); } return con; } //获取MySQL连接 public static Connection getMySQLConnection() { return getMySQLConnection("test");

数据库设计以与源代码

系统建设详细设计 1.数据库设计 管理员用户表信息: 字段名称类型大小字段描述 管理员 ID自动编号长整型管理员身份识别 管理员名称文本50管理员登陆名称 密码文本50管理员登陆的密码 身份文本50有别于学生登陆界面 学生用户表: 字段名称类型大小字段描述 学生 ID自动编号长整型学生学号 学生名称文本50学生名称 密码文本50学生登陆的密码 身份文本50有别于管理员登陆界面学生信息表: 字段名称类型大小字段描述 学生 ID自动编号长整型学生学号 学生名称文本50学生名称 电子邮箱文本50学生的电子邮箱 备注//学生的其他信息 性别文本50性别 入学时间文本50学生入学的时间

班级文本50所在班级 专业文本50所学专业 2系统程序文件设计与编写 与数据库连接的代码: <% db="message.mdb" set Conn=server.createobject("adodb.Connection") conn.open"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&server.mappath(db) %> 登陆界面代码: 代码为: <% if request("Submit")<>"" then set rs=server.createobject("adodb.recordset")

sql="SELECT username,password from users where username='"&request("username")&"'" rs.open sql,conn,1,3 if rs.bof and rs.eof then msg="错误:用户名不存在" else if rs("password")=request("password") then Session("admin")=true response.redirect "index.asp?users=admin" else msg=" 错误:密码不正确 " end if end if rs.close set rs=nothing Conn.close Set conn = Nothing end if%> 管理员

ASP NET 6种常用数据库的连接方法

1.C#连接连接Access 程序代码: using System.Data; using System.Data.OleDb; .. string strConnection="Provider=Microsoft.Jet.OleDb.4.0;"; strConnection+=@"Data Source=C:BegASPNETNorthwind.mdb"; OleDbConnection objConnection=new OleDbConnection(strConnection); .. objConnection.Open(); objConnection.Close(); 解释: 连接Access数据库需要导入额外的命名空间,所以有了最前面的两条using命令,这是必不可少的! strConnection这个变量里存放的是连接数据库所需要的连接字符串,他指定了要使用的数据提供者和要使用的数据源. "Provider=Microsoft.Jet.OleDb.4.0;"是指数据提供者,这里使用的是Microsoft Jet引擎,也就是Access中的数据引擎,https://www.360docs.net/doc/5d10278984.html,就是靠这个和Access的数据库连接的. "Data Source=C:\BegASPNET\Northwind.mdb"是指明数据源的位置,他的标准形式是"Data

Source=MyDrive:MyPath\MyFile.MDB". PS: 1."+="后面的"@"符号是防止将后面字符串中的"\"解析为转义字符. 2.如果要连接的数据库文件和当前文件在同一个目录下,还可以使用如下的方法连接: strConnection+="Data Source="; strConnection+=MapPath("Northwind.mdb"); 这样就可以省得你写一大堆东西了! 3.要注意连接字符串中的参数之间要用分号来分隔. "OleDbConnection objConnection=new OleDbConnection(strConnection);"这一句是利用定义好的连接字符串来建立了一个链接对象,以后对数据库的操作我们都要和这个对象打交道. "objConnection.Open();"这用来打开连接.至此,与Access数据库的连接完成. 2.C#连接SQL Server 程序代码: using System.Data; using System.Data.SqlClient; .. string strConnection="user id=sa;password=;"; strConnection+="initial catalog=Northwind;Server=YourSQLServer;";

JAVA连接各种数据库的代码大全

Java数据库连接大全 注:newInstance()可要可不要。 通用JDBC-ODBC直连方式(无需额外的驱动包): Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection conn=DriverManager.getConnection("jdbc:odbc:Driver={SQL Server};Server=localhost;uid=sa;pwd=1111;Database=db"); 以下方式中Class.forName中的都是需要添加的驱动包。 1Java连接Oralce Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); String url="jdbc:oracle:thin:@localhost:1521:orcl"; Connection conn=DriverManager.getConnection(url,user,password); 2Java连接MySQL Class.forName("org.gjt.mm.mysql.Driver").newInstance(); //Class.forName("com.mysql.jdbc.Driver"); String URL="jdbc:mysql://localhost/test"; Connection conn=DriverManager.getConnection(url,user,password); 3Java连接SQLServer 连接mssql2000 Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); String URL="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db"; Connection conn=DriverManager.getConnection(url,user,password); 连接mssql2005+ Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance(); String URL="jdbc:sqlserver://localhost:1433;DatabaseName=db"; Connection conn=DriverManager.getConnection(url,user,password); 通用方式: Class.forName("net.sourceforge.jtds.jdbc.Driver").newInstance(); String url="jdbc:jtds:sqlserver://localhost:1433;DatabaseName=db"; Connection conn=DriverManager.getConnection(url,user,password); 4Java连接DB2 Class.forName(“com.ibm.db2.jdbc.app.DB2Driver").newInstance(); String URL=”jdbc:db2://localhost:5000/db"; Connection conn=DriverManager.getConnection(url,user,password); 5Java连接Infomix Class.forName("https://www.360docs.net/doc/5d10278984.html,rmix.jdbc.IfxDriver").newInstance(); String URL="jdbc:informix-sqli://123.45.67.89:1533/db:INFORMIXSERVER=myserver"; Connection conn=DriverManager.getConnection(url,user,password); 6Java连接SyBase Class.forName("com.sybase.jdbc.SybDriver").newInstance(); Properties sysProps=System.getProperties(); SysProps.put("user","userid"); SysProps.put("password","user_password"); Connection conn=DriverManager.getConnection(url,SysProps);

基于JAVA的客房管理系统设计(有源代码+数据库) (2)

信息与计算科学专业 课程设计报告书课程名称SQL server 2000 课程设计题目客房管理系统

1概述 1.1 背景 客房管理是旅店管理事务中的一项重要工作,在管理过程中涉及到大量的数 据处理,传统的人工管理已经无法完成胜任。相关数据的处理带来了更大的工作 量。 本系统采用目前比较流行的JDBC-ODBC数据访问技术,成功地将面向对象的 程序设计思想应用到数据库应用程序设计中。 1.2 开发与运行环境 本客房管理系统的开发与运行环境如下: 开发环境:Eclipse 3.1 开发工具:JA V A 1.5 数据库管理系统:SQL Server 2000 运行环境:Windows 2000/XP/2003/Vista 使用说明:用户自己附加数据库,并且在控制面板下的数据工具中的数据源 (ODBC),在用户DSN下添加名为“客房管理”,驱动程序为 SQL-Server。并且安装了JA V A虚拟机,该程序即可使用。 2需求分析 客房资管理系统涉及到:客人信息、客房信息、入住信息、历史信息等多种数据信息。 客房管理系统的用户包括系统管理员。系统管理员负责整理工作,如各种基本信 息的添加、删除和简单的结账计算等操作。 本系统的主要功能包括:

客人信息管理:客人信息数据的添加、删除、结账计算。 数据查询:查看客人信息数据,查看客房信息数据。 数据统计:统计一段时间内的客房情况和月收入等基本统计。 3 系统设计 3.1 系统模块设计 根据系统功能分析和一些旅店客房管理的特点,经过模块化的分析得到如下图所示的系统功能模块结构图。 系统功能模块结构图 客房管理 登记功能 统计功能 查询功能 已入住客房查寻 空房查询 按名字查询客人信息 按客人编号查询客人信息 添加客人信息 删除客人信息 统计入住情况 统计入住率 统计收入 安全管理模块 用户名和密码登陆 注 销

Java连接各种数据库写法

随笔- 6 文章- 0 评论- 1 Java连接各种数据库写法 # 示例配置参考,涵盖几乎所有的主流数据库 ############# Oracle数据库######################## # 数据库驱动名 driver=oracle.jdbc.driver.OracleDriver # 数据库URL(包括端口) dburl=jdbc:oracle:thin:@127.0.0.1:1521:zvfdb # 数据库用户名 user=root # 用户密码

password=zvfims ############# DB2数据库######################## # 数据库驱动名 driver=com.ibm.db2.jcc.DB2Driver # 数据库URL(包括端口) dburl=jdbc:db2://127.0.0.1:50000/zvfdb # 数据库用户名 user=root # 用户密码 password=zvfims ############# MySQL数据库######################## # 数据库驱动名

driver=com.mysql.jdbc.Driver # 数据库URL(包括端口) dburl=jdbc:mysql://127.0.0.1:3306/zvfdb # 数据库用户名 user=root # 用户密码 password=zvfims ############# PostgreSQL数据库数据库######################## # 数据库驱动名 driver=org.postgresql.Driver # 数据库URL(包括端口) dburl=jdbcostgresql://127.0.0.1/zvfdb

Java连接mysql数据库源代码

Java连接mysql数据库源代码 /** *@author mervyn *@Development_time 2011.3.12 *welcome to https://www.360docs.net/doc/5d10278984.html,/mervyn_hb */ package src; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.sql.*; import java.util.*; public class MysqlConnectSystem { /** * @param args * @throws IOException */ public static void main(String[] args) throws SQLException, IOException { String Usename,KeyID,UrlString; //String DriverConnect; char MenuExitValue; String driver="com.mysql.jdbc.Driver"; Scanner EntryValue=new Scanner(System.in); System.out.println("欢迎使用MysqlConnectSystem信息管理系统!"); MysqlConnectSystem mysqlconnect=new MysqlConnectSystem(); MysqlConnectSystem mysqlinsert=new MysqlConnectSystem(); MysqlConnectSystem mysqlupdate=new MysqlConnectSystem(); MysqlConnectSystem mysqldelete=new MysqlConnectSystem(); System.out.println("请输入要登录的用户名:"); Usename=EntryValue.next(); System.out.println("请输入要登录的数据库的密码:"); KeyID=EntryValue.next(); System.out.println("请输入需要登录的数据库:"); UrlString="jdbc:mysql://127.0.0.1:3306/"+EntryValue.next(); do{ try { Class.forName(driver); Connection conn=DriverManager.getConnection(UrlString, Usename,

数据库设计以及源代码

数据库设计以及源代码

系统建设详细设计 1.数据库设计 管理员用户表信息: 字段名称类型大小字段描述 管理员ID 自动编号长整型管理员身份识别 管理员名 称 文本50 管理员登陆名称密码文本50 管理员登陆的密码 身份文本50 有别于学生登陆界面 学生用户表: 字段名称类型大小字段描述 学生ID 自动编号长整型学生学号 学生名称文本50 学生名称 密码文本50 学生登陆的密码 身份文本50 有别于管理员登陆界面学生信息表: 字段名 称 类型大小字段描述 学生ID 自动编 号长整 型 学生学号 学生名 称 文本50 学生名称

电子邮 文本50 学生的电子邮箱箱 备注/ / 学生的其他信息 性别文本50 性别 入学时 文本50 学生入学的时间间 班级文本50 所在班级 专业文本50 所学专业 2 系统程序文件设计与编写 与数据库连接的代码: <% db="message.mdb" set Conn=server.createobject("adodb.Connection") conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&server.mappath(db) %> 登陆界面代码:

代码为: <% if request("Submit")<>"" then set rs=server.createobject("adodb.recordset") sql="SELECT username,password from users where username='"&request("username")&"'" rs.open sql,conn,1,3 if rs.bof and rs.eof then msg="错误:用户名不存在" else if rs("password")=request("password") then Session("admin")=true response.redirect "index.asp?users=admin" else msg="错误:密码不正确" end if end if rs.close set rs=nothing Conn.close Set conn = Nothing end if%> 管理员

java平时最常用的7种数据库连接方式

今天总结了java平时最常用的7种数据库连接方式,现在分享给大家 MySQL: String Driver="com.mysql.jdbc.Driver"; //驱动程序 String URL="jdbc:mysql://localhost:3306/db_name"; //连接的URL,db_name 为数据库名 String Username="username"; //用户名 String Password="password"; //密码 Class.forName(Driver).new Instance(); Connection con=DriverManager.getConnection(URL,Username,Password); Microsoft SQL Server: 1) String Driver="com.microsoft.jdbc.sqlserver.SQLServerDriver"; //连接SQL数据库的方法 String URL="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db_name"; //db_name为数据库名 String Username="username"; //用户名 String Password="password"; //密码 Class.forName(Driver).new Instance(); //加载数据可驱动 Connection con=DriverManager.getConnection(URL,UserName,Password); // 2) String Driver="com.microsoft.sqlserver.jdbc.SQLServerDriver"; //连接SQL数据库的方法 String URL="jdbc:sqlserver://localhost:1433;DatabaseName=db_name"; //db_name为数据库名 String Username="username"; //用户名 String Password="password"; //密码 Class.forName(Driver).new Instance(); //加载数据可驱动 Connection con=DriverManager.getConnection(URL,UserName,Password); Sysbase: String Driver="com.sybase.jdbc.SybDriver"; //驱动程序 String URL="jdbc:Sysbase://localhost:5007/db_name"; //db_name为数据可名 String Username="username"; //用户名 String Password="password"; //密码 Class.forName(Driver).newInstance(); Connection con=DriverManager.getConnection(URL,Username,Password); Oracle(用thin模式): String Driver="oracle.jdbc.driver.OracleDriver"; //连接数据库的方法String URL="jdbc:oracle:thin:@loaclhost:1521:orcl"; //orcl为数据库的SID String Username="username"; //用户名 String Password="password"; //密码 Class.forName(Driver).newInstance(); //加载数据库驱动

JDBC连接sql server数据库的详细步骤和代码

JDBC连接sql server数据库的详细步骤和代码JDBC连接sql server数据库的步骤如下: [java] view plaincopy 1.1、加载JDBC驱动程序: 2.在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 3.这通过https://www.360docs.net/doc/5d10278984.html,ng.Class类的静态方法forName(String className)实现。 4.成功加载后,会将Driver类的实例注册到DriverManager类中。 5.2、提供JDBC连接的URL 6.?连接URL定义了连接数据库时的协议、子协议、数据源标识。 7.?书写形式:协议:子协议:数据源标识 8.协议:在JDBC中总是以jdbc开始 9.子协议:是桥连接的驱动程序或是数据库管理系统名称。 10.数据源标识:标记找到数据库来源的地址与连接端口。 11.3、创建数据库的连接 12.?要连接数据库,需要向java.sql.DriverManager请求并获得Connection对象, 13.该对象就代表一个数据库的连接。 14.?使用DriverManager的getConnectin(String url , String username , 15. String password )方法传入指定的欲连接的数据库的路径、数据库的用户名和 16.密码来获得。 17.4、创建一个Statement 18.?要执行SQL语句,必须获得java.sql.Statement实例,Statement实例分为以下3 19.种类型: 20.1、执行静态SQL语句。通常通过Statement实例实现。 21.2、执行动态SQL语句。通常通过PreparedStatement实例实现。 22.3、执行数据库存储过程。通常通过CallableStatement实例实现。 23.具体的实现方式: 24. Statement stmt = con.createStatement() ; 25. PreparedStatement pstmt = con.prepareStatement(sql) ; 26. CallableStatement cstmt = con.prepareCall("{CALL demoSp(? , ?)}") ; 27.5、执行SQL语句 28. Statement接口提供了三种执行SQL语句的方法:executeQuery 、executeUpdate 29.和execute 30.1、ResultSet executeQuery():执行查询数据库的SQL语句 31.,返回一个结果集(ResultSet)对象。 32.2、int executeUpdate():用于执行INSERT、UPDATE或 33. DELETE语句以及SQL DDL语句,如:CREATE TABLE和DROP TABLE等 34.3、execute():用于执行返回多个结果集、多个更新计数或二者组合的 35.语句。 36.具体实现的代码: 37. ResultSet rs = pstmt.executeQuery() ;

通过ADO连接各种数据库的字符串

通过ADO连接各种数据库的字符串 在网络编程过程中,ADO(Activex Data Object)编程往往是不可少的工作,特别是开发电子商务网站。既然讲到ADO数据对象,那么就顺便简单地介绍一下ADO数据对象及其功能。ADO数据对象共有七种独立的对象,他们分别是连接对象(Connection)、记录集对象(RecordSet)、域对象(Field)、命令对象(Command)、参数对象(Parameter)、属性对象(Property)和错误对象(Error)。功能请参见附录1。 ADO数据对象用来连接数据库的方式有两种,分别是ODBC和OLE DB方式,下面就分别介绍用这两种方式连接数据库的例子。 第一种:ODBC DSN-Less Connections ODBC Driver for Access ODBC Driver for dBASE ODBC Driver for Excel ODBC Driver for MySQL ODBC Driver for Oracle ODBC Driver for Paradox ODBC Driver for SQL Server ODBC Driver for Sybase ODBC Driver for Sybase SQL Anywhere ODBC Driver for Text ODBC Driver for Teradata ODBC Driver for Visual FoxPro 第二种:OLE DB Data Provider Connections OLE DB Provider for Active Directory Service OLE DB Provider for DB2 OLD DB Provider for Internet Publishing OLE DB Provider for Index Server OLE DB Provider for Microsoft Jet OLE DB Provider for ODBC Databases OLE DB Provider for Oracle (From Microsoft) OLE DB Provider for Oracle (From Oracle)

数据库课程设计源代码

use kjq111007307 /*创建一个部门信息表 包含“部门号,部门名,部门经理,人数”属性列*/ create table department (depart_no char(2)primary key, depart_name char(30)not null, depart_manage char(6)not null, depart_people int not null ) /*创建一个职位信息表 包含“职位,基本薪资,福利,失业保险,住房公积金”属性列*/ create table position (pos char(30)primary key, basesalary float not null, benefits float not null, insurances float not null, housing_funds float not null ) /*创建一个职工信息表 包含"职工号,职工名,性别,年龄,学历,部门号,职位"属性列*/ create table staff_message (staff_no char(4)primary key, staff_name char(10)not null, staff_sex char(2)check(staff_sex in('男','女')), staff_age int not null, staff_edu char(10)not null, staff_dep char(2)not null, staff_job char(30)not null, foreign key(staff_dep)references department(depart_no), foreign key(staff_job)references position(pos) ) /*创建一个员工考勤表 包含“职工号,年月,迟到,缺勤,加班”属性列*/ create table staff_days (staff_no char(4), month_date char(6), staff_late int not null, staff_absent int not null, workoverdays int not null, primary key(staff_no,month_date) ) /*创建一个薪资表 包含“职工号,年月,奖金,罚金,真实薪资”属性列*/ create table salary (staff_no char(4),

7种方法连接数据库

连接数据库的方法小结 1.ODBC API ODBC(Open Database Connectivity,开放数据库互连)是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。这些API利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。 一个基于ODBC的应用程序对数据库的操作不依赖任何DBMS,不直接与DBMS打交道,所有的数据库操作由对应的DBMS的ODBC驱动程序完成。也就是说,不论是FoxPro、Access , MYSQL还是Oracle数据库,均可用ODBC API 进行访问。由此可见,ODBC的最大优点是能以统一的方式处理所有的数据库。 2.MFC ODBC 由于直接使用ODBC API编写应用程序要编制大量代码,开发者往往需要花费很多的精力在非核心代码的维护上,而Visual C++提供了MFC ODBC类,封装了ODBC API,这使得利用MFC ODBC来创建ODBC应用程序非常简便。 3.DAO(Data Access Object) DAO提供了一种通过程序代码创建和操纵数据库的机制,多个DAO构成一个体系结构,在这个体系结构中,各个DAO对象协同工作。MFC DAO是Microsoft提供的用于访问Microsoft jet数据库文件的强有力的数据库开发工具,它通过封装DAO,向程序员提供了DAO操作数据库的手段。 4.OLE DB OLE DB(Object Linking and Embedding, Database, 又称为OLE DB或OLE-DB),一个基于COM的数据存储对象,能提供对所有类型的数据的操作,甚至能在离线的情况下存取数据(比方说,你使用的是你的便携机,你可以毫不费力地看到最后一次数据同步时的数据映像). OLEDB位于ODBC层与应用程序之间. 在你的ASP页面里,ADO是位于OLEDB之上的应用程序. 你的ADO调用先被送到OLEDB,然后再交由ODBC 处理. 你可以直接连接到OLEDB层,如果你这么做了,你将看到服务器端游标(recordset的缺省的游标,也是最常用的游标)性能的提升.

VBA数据库连接代码(自己编制成功)

Private Sub CommandButton1_Click() Dim i As Integer, j As Integer, sht As Worksheet 'i,j为整数变量;sht 为excel工作表对象变量,指向某一工作表 Dim cn As Object '定义数据链接对象,保存连接数据库信息 Dim rs As Object '定义记录集对象,保存数据表 Set cn = CreateObject("ADODB.Connection") '创建数据链接对象 Set rs = CreateObject("ADODB.RecordSet") '创建记录集对象 Dim strCn As String, strSQL As String '字符串变量 strCn = "Provider=sqloledb;Server=GuilinHu-PC\HuglSQLSEVER;Database=Hugl;U id=sa;Pwd=HGL102643lch;" '定义数据库链接字符串 ’Sever =服务器名称;Database =数据库名称,Uid =sa ; Pwd = 以sa身份登录数据库的密码 '下面的语句将读取数据表数据,并将它保存到excel工作表中:画两张表想像一下,工作表为一张两维表,记录集也是一张两维表 strSQL = "select 姓名,性别,年龄 from 个人信息" '定义SQL查询命令字符串cn.Open strCn '与数据库建立连接,如果成功,返回连接对象cn rs.Open strSQL, cn '执行strSQL所含的SQL命令,结果保存在rs记录集对象中 i = 1 Set sht = ThisWorkbook.Worksheets("sheet1") '把sht指向当前工作簿的sheet1工作表 Do While Not rs.EOF '当数据指针未移到记录集末尾时,循环下列操作 sht.Cells(i, 1) = rs("姓名") '把当前记录的字段1的值保存到sheet1工作表的第i行第1列 sht.Cells(i, 2) = rs("性别") '把当前字段2的值保存到sheet1工作表的第i行第2列 sht.Cells(i, 3) = rs("年龄") '把当前字段2的值保存到sheet1工作表的第i行第2列 rs.MoveNext '把指针移向下一条记录 i = i + 1 'i加1,准备把下一记录相关字段的值保存到工作表的下一行 Loop '循环 rs.Close '关闭记录集,至此,程序将把某数据表的字段1和字段2保存在excel工作表sheet1的第1、2列,行数等于数据表的记录数 End Sub

相关文档
最新文档