朕已无力吐糟实验室的网速了。。。html
10点半左右开机,网线、wifi都连不上,右下角wifi连上但有黄色叹号,java
QQ错误码:0x00000001 表示访问网络失败mysql
ipconfig,擦,本机为私有IP,连路由器都连不上,搞毛线啊。git
使出必杀技:疑难解答,显示无线访问点问题,但其余人又能连上,无语;sql
思科路由器太不稳定了吧,使出终极必杀技,保持黄色叹号的状态,吃饭睡觉2小时左右,回来发现黄色叹号消失,——这绝壁是路由器问题吧?数据库
连上以后上Q,数组
QQ错误码:0x00000050 表示DNS错误服务器
QQ电脑管家的DNS选优工具测试一下,反正都那么慢,还原到初试DNS好了;网络
QQ能够登陆了,世界再次恢复和平。函数
mysql 服务器支持 # 到该行结束、-- 到该行结束 以及 /* 行中间或多个行 */ 的注释方格: mysql> SELECT 1+1; # 这个注释直到该行结束 mysql> SELECT 1+1; -- 这个注释直到该行结束 mysql> SELECT 1 /* 这是一个在行中间的注释 */ + 1; mysql> SELECT 1+ /* 这是一个 多行注释的形式 */ 1; 尽管服务器理解刚才描述的注释句法,但 MySQL 客户端的语法分析在 /* ... */ 注释方式上还有所限制:
navicat中配置字体为consoles,F6打开命令行界面,简直是Matlab的感脚啊。
mysql> select * from student;
+----+------+--------+
| ID | name | class |
+----+------+--------+
| 1 | tom | 计算机 |
| 0 | NULL | NULL |
| 0 | NULL | NULL |
+----+------+--------+
3 rows in setmysql> show tables;
+------------------+
| Tables_in_db0703 |
+------------------+
| student |
+------------------+
1 row in setmysql> show table;
1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
mysql> show database;
1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'database' at line 1
mysql> create database demo;
Query OK, 1 row affectedmysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| db0703 |
| demo |
| mysql |
| test |
+--------------------+
5 rows in setmysql> select * from student;
+----+------+--------+
| ID | name | class |
+----+------+--------+
| 1 | tom | 计算机 |
| 0 | NULL | NULL |
| 0 | NULL | NULL |
+----+------+--------+
3 rows in setmysql> use demo;
Database changed
mysql> show tables;
Empty setmysql> create table demoTable(
-> ID int not null,
-> user varchar(16) not null
-> );
Query OK, 0 rows affected
mysql> show tables;
+----------------+
| Tables_in_demo |
+----------------+
| demotable |
+----------------+
1 row in setmysql> --删除表
-> --drop table demoTable;
-> --显示表的结构
-> describe demoTable;
1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '--删除表--drop table demoTable;
--显示表的结构 #【此处“--”后面加个空格就行了】
describe de' at line 1
mysql> describe demoTable;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| ID | int(11) | NO | | NULL | |
| user | varchar(16) | NO | | NULL | |
+-------+-------------+------+-----+---------+-------+
2 rows in setmysql> insert into demotable values(1,'admin');
Query OK, 1 row affectedmysql> select * from demotable;
+----+-------+
| ID | user |
+----+-------+
| 1 | admin |
+----+-------+
1 row in setmysql> delete from demotable where id=2;
Query OK, 0 rows affectedmysql>
简单入门就先show databases;再use DBname;
本例中引入mysql-connector-java-5.1.22.zip中jar包(参考http://www.cnblogs.com/fickleness/archive/2013/06/27/3158687.html)
运行结果
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class TestMysql { public static void main(String[] args){ // 驱动程序名 String driver = "com.mysql.jdbc.Driver"; // URL指向要访问的数据库名db0703 String url = "jdbc:mysql://localhost:3306/db0703"; // MySQL配置时的用户名 String user = "root"; // MySQL配置时的密码 String password = ""; try { // 加载驱动程序 Class.forName(driver); // 连续数据库 Connection conn = DriverManager.getConnection(url, user, password); if(!conn.isClosed()) System.out.println("Succeeded connecting to the Database!"); // statement用来执行SQL语句 Statement statement = conn.createStatement(); // 要执行的SQL语句 String sql = "select * from student"; // 结果存储到rs中,可能多条数据,须要循环读取 ResultSet rs = statement.executeQuery(sql); System.out.println("-----------------"); System.out.println("执行结果以下所示:"); System.out.println("-----------------"); System.out.println(" id" + "\t" + "name"+"\t"+"class"); System.out.println("-----------------"); //初始化变量 int ID=-1; String name = null; String classname= null; //循环读取 while(rs.next()) { // 读取3列数据 ID = rs.getInt("ID"); name=rs.getString("name"); classname=rs.getString("class"); //输出结果 System.out.println(ID + "\t" + name+"\t"+classname); // 首先使用ISO-8859-1字符集将name解码为字节序列并将结果存储新的字节数组中。 // 而后使用GB2312字符集解码指定的字节数组 //name = new String(name.getBytes("ISO-8859-1"),"GB2312"); } //依次关闭ResultSet对象、Statement对象、Connection对象,最好用if判断一下是否为空 rs.close(); statement.close(); conn.close(); } catch(ClassNotFoundException e) { System.out.println("Sorry,can't find the Driver!"); e.printStackTrace(); } catch(SQLException e) { e.printStackTrace(); } catch(Exception e) { e.printStackTrace(); } } }
http://yanqiaosun.blog.163.com/blog/static/216133133201302795115878/
1、java链接MySQL数据库
一、安装mysql connector/j驱动
添加jdbc驱动: mysql-connection-java-5.1.10-bin.jar
二、链接MySQL数据库
在java.sql包中存在DriverManager类、Connection接口、Statement接口和ResultSet接口。
DriverManager类:管理驱动程序和链接数据库
Connection接口:管理创建好的数据库链接
Statement接口:执行sql语句
ResultSet接口:存储数据库返回的记录
forName()方法指定MySQL驱动的语法以下:
class.forname("com.mysql.jdbc.Driver");
class.forName("org.git.mysql.Driver");
两个驱动其实是同样的,后者继承前者。
getConnection()方法有三个参数,分别是url、user和password。
url指定idbc的数据源,数据源必需要指定他的IP、端口号等。
Connection connection=DriverManager.getConnection(url,user,password); //建立connection对象
例子:
链接本地计算机的mysql数据库,mysql使用默认端口3306,链接的数据库是syq,使用用户root来链接,root用户的密码是123456.链接mysql
的语句以下:
Connection
connection=DriverManager.getConnection("jdbc:mysql://localhost:3306/syq","root","123456");
经过这个语句就能够链接到MySQL的syq数据库了。该语句也能够写成下面的形式:
String url="jdbc:mysql://localhost:3306/syq"; //获取协议、IP、端口等信息
String user="root"; //获取数据库用户名
String password="123456";//获取数据库用户密码
Connection connection=DriverManager.getConnection(url,user,password); //建立Connection对象
2、java操纵MySQL数据库
链接MySQL数据库以后,能够对MySQL数据库中的数据进行查询、插入、更新、删除等操做。Statement接口主要用来执行sql语句,其中定义一些执行sql语句的方法。sql语句执行后返回结果由ResultSet接口管理。经过这两个接口,java能够方便的操做MySQL数据库。
一、建立Statement对象
Connection对象调用createStatement()方法来建立Statement对象,其代码以下:
Statement statement=connection.createStatement();
其中,statement是Statement对象;createStatement()方法返回Statement对象。经过这个java语句就能够建立Statement对象。Statement对
象建立成功后,能够调用其中的方法来执行SQL语句。
二、使用select语句查询数据
Statement对象能够调用excuteQuery()方法执行select语句。select的查询结果返回给ResultSet对象。调用excuteQuery()方法的代码是:
ResultSet result=statement.excuteQuery("select语句");
经过该条语句能够将查询结果存储 到result中。查询结果可能有多条记录,这就须要使用循环语句来读取全部记录,其代码以下:
while(result.next()){
String s=resule.getString("字段名");
System.out.print(s);
}
例子:
从score表中查询学生的学号、考试科目和成绩,部分代码:
Statement statement=connection.createStatement();
Result result=statement.excuteQuery("select stu_id,c_name,grade from score");
while(result.next()){
String id=result.getString("stu_id");
String course=result.getString("c_name");
String grade=result.getString("grade");
System.out.println(id+" "+course+" "+grade);
}
三、插入更新或者删除数据
excuteQuery()方法只能执行select语句。若是须要进行插入、更新或者删除操做,则须要Statement对象调用excuteUpdate()方法来实现。
excuteUpdate执行完后,返回影响表的行数。下面是调用excuteUpdate()方法的代码:
int result=statement.excuteUpdate(sql);
其中“sql”必须是insert语句、update语句或者delete语句。该方法返回的结果为数字。
例子:
下面向score表插入一条新记录,部分代码:
Statement statement=connection.createStatement();
String sql="insert into score values(21,902,'英语',85)";
int result=statement.excuteUpdate(sql);
System.out.println(result);
更新score表中id为16的记录,将该记录的grade字段值 改成100,部分代码:
Statement statement=connection.createStatement();
String sql="UPDATE score set grade=100 where id=16";
int result=statement.excuteUpdate(sql);
System.out.println(result);
删除score表中id为16的记录,部分代码:
Statement statement=connection.createStatement();
String sql="delete from score where id=16";
int result=statement.excuteUpdate(sql);
System.out.println(result);
四、执行任意sql语句
没法肯定要执行的语句是查询仍是更新时,可使用excute()函数。该函数的返回结果是boolean类型的值,返回值为true表示执行查询语句,false表示执行更新语句。下面是调用excute()方法的代码:
boolean result=statement.excute(sql);
五、关闭建立的对象
当全部sql语句都执行完毕后,须要关闭建立的Connection对象、Statement对象和Result对象。关闭对象的顺序与建立对象的顺序相反,关闭的顺序为ResultSet对象、Statement对象、Connection对象。对象调用close()方法来关闭对象,而后将对象的值设为空。
关闭对象部分代码:
if(result!=null){ //判断ResultSet对象是否为空
result.close();//调用close()方法关闭ResultSet对象
result=null;
}
if(statement!=null){
statement.close();
statement=null;
}
if(connection!=null){
connection.close();
connection=null;
}
3、java备份与还原MySQL数据库
java语言中能够执行mysqladmin命令来备份MySQL数据量,也能够执行mysql命令来还原mysql数据库。
一、java备份MySQL数据库
一般使用mysqldump命令来备份MySQL数据库,其语句以下:
mysqldump -u username -pPassword dbname table1 table2 …>BackupName.sql
调用exec()方法代码:
Runtime rt=Runtime.getRuntime();
rt.exec("命令语句");
例子:Windows操做系统下java备份MySQL数据库:
String str="mysqldump -u root -p123456 --opt test>C:/test.sql";//将mysqldump命令的语句赋值给str
Runtime rt=Runtime.getRuntime();//建立Runtime对象
rt.exec("cmd/c"+str);//调用exec()函数
二、java还原MySQL数据库
一般使用mysql命令来还原MySQL数据库,其语句以下:
mysql -u root -p [dbname]<backup.sql
Java还原MySql数据库:
String str="mysql -u root -p123456 test<C:/test.sql";//将test.sql文件还原到名为test的数据库中
Runtime rt=Runtime.getRuntime();
rt.exec("cmd/c"+str);
所有内容