当前位置:文档之家› 使用JSPSERVLETJDBC实现对数据库的增删改查(精)

使用JSPSERVLETJDBC实现对数据库的增删改查(精)

使用JSPSERVLETJDBC实现对数据库的增删改查(精)
使用JSPSERVLETJDBC实现对数据库的增删改查(精)

使用JSP+SERVLET+JDBC实现对数据库的增删改查

首先,打开sql*plus,输入用户名(我用的scott)密码(我设置的是tiger)。先建个表student,

Create table student (

id number(30 not null primary key,

name varchar(50 ,

age number(30,

gender varchar(30,

major varchar(50 ;

1,打开myeclipse(我用的是myeclipse8.5)新建一个web project

2,在project name 中输入合法名字,比如normal

3,新建的normal工程

4,在src目录下建一个包,右击src选择new在选择package

5,输入合法名字比如bean

6,在bean目录下建一个class,右击bean选择new再选择class

7,输入名字Page

完整的Page.java代码如下

package bean;

public class Page {

private int totalPage;

private int currentPage;

private int totalRecord;

private int currentRecord;

private int pageSize=8;

//获得和设置当前页

public int getCurrentPage({

return currentPage;

}

public void setCurrentPage(int currentRecord,int pageSize{ if(currentRecord%pageSize==0{

currentPage=currentRecord/pageSize;

}

else{

currentPage=currentRecord/pageSize+1;

}

}

//获得和设置当前记录

public int getCurrentRecord({

return currentRecord;

}

public void setCurrentRecord(int currentRecord{

this.currentRecord=currentRecord;

}

//获得和设置每页记录数量

public int getPageSize({

return pageSize;

}

public void setPageSize(int pageSize{

this.pageSize=pageSize;

}

//获得和设置总页数

public int getTotalPage({

return totalPage;

}

public void setTotalPage(int totalRecord,int pageSize{ if(totalRecord%pageSize==0{

totalPage=totalRecord/pageSize;

}

else{

totalPage=totalRecord/pageSize+1;

}

}

//获得和设置总记录

public int getTotalRecord({

return totalRecord;

}

public void setTotalRecord(int totalRecord{

this.totalRecord=totalRecord;

}

}

8,用相同的方法建一个StudentInfo类

完整的StudentInfo.java代码如下

package bean;

public class StudentInfo {

private int id; //学号

private String name; //姓名

private int age; //年龄

private String gender; //性别

private String major; //专业

public StudentInfo({

}

public StudentInfo(int id,String name,int age,String gender,String major{

this.id=id;

https://www.doczj.com/doc/825237496.html,=name;

this.age=age;

this.gender=gender;

this.major=major;

}

public int getId({

return id;

}

public void setId(int id{

this.id=id;

}

public String getName({

return name;

}

public void setName(String name{ https://www.doczj.com/doc/825237496.html,=name;

}

public int getAge({

return age;

}

public void setAge(int age{

this.age=age;

}

public String getGender({

return gender;

}

public void setGender(String gender{ this.gender=gender;

}

public String getMajor({

return major;

}

public void setMajor(String major{

this.major=major;

}

}

9,在src目录下添加另一个包dbservlet在该包中建立一个AllServlet类完整的AllServlet.java代码如下

package dbservlet;

import java.io.IOException;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import java.util.ArrayList;

import java.util.List;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import bean.Page;

import bean.StudentInfo;

public class AllServlet extends HttpServlet {

/**

*

*/

private static final long serialVersionUID = 1L;

//doPost方法

public void doPost(HttpServletRequest request, HttpServletResponse response

throws ServletException, IOException {

request.setCharacterEncoding("UTF-8";

response.setCharacterEncoding("UTF-8";

String methodName=request.getParameter("methodName";

int method=Integer.parseInt(methodName;

try {

switch(method

{

case 0:

insert(request,response;

case 1:

difpage(request,response;

break;

case 2:

delete(request,response;

break;

case 3:

update(request,response;

break;

case 4:

update1(request,response;

break;

case 5:

dispatch(request,response;

break;

}

} catch (ClassNotFoundException e {

// TODO Auto-generated catch block

e.printStackTrace(;

} catch (SQLException e {

// TODO Auto-generated catch block

e.printStackTrace(;

}

}

//doGet方法

public void doGet(HttpServletRequest request, HttpServletResponse response

throws ServletException, IOException {

doPost(request,response;

}

//数据库连接方法

public Connection connect( throws ClassNotFoundException, SQLException{

Connection conn=null;

Class.forName("oracle.jdbc.driver.OracleDriver";

String url="jdbc:oracle:thin:@localhost:1521:orcl";

String user="scott";

String password="tiger";

conn=DriverManager.getConnection(url,user,password;

return conn;

}

//关闭数据库资源

public void close(Statement stat,Connection conn throws SQLException{

if(stat!=null{

stat.close(;

}

if(conn!=null{

conn.close(;

}

}

//插入方法

public void insert(HttpServletRequest request, HttpServletResponse response throws ClassNotFoundException, SQLException{

Connection conn=null;

Statement stat=null;

String id=request.getParameter("id";

String name=request.getParameter("name";

String age=request.getParameter("age";

String gender=request.getParameter("gender";

String major=request.getParameter("major";

conn=connect(;

stat=conn.createStatement(;

stat.execute("insert into student(id,name,age,gender,major values("+id+",'"+name+"',"+age+",'"+gender+"','"+major+"'";

close(stat,conn;

}

//查询方法

public ArrayList select(String id,String name throws ClassNotFoundException, SQLException{

Connection conn=null;

Statement stat=null;

ResultSet rs=null;

conn=connect(;

stat=conn.createStatement(;

ArrayList result=new ArrayList (;

if(id==""&&name==""{

rs=stat.executeQuery("select * from student";

}

if(id!=""&&name==""{

rs=stat.executeQuery("select * from student where id="+id+"";

}

if(id==""&&name!=""{

rs=stat.executeQuery("select * from student where name='"+name+"'";

}

if(id!=""&&name!=""{

rs=stat.executeQuery("select * from student where id="+id+" and name='"+name+"'";

}

while(rs.next(

{

StudentInfo st=new StudentInfo(;

st.setId(rs.getInt("id";

st.setName(rs.getString("name";

st.setAge(rs.getInt("age";

st.setGender(rs.getString("gender";

st.setMajor(rs.getString("major";

result.add(st;

}

if(rs!=null{

rs.close(;

}

close(stat,conn;

return result;

}

//条件查询跳转

public void dispatch(HttpServletRequest request, HttpServletResponse response throws ClassNotFoundException, SQLException, ServletException, IOException{

String id5=request.getParameter("id";

String name5=request.getParameter("name";

if(select(id5,name5.isEmpty({

request.getRequestDispatcher("selectnothing.jsp".forward(request, response;

}

else{

request.setAttribute("result", select(id5,name5;

request.getRequestDispatcher("idnameselect.jsp".forward(request, response;

}

}

//设置分页相关参数方法

public Page setpage(HttpServletRequest request, HttpServletResponse response throws ClassNotFoundException, SQLException{

String crd=request.getParameter("currentRecord";

//String id=request.getParameter("id";

// String name=request.getParameter("name";

ArrayList result=select("","";

Page pager=new Page(;

pager.setTotalRecord(result.size(;

pager.setTotalPage(result.size(,pager.getPageSize(;

if(crd!=null

{

int currentRecord=Integer.parseInt(crd;

pager.setCurrentRecord(currentRecord;

pager.setCurrentPage(currentRecord,pager.getPageSize(;

}

return pager;

}

//获得分页显示的子集

public void difpage(HttpServletRequest request, HttpServletResponse response throws ServletException, IOException, ClassNotFoundException, SQLException{

// String id=request.getParameter("id";

// String name=request.getParameter("name";

ArrayList result=select("","";

Page pager=new Page(;

pager=setpage(request,response;

List subResult=null;

int currentRecord=pager.getCurrentRecord(;

if(currentRecord==0{

if(pager.getTotalRecord(<8{

subResult=(List result.subList(0,pager.getTotalRecord(;

}

else{

subResult=(List result.subList(0,pager.getPageSize(;

}

}

else if(pager.getCurrentRecord(+pager.getPageSize(

{

subResult=(List

result.subList(pager.getCurrentRecord(,pager.getCurrentRecord(+pager.get PageSize(;

}

else

{

subResult=(List result.subList(pager.getCurrentRecord(,result.size(;

}

request.setAttribute("pager", pager;

request.setAttribute("subResult", subResult;

request.getRequestDispatcher("layout.jsp".forward(request, response;

}

//信息删除方法

public void delete(HttpServletRequest request, HttpServletResponse response throws ClassNotFoundException, SQLException, ServletException, IOException{

Connection conn=null;

Statement stat=null;

conn=connect(;

stat=conn.createStatement(;

String id2=request.getParameter("id";

stat.execute("delete from student where id="+id2+"";

request.getRequestDispatcher("delete.jsp".forward(request, response;

}

//信息修改方法

public void update1(HttpServletRequest request, HttpServletResponse response throws ClassNotFoundException, SQLException, ServletException, IOException{

String id4=request.getParameter("id";

request.setAttribute("result", select(id4,"";

request.getRequestDispatcher("update1.jsp".forward(request, response;

}

public void update(HttpServletRequest request, HttpServletResponse response throws ClassNotFoundException, SQLException, ServletException, IOException{

Connection conn=null;

Statement stat=null;

String id3=request.getParameter("id";

String name3=request.getParameter("name";

String age3=request.getParameter("age";

String gender3=request.getParameter("gender";

String major3=request.getParameter("major";

conn=connect(;

stat=conn.createStatement(;

stat.execute("update student set

id="+id3+",name='"+name3+"',age="+age3+",gender='"+gender3+"',major='"+m ajor3+"' where id="+id3+"";

request.setAttribute("result", select(id3,"";

request.getRequestDispatcher("update.jsp".forward(request, response;

}

}

10,在webRoot目录下添加以下.jsp文件

10.1 putin.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<%

String path = request.getContextPath(;

String basePath =

request.getScheme(+"://"+request.getServerName(+":"+request.getServerPor t(+path+"/";

%>

学生信息输入

学号:学号必须为数字">

姓名:姓名不能为空">

年龄:年龄必须为数字">

男">男

女">女

专业:专业不能为空">

[

&name=<%="" %>">查看已输入信息

10.2 layout.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<%@ page import="bean.StudentInfo" %>

<%@ page import="bean.Page" %>

<%

String path = request.getContextPath(;

String basePath =

request.getScheme(+"://"+request.getServerName(+":"+request.getServerPor t(+path+"/";

%>

学生信息

全部学生信息如下

<%

response.setCharacterEncoding("UTF-8";

request.setCharacterEncoding("UTF-8";

Page pager=(Pagerequest.getAttribute("pager";

List subResult=(List request.getAttribute("subResult"; if(!subResult.isEmpty({

for(int i=0;i

StudentInfo st=subResult.get(i;

out.print("

out.print("

out.print("

out.print("

out.print("

out.print("

%>

<%

out.print("

}

}

%>

总<%=pager.getTotalRecord( %>条记录|总<%=pager.getTotalPage( %>页

|当前<%=pager.getCurrentPage(+1 %>页|每页<%=pager.getPageSize( %>条| <%

int last=pager.getCurrentRecord(-pager.getPageSize(; int next=pager.getCurrentRecord(+pager.getPageSize(; int currentRecord;

if(last<0{

out.println("首页|";

}

else{

out.print("上一页|";

}

if(next>=pager.getTotalRecord({

out.println("尾页|";

}

else{

out.print("下一页|";

}

%>

按学号姓名查询:

学号:学号必须为数字" >

姓名:

[

返回信息输入页面

10.3 update1.jsp

数据库的增删改查(精)

学习收藏数据库增删改查 --查询信息系和计算机系的学生,并按学生所在系和学号排序。select sno,sname,Sdept from Student where Sdept='CS'OR Sdept='IS' order by Sdept,sno ASC --查询学生表中最小的年龄。 select MIN(sage from student --查询课程名中包含“数据”的课程名。 select cno,cname from course where Cname like'%数据%' --查询先行课程为空值的课程号、课程名及学分 select cno,cname,ccredit from Course where Cpno is null --查询李勇选修的数据库课程的成绩 select grade from SC where Sno=(select Sno from Student where Sname='李勇'and Cno=(select Cno from Course where cname='数据库' --查询平均成绩分以上的学生的学号 select distinct sno from SC scx where (select AVG(Grade from SC scy

where scy.sno=scx.Sno>85 --求计算机系没有选修数据库课程的学生姓名 select sname from Student where Sno not in(select Sno from SC where Cno in(select Cno from Course where Sname='数据库'and Sdept='IS' --求至少选修了学号为S1所选修的全部课程的学生学号 select distinct sno from SC scx where not exists(select*from SC scy where scy.Sno='20021522'and not exists(select* from sc scz where scz.sno=scx.sno and https://www.doczj.com/doc/825237496.html,o=https://www.doczj.com/doc/825237496.html,o --求各系的系的学生人数的,并将结果按学生人数的降序排序 select Sdept,COUNT(sno from Student group by Sdept order by Sdept ASC --查询选修了数学课程并且成绩高于该门课程平均分的学生学号和成绩 select sno,grade from SC scx where Grade>=(select AVG(Grade from SC scy where Cno=(select Cno from Course where Cname='数学'and Cno=(select Cno from Course

数据库增删改查基本语句

数据库增删改查基本语句 adoquery1.Fielddefs[1].Name; 字段名 dbgrid1.columns[0].width:=10; dbgrid的字段宽度 adoquery1.Fields[i].DataType=ftString 字段类型 update jb_spzl set kp_item_name=upper(kp_item_name) 修改数据库表中某一列为大写select * from master.dbo.sysobjects ,jm_https://www.doczj.com/doc/825237496.html,ers 多库查询 adotable1.sort:='字段名称ASC' adotable排序 SQL常用语句一览 sp_password null,'新密码','sa' 修改数据库密码 (1)数据记录筛选: sql="select * from 数据表where 字段名=字段值orderby 字段名[desc] " sql="select * from 数据表where 字段名like '%字段值%' orderby 字段名[desc]" sql="select top10 * from 数据表where 字段名orderby 字段名[desc]" sql="select * from 数据表where 字段名in('值1','值2','值3')" sql="select * from 数据表where 字段名between 值1 and 值2" (2)更新数据记录: sql="update 数据表set 字段名=字段值where 条件表达式" sql="update 数据表set 字段1=值1,字段2=值2……字段n=值n where 条件表达式" (3)删除数据记录: sql="delete from 数据表where 条件表达式" sql="delete from 数据表"(将数据表所有记录删除) (4)添加数据记录: sql="insert into 数据表(字段1,字段2,字段3…) values(值1,值2,值3…)" sql="insert into 目标数据表select * from 源数据表"(把源数据表的记录添加到目标数据表)

SQL数据库中的增删改查总结1

一、增:有2种方法 1.使用insert插入单行数据: 语法:insert [into]<表名> [列名] values <列值> 例:insert into Strdents (姓名,性别,出生日期) values ('邢金聪','男','1990/6/15') 注意:如果省略表名,将依次插入所有列 2.使用insert,select语句将现有表中的数据添加到已有的新表中 语法:insert into <已有的新表> <列名> select <原表列名> from <原表名> 例:insert into addressList ('姓名','地址','电子邮件')selectname,address,email from Strdents 注意:查询得到的数据个数、顺序、数据类型等,必须与插入的项保持一致 二、删:有2中方法 1.使用delete删除数据某些数据 语法:delete from <表名> [where <删除条件>] 例:delete from awhere name='邢金聪'(删除表a中列值为邢金聪的行) 注意:删除整行不是删除单个字段,所以在delete后面不能出现字段名 2.使用truncate table 删除整个表的数据

语法:truncate table<表名> 例:truncate table addressList 注意:删除表的所有行,但表的结构、列、约束、索引等不会被删除;不能 用于有外建约束引用的表 三、改 使用update更新修改数据 语法:update <表名> set <列名=更新值> [where <更新条件>] 例:truncate table addressList 注意:删除表的所有行,但表的结构、列、约束、索引等不会被删除;不能 用于有外建约束引用的表 四、查 1.普通查询 语法:select <列名> from <表名> [where <查询条件表达试>] [order by<排序的列 名>[asc或desc]] 1).查询所有数据行和列 例:select * from a 说明:查询a表中所有行和 2).查询部分行列--条件查询 例:select i,j,kfrom a where f=5 说明:查询表a中f=5的所有行,并显示i,j,k3列

数据库基本知识(自己整理,初学者可以看一下,基于某MySql)

数据库

1常见数据库 1.1MySql : 甲骨文 1.2Oracle: 甲骨文 1.3SQL Server: 微软 1.4Sybase: 赛尔斯 1.5DB2: IBM 2MySql基础知识 2.1关系结构数据模型数据库 2.2SQL(Structured Query Language)结构化查询语言2.2.1DDL(Data Definition Language):数据定义语言,用来定义数据库对象:库、表、列等 操作数据库 CREATE DATABASE [IF NOT EXISTS]mydb1 USE mydb1 DROP DATABASE [IF NOT EXISTS] mydb1

ALTER DATABASE mydb1 CHARACTER SET utf8 操作表 插入表 CREATE TABLE stu( sid CHAR(6), sname VARCHAR(20), age INT, gender VARCHAR(10) ); 更改表 ALTER TABLE t_user ADD (student varcher(20)) ALTER TABLE t_user MODIFY gender CHAR(20) ALTER TABLE t_user CHANGE gender VARCHER(20) ALTER TABLE t_user REMANE genderTO genders ALTER TABLE t_user DROP gender 删除表 DROP TABLE t_user 2.2.2DML(Data Manipulation Language):数据操作语言,用来定义数据库记录(数据) 插入数据 INSERT INTO t_user VALUES() INSERT INTO 表名 VALUES(值1,值2,…)

JAVA数据库基本操作增删改查(精)

JAVA 数据库基本操作, 增删改查 package mypack; JAVA 数据库基本操作, 增删改查 import java.sql.Connection; import java.sql.ResultSet; import java.util.ArrayList; public class DbOper {//查询多行记录public ArrayList select({Connection conn =null; ResultSet rs =null; try {import java.sql.PreparedStatement; import java.sql.SQLException; PreparedStatement pstmt =null; ArrayList al =new ArrayList(; conn =DbConn.getConn(;pstmt =conn.prepareStatement(“select *from titles ”; rs =pstmt.executeQuery(;while (rs.next({Titles t =new Titles(;t.setTitleid(rs.getString(1;t.setTitle(rs.getString(2;al.add(t;}}catch (SQLExceptione { e.printStackTrace(;}finally {try {//TODO 自动生成catch 块if (rs!=null rs.close(;if (pstmt!=nullpstmt.close(;if (conn!=nullconn.close(;}catch (SQLExceptione { e.printStackTrace(;}}//TODO 自动生成catch 块 return al; }//查询单个对象public Titles selectOne(Stringtitleid{Connection conn =null; ResultSet rs =null; try {PreparedStatement pstmt =null; Titles t =new Titles(;

数据库增删改查

02.连接命令:mysql -h[主机地址] -u[用户名] -p[用户密码] 03.创建数据库:create database [库名] 04.显示所有数据库: show databases; 05.打开数据库:use [库名] 06.当前选择的库状态:SELECT DATABASE(); 07.创建数据表:CREATE TABLE [表名]([字段名] [字段类型]([字段要求]) [字段参数], ......); 08.显示数据表字段:describe 表名; 09.当前库数据表结构:show tables; 10.更改表格 11. ALTER TABLE [表名] ADD COLUMN [字段名] DATATYPE 12. 说明:增加一个栏位(没有删除某个栏位的语法。 13. ALTER TABLE [表名] ADD PRIMARY KEY ([字段名]) 14. 说明:更改表得的定义把某个栏位设为主键。 15. ALTER TABLE [表名] DROP PRIMARY KEY ([字段名]) 16. 说明:把主键的定义删除。 17.显示当前表字段:show columns from tablename; 18.删库:drop database [库名]; 19.删表:drop table [表名]; 20.数据操作 21.添加:INSERT INTO [表名] VALUES('','',......顺序排列的数据); 22.查询: SELECT * FROM [表名] WHERE ([条件]); 23.建立索引:CREATE INDEX [索引文件名] ON [表名] ([字段名]); 24.删除:DELETE FROM [表名] WHERE ([条件]); 25.修改:UPDATE [表名] SET [修改内容如name = 'Mary'] WHERE [条件]; 26. 27.导入外部数据文本: 28.1.执行外部的sql脚本 29.当前数据库上执行:mysql < input.sql 30.指定数据库上执行:mysql [表名] < input.sql 31.2.数据传入命令load data local infile "[文件名]" into table [表名]; 32.备份数据库:(dos下) 33.mysqldump --opt school>school.bbb 34. 35. 36. 37.提示:常用MySQL命令以";"结束,有少量特殊命令不能加";"结束,如备份数据库 38.一. 增删改查操作 39. 40.============================================================================ ===== 41.1. 增: 42.insert into 表名values(0,'测试'); 43.注:如上语句,表结构中有自动增长的列,也必须为其指定一个值,通常为0 44.insert into 表名(id,name) values(0,'尹当')--同上

SQL常用增删改查语句

SQLSQL常用增删改查语句 作者:hiker 一.Insert 插入语句 1.Insert into 表名(列名)values (对应列名值) //插入一行. 2.Insert into 新表名(列名) Select (列名) 旧表名 3.Select 旧表名.字段… Into 新表名from 旧表名 4.Select identity ( 数据类型,标识种子,标识增长量) as 列名 Into新表名 From 旧表名 5.Insert 表名(列名) Select (对应列名值) union Select (对应列名值) union Select (对应列名值) 二.Update 更新语句 1.Update 表名set 列名=’更新值’ where 更新条件 三.delete 删除语句 1.delete from 表名where 删除条件 2.truncate table 表名//删除表中所有行 四.select 基本查询语句 1.select 列名from 表名where 查询条件 order by 排序的列名asc或desc升/降 2.select 列名as 别名from 表名where 查询条件 3.select 列名from 表名where 列名is null //查询空值 4.select 列名, ‘常量值’ as 别名from 表名//查询时定义输出一列常量值 5.select top 5 列名from 表名//查询前5行 6.select top 5 percent 列名from 表名//查询前百分之5的数据行 五.select 函数查询语句 1.select LEN(Class_Name)from Class //查询class_Name字符串长度 2.select upper(Class_Name)from Class //查询class_Name并转换为大写 3.ltrim和rtrim //清除字符串左右空格 4.select REPLACE(card_No,'0','9')from CardRecord//修改列中字符串中的字符 列名字符串中0修改为9 5.select STUFF(Card_No,2,3,'8888')from CardRecord 列名字符串中第2个开始删除3个字符,再从第二个开始插入8888字符串 6.select GETDATE()//显示系统日期

mysql增删改查基本语句

mysql 增、删、改、查基本语句 数据库的链接和选择及编码 $link=mysql_connect("localhost","root","123456") or die("数据库连接失败".mysql_error()); $sel=mysql_select_db("login",$link) or die("数据库选择失败".mysql_error()); mysql_query("set names 'utf8'"); 添加数据 $link=mysql_connect("localhost","root","123456") or die("数据库连接失败".mysql_error()); $sel=mysql_select_db("login",$link) or die("数据库选择失败".mysql_error()); mysql_query("set names 'utf8'",$sel); $add="insert into title(title,content,username,time) values('$title','$content','$username',$time)"; $query=mysql_query($add); if($query){ echo "add sucess"; echo ""; } else echo "add false"; 删除数据 $link=mysql_connect("localhost","root","123456") or die("数据库连接失败".mysql_error()); $sel=mysql_select_db("login",$link) or die("数据库选择失败".mysql_error()); mysql_query("set names 'utf8'"); $id=$_GET['id']; $delete="delete from title where id='$id'"; $query=mysql_query($delete); if($query){ echo "delete sucess!"; echo ""; } else echo "delete false"; 改数据 $link=mysql_connect("localhost","root","123456") or die("数据库连接失败".mysql_error()); $sel=mysql_select_db("login",$link) or die("数据库选择失败".mysql_error()); mysql_query("set names 'utf8'",$sel);

数据库增删改查操作(2)(精)

数据库增删改查操作(2) 一、案例描述 程序运行的时候加载的界面如图1,包括添加、删除、修改和查询所有数据按钮,并实现相应功能。 图1 图2 单击“添加”按钮,插入一条记录,效果如图2;单击“查询全部”按钮,查询得到全部记录,并将结果打印出来,如图3;单击“删除”按钮,删除指定记录,如图4;单击“修改”按钮,修改指定记录,如图5。 图3

图4 图5 二、知识链接 (4)ContentValues类 ● ContentValues类和Hashtable类较为相似,它用于存储一些键值对,可以被ContentResolver类处理,但是它存储的键值对当中的键是一个String类型,而值都是基本类型。ContentValues类作为一个重要的参数在SQLiteDatabase中的insert,update等方法中使用。 ● ContentValues类有3种构造方法,格式分别如下: √ ContentValues(:使用默认的初始大小来创建一个空集。 √ ContentValues(int size):使用指定的初始大小size值来创建一个空集。 √ ContentValues(ContentValues from):复制给定的集合from,用于创建一组集合数值。 ● ContentValues类的常用方法介绍如下:

√ void clear(:清空集合中的所有数值。 √ boolean containsKey(String key):如果集合中包含了指定的关键字key,则返回true,否则返回false。 √ Object get(String key):返回关键字key对应的数值,返回数值类型为Object,通常还需要进行强制类型转换。 √ void put(String key,Integer value):将一个值加入到集合中,其中参数key表示集合中的关键字;参数value表示要添加的数据。ContentValues类还有很多put方法,主要的区别是第二个参数为其他数据类型,例如:put(String key,Byte value)、put(String key,Float value)、put(String key,Short value)、put(String key,byte[] value) √ void remove(String key):将某个关键字key的数值从集合中删除。 √ int size (:返回集合中数值的个数。 三、案例实现 (1)MainActivity.java中添加数据的方法 /** * 添加一条记录 */ public void add(View view { Random random=new Random(; SQLiteDatabase db=personHelper.getWritableDatabase(; //db.execSQL("insert into info(name,phone values(?,?",new Object[]{"张三"+random.nextInt(100,"186********"}; ContentValues values=new ContentValues(; values.put("name", "张三"+random.nextInt(100; values.put("phone", "186775411"+random.nextInt(100;

(完整word版)SQL常用的增删改查语句、视屏笔记

SQL:结构化查询语言,是国际化标准组织采纳的标准数据库语言 作用:数据库管理员可以用利用次语言操作数据库系统,即:SQL是一种能够被数据库系统读懂的操作语言。 T—SQL是微软公司针对SQL Server这种关系数据库所定义的一种SQL语言,用户可以完成Server数据库中的所有操作。 SQL的分类: (1):数据定义语言,DDL 用来创建数据库和数据库中的各种对象 数据库中的对象包括:表、视图、索引、存储过程、触发器 DDL常用的命令包括:create、alter、drop (2):数据操纵语言,DML 可以完成对数据库中数据的查询、更新、删除、插入的功能 DML常用的命令包括:select、update、delete、insert (3)数据控制语言,DCL DCL常用的命令包括:grant、revoke、deny (4)数据类型 1、数字数据类型 a、整型数据类型:bigint、int、smallint、tinyint b、浮点数据类型:float、real c、固定精度数据类型:decimal、numeric d、货币数据类型:money、smallmoney 将数据格式转换成字符串方法:STR(ID);---ID为数据类型,STR(ID)为字符串 2、字符数据类型:varchar、char、text、nchar、nvarchar、ntext 区别char和varchar数据类型: char数据类型是存放固定长度的字符 Varchar数据类型是存放动态长度的字符 char(14),实际放入到数据库的字符长度为14个字符,如果实际存储的长度小于定义的长度,那么数据库会在次字符串后面加上3个空格 1、insert语句: insert语句是属于SQL语言中的DML 作用:为表插入数据 你向一个表中插入一条新记录,但有一个字段没有提供数据。在这种情况下,有下面的四种可能: 1、如果该字段有一个缺省值(默认值),该值会被使用。 2、如果该字段可以接受空值,而且没有缺省值,则会被插入空值。 3、如果该字段不能接受空值,而且没有缺省值,就会出现错误。你会收到错误信息: The column in table mytable may not be null. 4、如果该字段是一个标识字段,那么它会自动产生一个新值。当你向一个有标识字段的表中插入新记录时,只要忽略该字段,标识字段会给自己赋一个新值。 使用INSERT语句可向文本型字段中插入数据。但是,如果你需要输入很长的字符串,你应该使用WRITETEXT语句。 语法:insert into 表名(列名1,列名2,…..) values(值1,值2,….) 注意:(列名1,列名2,…..)可以不写,这样的话,插入的values(值1,值2,….)中的值必须包含表中的所有列,不然会报错。

数据库语句增删改查

mysql语句用法,添加、修改、删除字段一,连接MySQL 二,MySQL管理与授权 三,数据库简单操作 四, 数据库备份 五,后记 一,连接MySQL 格式:mysql -h 远程主机地址 -u 用户名 -p 回车 输入密码进入: mysql -u root -p 回车 Enter password: ,输入密码就可以进入 mysql> 进入了 退出命令:>exit 或者ctrl+D 二,MySQL管理与授权 1.修改密码:

格式:mysqladmin -u 用户名 -p 旧密码 password 新密码 2.增加新用户: >grant create,select,update....(授予相关的操作权限) ->on 数据库.* -> to 用户名@登录主机 identified by '密码' 操作实例: 给root用户添加密码: # mysqladmin -u root password 52netseek 因为开始root没有密码,所以-p旧密码一项可以省略. 登陆测试: # mysql -u root -p 回车 输入密码,成功登陆. 将原有的mysql管理登陆密码52netseek改为52china. # mysqladmin -u root -p 52netseek password '52china' 创建数据库添加用户并授予相应的权限: mysql> create database phpbb; Query OK, 1 row affected (0.02 sec)

mysql> use phpbb; Database changed mysql> grant create,select,update,insert,delete,alter -> on phpbb.* -> to phpbbroot@localhost identified by '52netseek'; Query OK, 0 rows affected (0.00 sec) 授予所有的权限: >grant all privileges >on bbs.* >to bbsroot@localhost identified by '52netseek' 回收权限: revoke create,select,update,insert,delete,alter on phpbb.* from phpbbroot@localhost identified by '52netseek'; 完全将phpbbroot这个用户删除: >use mysql >delete from user where user='phpbbroot' and host='localhost'; >flush privileges; 刷新数据库 三,数据库简单操作

Mysql数据库·增删改查

Mysql Oracle(甲骨文) 大型数据库 MySql 中小型数据库 DB2 SqlServer ..... Mysql的发展: 瑞典的Mysql AB公司 2008年Sun公司(JAVA) 2009年Oracle 收购sun公司 IBM 69亿美元sun Eclipse(日蚀) Oracle 74亿美元sun Mysql的简单使用: 1.登陆mysql数据库 win+r --->cmd mysql -uroot -p1234 修改密码:mysql> set password for rootlocalhost = password('1234'); 此处可能存在异常情况原因:a、未配置环境变量b、Mysql服务未开启(net start mysql) 2.对库的操作 a.查看所有的库 show databases; 系统自带库: information_schema mysql test b.创建库 create database day01;(不指定编码,跟随数据库系统编码) create database db1 default character set gbk;(指定编码) 查看创建库的语句: show create database 库名. 修改库的编码: alter database day01 default character set utf8; c.删除库 drop database 库名.

drop database day01; 注意: 系统自带的三个库不能删除. d.使用库 use db1; 3.对表的操作 表:二维关系表有行有列的关系表. 记录:表中的一行数据. 字段:表中的一列. 常用的字段类型: 字符串类型: varchar(长度) 、char 数值类型: int(整数) float double(小数) 日期类型: date a.创建表 员工表:员工号性别年龄职位薪水入职日期 create table emp( empno varchar(4), name varchar(30), sex varchar(5), age int(3), job varchar(30), salary int(5), hiredate date ); b.查看所有的表 show tables; c.查看建表语句 show create table 表名. d.查看表结构 desc 表名. e.往表中插入数据 e1.给表中所有的字段插入数据 insert into emp (empno,name,sex,age,job,salary,hiredate) values ('1001','zhangsan','m',22,'developer',10000,'2015-12-21'); 简写形式: insert into emp values ('1002','lisi','m',23,'test',8000,'2015-10-10'); e2.给表中部分字段插入数据 insert into emp(empno,name,sex,age) values ('1003','cuihua','w',18);

SQL单词及数据库增删改查

数据库(Database, DB) 数据库管理系统(Database Management System, DBMS) 数据库管理员(Database Administrator, DBA) 数据库系统(Database System, DBS) SQL:结构化查询语言(structured Query Language)DB: 数据库(database) DBA:数据库管理员(database administrator)DBMS:数据库管理系统(database management system) Toa d:癞蛤蟆,一款开发数据库的可视化软件 Roo t: 根 Re la tion shi p:关系 U ser:用户 Ta ble:表 P ro ce dure:存储过程 Fun c tion:函数 Tri gger:触发器 Vie w:视图 In de x:索引 C rea te:创建 Dro p:删除 Ta ble:表 En gine:引擎 Co lu mn:列 P ri ma ry:主要的 Primary key:主键 Na me:列名 Au to:自动的 In cre men t:可增长的 Au to_In cre men t: 自动增长 Da ta Ty pe:数据类型 Not null:非空 Co mmen t:注释 Cha ra c ter se t:字符集 Co lle c tion:采集(对比方法) Fo reig n:外部的

Fo reig n key:外键 SQL 数据化查询语言 DML数据操作语言(Data Manipulation Language)DCL数据控制语言(Data Control Language)DQL: 数据查询语言(Data Query Language)DDL: 数据定义语言(Data Definition Language) in ser t:插入(增) de le te:删除(删) up da te:修改(改) se le c t:查询(查) in to:到哪里。。。 fro m:从哪里来。。。 va lue:值 u nio n:拼接 wh ere:在。。。。。 se t:设置 trun ca te:截断 im por t:导入 ex por t:导出 Or der:顺序 Or der by:排序 Re p la ce:替换 Now:现在 Cei ling:天花板 F loo r:地板 Si gn:符号 Con ver t:转换 Di s tin c t:独特的(去重复的) Li mi t:限制 li ke:像。。。一样 be t wee n 。。。and:在。。。。和。。。。之间 su m:和 avg:平均值

sql与mysql可视化增删改查

MYSQL与SQL可视化增,删,改 1.建立表格: 属性: public JTable table; public DefaultTableModel dftm; public String[] columnNames= new String[] { "序号", "用户名", "密码"}; // 定义数组表示表格标题 dftm = new DefaultTableModel(null, columnNames); /*for (int i = 0; i < 10; i++) { Object[] content = { 1, 2, 3 }; dftm.addRow(content);// 增加行 }*/ initTable(dftm); JTable table = new JTable(dftm);// 根据TableModel显示内容 JScrollPane src = new JScrollPane(table); //给表格增加滚动条 src.setBounds(50, 150, 500, 200); //设置滚动条位置与大小 contentPane.add(src); 2.“修改用户”按钮的代码: JButton rewamp = new JButton("\u4FEE\u6539\u7528\u6237"); rewamp.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { int id=Integer.parseInt(txtId.getText()); String name=txtName.getText();//取得用户名文本框的值 String pwd=txtPwd.getText();//取得用户密码文本框的值 String sqlUpdate="UPDATE userlist set name='" + name+"', password='"+pwd+"' where Id="+id; DBComm dbco=new DBComm(); dbco.openConnection(); try { dbco.executeUpdate(sqlUpdate);

简单的连接数据库增删改查(1)

package com.suqin.Tank2; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.util.Vector; import javax.swing.JScrollPane; import javax.swing.table.AbstractTableModel; public class Mxstu extends AbstractTableModel { // 集合 Vector rowDate, columnnNames; // 连接数据库 Connection conn; // 执行sql 语句 PreparedStatement pst; // 集合级 ResultSet rs;

// 驱动程序 public String Driver = "com.mysql.jdbc.Driver"; // 连接地址mysql数据库名称public String Url = "jdbc:mysql://127.0.0.1:3306/mysql"; // 用户名 public String name = "root"; // 用户密码 public String password = "admin"; //sql语句 String sql; public void Showsql(String sql) { if (sql=="") { sql="select * from students"; } columnnNames = new Vector(); // 设置列 columnnNames.add("学号"); columnnNames.add("姓名"); columnnNames.add("性别"); columnnNames.add("年龄"); columnnNames.add("籍贯"); columnnNames.add("系别"); // 设置行内容 rowDate = new Vector(); // 夹在驱动程序 try { Class.forName(Driver); conn = DriverManager.getConnection(Url, name, password); // 执行语句 //sql = ("select * from students"); pst = conn.prepareStatement(sql); // 得到结果集合 rs = pst.executeQuery(); // 得到记录 while (rs.next()) { // 设置行 Vector hang = new Vector(); hang.add(rs.getInt(1)); hang.add(rs.getString(2)); hang.add(rs.getString(3)); hang.add(rs.getInt(4)); hang.add(rs.getString(5));

数据库基础知识点

1. 数据库的作用 持久化:永久得保存数据。 数据挖掘:通过以有信息,发掘出有价值的信息。 冗余:数据的重复出现,(插入,删除,修改)带来一些异常。查询时可以提高查询的效率。 2. 创建数据库,创建表,确定表中字段的类型 数据文件:.mdf(main data file主要数据文件) .ldf(log data file 日志数据文件) 数据完整性:保证数据库的数据是客观真实的,没有错误的。 数据库登录: 方式一:window身份验证,如果你具有登录操作系统的权限,你就可以登录登录数据库。 方式二:sql server身份验证,能够登录操作系统,还需要知道登录名和密码。 用户名sa 数据库管理者,他是数据库的最大权限拥有者 常用数据类型: 整型:bigint int smallint tinyint 货币:money smallmoney 时间:datetime smalldatetime 位:bit (0,1) 字符串:char varchar text(一个字符表示8位) Nchar nvarchar ntext(一个字符表示16位) 差异:1. 字符串类型需要加长度。Char(4) text,ntext不需要加长度 2. char varchar的区别 Char是固定长度的,char(8) 存储了’abc’会在’abc’之前加5个空格 Varchar 是可变长的varchar(20) 存储了’abc’,长度就是3 3. 如何分离附加数据库 4. 对数据库的增删改查(操作的是表中的数据) T_sql:sql+sql server对标准的加强 Sql当中不区分大小写。 增(insert):insert into表名values(字段1的值,字段2的值……) insert into表名(字段1,字段2)values(字段1的值,字段2的值……)—插入部分数据,其他的字段可以不插入,是因为允许为空

相关主题
文本预览
相关文档 最新文档