Java数据库编程,
Java数据库编程,
DOS命令登录MySQL数据库:mysql -h 127.0.0.1 -u root -p root
查看版本信息------------------------------select version(),user()
操作数据库-创建--------------------------CREATE DATABASE 数据库名;
查看数据库列表---------------------------SHOW DATABASES;
选择数据库----------------------------------USE 数据库名;
删除数据库----------------------------------DROP DATABASE 数据库名;
使用SQL语句操作数据表:
创建表:CREATE TABLE [IF NOT EXISTS] 表名(
字段1 数据类型 [字段属性|约束] [索引] [注释],
字段2 数据类型 [字段属性|约束] [索引] [注释],
.......
字段n 数据类型 [字段属性|约束] [索引] [注释]
)[表类型] [表字符集] [注释];
单字段主键语法:
定义字段时指定主键:
CREATE TABLE [IF NOT EXISTS] 表名(
字段1 数据类型 PRIMARY KEY;
......
);
定义完所有字段后指定主键:
CREATE TABLE [IF NOT EXITST] 表名(
字段1数据类型;
......
[CONSTRAINT<约束名>] PRIMARY KEY[列名]
);
多字段联合主键:
CREATE TABLE [IF NOT EXISTS] 表名(
......
PRIMARY KEY[字段1,字段2......]
);
注释:
CREATE TABLE test(
`id` int(11) UNSIGNED COMMENT ‘编号’
)COMMENT=’测试表’;
编码格式设置:
CREATE TABLE [IF NOT EXISTS] 表名(
#省略代码
)CHARSET = 字符集名;
查看表-----------------------------------------SHOW tables;
查看表的定义-------------------------------DESCRIBE 表名;或 DESC 表名;
删除表-----------------------------------------DROP TABLE [IF EXISTS] 表名;
操作默认存储引擎-------------------------SHOW VARIABLES LIKE ‘storage_engine%’;
指定表的存储引擎:
CREATE TABLE 表名(
#省略代码
)ENGINE=存储引擎;
查看MySQL帮助---------------------------HELP 查询内容;
查看某一数据类型-------------------------HELP INT;
约束:
NOT NULL非空,UNIQUE KEY唯一的,PRIMARY KEY 主键,FORGIEN KEY 外键,AUTO_INCREMENT 自动增长,DEFAULT 默认
第三章:高级查询<一>
修改表名:ALTER TABLE<旧表名> RENAME<新表名>;
添加字段:ALTER TABLE 表名 ADD 字段名 数据类型 [属性];
修改字段:ALTER TABLE 表名 CHANGE 原字段名 新字段名 数据类型 [属性];
删除字段:ALTER TABLE 表名 DROP 字段名;
添加主键约束:ALTER TABLE 表名 ADD CONSTRAINT 主键名 PRIMARY KEY 表名(主键字段);
添加外键约束:ALTER TABLE 表名 ADD CONSTRAINT 外键名 FOREIGN KEY(外键字段)REFERENCES 关联表名(关联字段)
插入单行数据:INSERT INTO 表名[(字段名列表)] VALUES (值列表);
插入多行数据:INSERT INTO 新表(字段名列表) VALUES (值列表1),(值列表2),......,(值列表n);
将查询结果插入到新表:
SELECT 字段1,字段2,........
INTO 新表
FROM 原表;
CREATE TABLE 新表 (SELECT 字段1,字段2,........FROM 原表);
更新数据记录:UPDATE 表名 SET 字段1=值1,字段2=值2,......,字段n=值n [WHERE 条件];
删除数据记录:
1、DELETE FROM 表名 [WHERE 条件];
2、TRUNCATE TABLE 表名;
数据查询:
SELECT<字段名列表>
FROM <表名或视图>
[WHERE<查询条件>]
[GROUP BY<分组的字段名>]
[HAVING <条件>]
[ORDER BY<排序的字段名>[ASC或DESC]];
LIMIT语句:
SELECT<字段名列表>
FROM<表名或视图>
[WHERE<查询条件>]
[GROUP BY<分组的字段名>]
[ORDER BY<排序的字段名>[ASC或DESC]]
LIMIT [位置偏移量,行数]
常用函数:
#函数——聚合函数——平均值
SELECT AVG(`studentNo`) FROM `student`;
#函数——聚合函数——和
SELECT SUM(`studentNo`) FROM `student`;
******************************************************************************
#函数——字符串函数——写出完整的字符串
SELECT CONCAT('My','S','QL');
#函数——字符串函数——替换字符串
SELECT INSERT ('这是My SQL的数据库',3,10,'MySQL');
#函数——字符串函数——将字符串为小写
SELECT LOWER('MySQL');
#函数——字符串函数——将字符串为大写
SELECT UPPER('MySQL');
******************************************************************************
#函数——日期函数——获取当前日期
SELECT CURDATE();
#函数——日期函数——获取当前时间
SELECT CURTIME();
#函数——日期函数——获取当前日期和时间
SELECT NOW();
#函数——日期函数——返回日期data为一年中的第几周
SELECT WEEK(NOW());
#函数——日期函数——返回日期date的年数
SELECT YEAR(NOW());
#函数——日期函数——返回时间time的小时值
SELECT HOUR(NOW());
#函数——日期函数——返回时间time的分钟值
SELECT MINUTE(NOW());
#函数——日期函数——返回日期参数datel和date2之间相隔的天数
SELECT DATEDIFF(NOW(),'2008-05-11');
#函数——日期函数——计算日期参数date加上n天后的日期
SELECT ADDDATE(NOW(),5);
******************************************************************************
#函数——数学函数——返回大于或等于数值X的最小整数
SELECT CEIL(2.3);
#函数——数学函数——返回小于或等于数值X的最大整数
SELECT FLOOR(2.3);
#函数——数学函数——返回0~1之间的随机数
SELECT RAND();
子查询在where语句中的用法:
SELECT ...... FROM 表1 WHERE 字段1 比较运算符(子查询);
EXISTS中的子查询:
SELECT ...... FROM 表名 WHERE EXISTS (子查询);
嵌套在SELECT语句的SELECT子句中子查询的语句:
SELECT (子查询) FROM 表名 ;
嵌套在SELECT语句的FROM子句中子查询的语句:
SELECT * FROM (子查询) AS 表的别名 ;
第五章:事务、索引、视图、备份、恢复
开始事务:BEGIN;
提交事务:COMMIT;
回滚事务:ROLLBACK;
设置自动提交开启或关闭:SET AUTOCOMMIT = 0/1;
值为0:关闭自动提交;
值为1:开启自动提交;
创建视图:
CREATE VIEW 视图名 AS <SELECT 语句>;
删除视图:
DROP VIEW [IF EXISTS] 视图名 ;
查看视图数据:
SELECT 字段1,字段2,......FROM VIEW_NAME;
创建索引:
CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name ON table_name (column_name[length].......);
删除索引:
DROP INDEX index_name ON table_name;
查看索引:
SHOW INDEX FROM table_name;
使用mysqldump命令备份数据库
命令格式:
mysqldump -u username -h host -p password dbname [tbname1[,dbname2.......]]>filename.sql;
mysqldump -u用户名 -h 主机地址 -p 密码 备份的数据库 [备份的数据表1[,dbname2.......]]>备份的文件名称;
使用mysql命令恢复数据库
Mysql -u username -p [dbname] <filename.sql;
使用source命令恢复数据库
Source filename;
表数据导出到文本文件:
SELECT columnlist FROM tablename [WHERE contion] INTO OUTFILE ‘filename’ [OPTION];
文本文件导入到数据表:
LOAD DATA INFILE filename INTO TABLE tablename[OPTION];
相关文章
- 暂无相关文章
用户点评