|
如果你的root现在有密码了,那么修改密码为abc的命令是:
mysqladmin -u root -p password youyou
注意,命令回车后会问你旧密码,输入旧密码之后命令完成,密码修改成功。
---------02_mysql_started
create database mydata; //创建一个数据库
use mydata; //使用当前已经创建的数据库
create table dept //创建dept表
(
deptno int primary key,
dname varchar(14),
loc varchar(13)
);
create table emp
(
empno int primary key,
ename varchar(10),
job varchar(10),
mgr int,
hiredate datetime,
sal double,
comm double,
deptno int,
foreign key (deptno) references dept(deptno) #外键deptno参考dept表的deptno
);
命令
\. 执行一个SQL的脚本文件,用一个文件名作为参数
例如 \. c:\\mysql_script\\mydata.sql
create table salgrade #创建薪水等级表salgrade
(
grade int primary key,
losal int,
hisal int
);
---------03_page_seperation
show databases; #查看当前MYSQL环境下有多少个数据库
show tables; #查看当前使用中数据库下面有多少张表。
desc dept; #查看dept表的表结构
insert into dept values (10,'A','A'); #往dept表里面插入一条记录
commit; #提交。使前面输入的一段DML语句生效
select * from dept order by deptno desc limit 3, 2; #倒序,从第3条往后数2条记录
---------04_auto_increment
drop table article; #删除article这个已经存在的表。
create table article
(
id int primary key auto_increment, #创建一个自动递增字段
title varchar(255)
);
insert into article values(null,'a'); #插入递增值的方式用null
insert into article (title) values ('c'); #插入递增值的 方式2
---------05_datetime;
select now(); #取得当前日期,其中now()是函数
select date_format(now(), '%Y-%m-%d %H:%i:%s'); //格式化当前日期
insert into emp values(9999,'test','clerk',7369,'1981-12-23 12:23:23',8000,80,10); #插入日期,用字符串,符合日期特定格式即可
---------06_mysql_jdbc1
---------07_mysql_jdbc2
引入相应的JAR驱动包后,输入关键代码:
conn =
DriverManager.getConnection("jdbc:mysql://localhost/mydata?user=root&password=mima");
stmt = conn.createStatement();
rs = stmt.executeQuery("select * from dept");
---------08_article_1
\. D:\share\BBS\WebContent\bbs.sql #执行一段SQL脚本语句
select database(); #显示当前所操作的数据库
---------09_article_2
#数据库表里面的中文化问题
alter database bbs character set gbk; #设置字符集先
show full columns from tablename; #查看表里面(中文)字段所用的字符集
status; ## 查看全局的字符集设置,如果以下4个都为同样的,比如gbk则中文支持一定OK,
## 如果不一样,则更改my.ini默认的配置文件。
。。。
Server characterset: gbk
Db characterset: gbk
Client characterset: gbk
Conn. characterset: gbk
。。。
#设置好字符集之后,在Lomboz eclipse下面展示就不会出现中文乱码了
#递归写书的源码如下:
import java.sql.*;
public class ArticleTree {
public static void main(String[] args) {
new ArticleTree().show();
}
public void show() {
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
try {
conn =
DriverManager.getConnection("jdbc:mysql://localhost/bbs?user=root&password=youmeta");
stmt = conn.createStatement();
rs = stmt.executeQuery("select * from article where pid = 0");
while(rs.next()) {
System.out.println(rs.getString("cont"));
tree(conn, rs.getInt("id"), 1);
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
if(rs != null) {rs.close(); rs = null;}
if(stmt != null) {stmt.close(); stmt = null;}
if(conn != null) {conn.close(); conn = null;}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
private void tree(Connection conn, int id, int level) {
Statement stmt = null;
ResultSet rs = null;
// StringBuffer strPre = new StringBuffer("");
// for(int i=0; i<level; i++) {
// strPre = strPre.append(" ");
// }
String strPre = new String("");
for(int i=0; i<level; i++) {
strPre = strPre + " ";
}
try {
stmt = conn.createStatement();
String sql = "select * from article where pid = " + id;
rs = stmt.executeQuery(sql);
while(rs.next()) {
System.out.println(strPre + rs.getString("cont"));
if(rs.getInt("isleaf") != 0) {
tree(conn, rs.getInt("id"), level+1);
}
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
if(rs != null) {rs.close(); rs = null;}
if(stmt != null) {stmt.close(); stmt = null;}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
} |
|
|