jdbc java远程连接mysql数据库服务器
首先,需要注意以下几点:
1、手机需要获得可以访问网络的权限;
2、导入的jdbc驱动的版本需要与mysql服务器的版本相近:


3、mysql默认的访客是只允许本机(localhost),不允许其他主机运程访问,需要修改为所有主机,在命令行进行操作:
mysql -u用户名 -p密码
mysql>use mysql;
mysql>select 'host' from user where user='root';
mysql>update user set host = '%' where user = 'root';
其中,%表示所有的主机
4、进行连接操作时需要新开线程;
5、编码问题,mysql中表的编码要与连接的编码方式相同:


连接操作:
1、设置主机、用户名、密码、连接方式等:
static private String connectString = "jdbc:mysql://192.168.199.228:3306/yang_project"
+ "?autoReconnect=true&useUnicode=true&useSSL=false"
+ "&characterEncoding=utf-8&serverTimezone=UTC";
static private String sql_user="root";
static private String sql_pwd="123456";
2、导入jdbc驱动包,并将相关的类引入代码文件:
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
3、建立连接(需要在新线程中):
new Thread(){
public void run(){
try {
Connection con = DriverManager.getConnection(connectString, sql_user, sql_pwd);
con.close();
} catch (SQLException e) { //连接失败
e.printStackTrace();
}
}
}.start();
增删查改(需要新线程和try/catch):
1、增
Connection con = DriverManager.getConnection(connectString, sql_user, sql_pwd);
Statement stmt=con.createStatement();
String InsertString = "insert into user(user_name, user_password, user_age, user_height, user_weight, user_sex, user_info) " +
"values('"+name.getText().toString()+
"', '"+password.getText().toString()+
"', '"+age.getText().toString()+
"', '"+height.getText().toString()+
"', '"+weight.getText().toString()+
"', '"+sexType+
"', '"+info.getText().toString()+"');";
int i = stmt.executeUpdate(InsertString);
con.close();
stmt.close();
2、删
String DeleteString = "delete from steps where user_name = '"+myname+"' and steps_date = '"+delete_date+"';";
int i = stmt.executeUpdate(DeleteString);
3、查
QueryString = "select * from steps where user_name = '"+myname+"' order by steps_date DESC;";
ResultSet rs = stmt.executeQuery(QueryString); while(rs.next()){ steps_date = rs.getString("steps_date"); steps_number = rs.getString("steps_number"); }
4、改
String QueryString = "update user set user_height = '"+myheight +"' where user_name = '"+myname+"';";
int i = stmt.executeUpdate(QueryString);
jdbc java远程连接mysql数据库服务器的更多相关文章
- 用MyEclipse10.0远程连接Mysql数据库服务器
说明:本文档所有的操作均在满足以下条件的情况下操作, A.远程Linux服务器已经安装好MySQL数据库 B.本地电脑可以ping通远程服务器 C.已经成功安装了Myeclipse 一.下载mysql ...
- Windows操作系统下远程连接MySQL数据库
用Eclipse做一个后台项目,但是数据库不想放在本地电脑,于是买了一个腾讯云服务器(学生有优惠,挺便宜的),装上MySQL数据库,但是测试连接的时候,发现总是连接不是上,但是本地数据库可以连接,于是 ...
- JDBC Java 程序从 MySQL 数据库中读取数据,并备份到 xml 文档中
MySQL 版本:Server version: 5.7.17-log MySQL Community Server (GPL) 相关内容:JDBC Java 程序从 MySQL 数据库中读取数据,并 ...
- Navicat for mysql 远程连接 mySql数据库10061、1045错误
原文地址:http://www.111cn.net/database/mysql/46377.htm 有朋友可能会碰到使用Navicat for mysql 远程连接 mySql数据库会提示10061 ...
- navcat无法远程连接mysql数据库解决办法
navcat无法远程连接mysql数据库,一般都是因为本地ip没有访问权限,服务器上执行下面指令即可解决 mysql -u root -p GRANT ALL PRIVILEGES ON *.* TO ...
- 远程连接MySQL数据库问题总结
远程连接MySQL数据库时,陆陆续续遇到了一些杂七杂八的问题,相信很多人也曾经遇到过这类问题,下面总结归纳在下面,方便以后直接查找. 1:出现ERROR 2003 (HY000): Can't con ...
- SQLServer 2005客户端远程连接sql2008 数据库服务器
SQL2005客户端远程连接sql2008 数据库服务器 by:授客 QQ:1033553122 准备工作: 客户端所在pc机配置: 配置数据源 控制面板-管理工具-ODBC数据源-系统DSN-添加- ...
- 【MySQL解惑笔记】Navicat 无法远程连接MySQL数据库
安装好Navicat之后远程连接MySQL数据库出现以下报错截图: 出现以上截图怀疑是mysql用户权限不够: GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.1 ...
- 远程连接 mySql数据库
远程连接 mySql数据库 一.安装并配置MySQL1.安装MySQL:运行mysql-essential-6.0.11-alpha-win32,按“MySQL+6.0+Windows下安装图解”完成 ...
随机推荐
- docker 报ls: cannot open directory software/: Permission denied
问题原因及解决办法 原因是CentOS7中的安全模块selinux把权限禁掉了,至少有以下三种方式解决挂载的目录没有权限的问题: 1.在运行容器的时候,给容器加特权,及加上 --privileged= ...
- leetcode991
class Solution: def brokenCalc(self, X: 'int', Y: 'int') -> 'int': if X>=Y : return Y-X else: ...
- 异常+远程控制Linux-14
什么是异常 a=8950/0 ZeroDivisioonError: division by zero print (a) ************** b = [1,2] ...
- 软件工程第三个程序:“WC项目” —— 文件信息统计(Word Count ) 命令行程序
软件工程第三个程序:“WC项目” —— 文件信息统计(Word Count ) 命令行程序 格式:wc.exe [parameter][filename] 在[parameter]中,用户通过输入参数 ...
- AJAX之发送GET请求
用jquery发送get请求 function AjaxSubmit1() { $.ajax({ //用jQuery发送 url: '/app04/ajax1/', type: 'GET', data ...
- ORM一对多查询对象
正向查询: 取人民日报出版社出版的所有书籍 方式一: pub_obj = Publish.objects.filter(name='人民日报')[0] ret = Book.objects.filte ...
- ReactiveX 学习笔记(11)对 LINQ 的扩展
Interactive Extensions(Ix) 本文的主题为对 Ix 库,对 LINQ 的扩展. Buffer Ix.NET Buffer Ix.NET BufferTest Buffer 方法 ...
- ReactiveX 学习笔记(5)合并数据流
Combining Observables 本文的主题为合并 Observable 的操作符. 这里的 Observable 实质上是可观察的数据流. RxJava操作符(四)Combining An ...
- Nginx使用GZIP来压缩网页
HTTP协议上的GZIP编码是一种用来改进web应 用程序性能的技术.大流量的WEB站点常常使用GZIP压缩技术来让用户感受更快的速度.这一般是指WWW服务器中安装的一个功能,当有人来访问这个服务器中 ...
- C++ 设置透明背景图片
背景: 有两个图片,一个是目标背景图片, 一个是带有自身背景色彩的彩色图片 先将这彩色图片绘制到目标背景图片中, 这一步通过BITBLT就可实现. 但实 ...