MYSQL命令大全
mysql命令参数
mysql命令参数MySQL是一个开源的关系型数据库管理系统,提供了丰富的命令和参数供用户进行数据库管理和操作。
下面是一些常用的MySQL命令参数的介绍,总字数超过1200字:1. -h或--host:指定MySQL服务器的主机名或IP地址。
例如,可以使用-h localhost连接到本地的MySQL服务器。
2. -u或--user:指定连接MySQL服务器时使用的用户名。
3. -p或--password:指定连接MySQL服务器时使用的密码。
使用该参数会提示用户输入密码。
4. -P或--port:指定连接MySQL服务器时使用的端口号。
默认情况下,MySQL服务器使用3306端口。
5. -D或--database:指定要使用的数据库。
可以在连接MySQL服务器后使用use命令来切换数据库,也可以使用该参数在连接时直接指定要使用的数据库。
6. -e或--execute:指定要执行的SQL语句。
该参数可用于在命令行中直接执行一条SQL语句。
7. -r或--result-file:指定查询结果的输出文件。
可以使用该参数将查询结果保存到文件中,而不是在命令行中显示。
8. --skip-column-names:在查询结果中不显示列名。
使用该参数可以只显示查询结果的数据部分,而不包含列名。
9. -s或--silent:使命令行工具在执行命令时不输出任何信息。
使用该参数可以使输出更加简洁。
10. -i或--ignore-errors:在执行SQL语句时忽略错误。
默认情况下,如果SQL语句执行出错,命令行工具会停止执行并显示错误信息。
使用该参数可以忽略错误继续执行后续语句。
11. -v或--verbose:显示详细的执行信息。
使用该参数可以在执行命令时显示更多的调试信息,帮助用户进行故障排查。
12. --show-warnings:在执行命令时显示警告信息。
警告信息是一些非致命性的问题,可以使用该参数查看这些警告信息。
mysql数据库查询语句大全
mysql数据库查询语句大全MySQL是一个功能强大的关系型数据库管理系统,支持多种查询语句,涵盖了数据检索、更新、删除等操作。
下面是一些常见的MySQL查询语句:数据查询:1.SELECT:从数据库中检索数据。
SELECT column1,column2 FROM table_name WHERE condition;2.DISTINCT:返回唯一不同的值。
SELECT DISTINCT column FROM table_name;3.WHERE:添加筛选条件。
SELECT*FROM table_name WHERE column=value;4.ORDER BY:按特定列排序检索结果。
SELECT*FROM table_name ORDER BY column ASC/DESC;5.LIMIT:限制返回的记录数。
SELECT*FROM table_name LIMIT 10;数据更新和删除:1.UPDATE:更新表中的数据。
UPDATE table_name SET column=value WHERE condition;2.DELETE:从表中删除行。
DELETE FROM table_name WHERE condition;表操作:1.CREATE TABLE:创建表格。
CREATE TABLE table_name(column1 datatype,column2 datatype,...);2.ALTER TABLE:修改表格。
ALTER TABLE table_name ADD column datatype;3.DROP TABLE:删除表格。
DROP TABLE table_name;4.TRUNCATE TABLE:清空表格数据。
TRUNCATE TABLE table_name;聚合函数:1.SUM:返回特定列的总和。
SELECT SUM(column)FROM table_name;2.COUNT:返回行数。
MYSQL数据库命令大全
MYSQL命令大全常见的MySQL命令大全一、连接MySQL格式:mysql -h主机地址-u用户名-p用户密码1、例1:连接到本机上的MYSQL。
首先在打开DOS窗口,然后进入目录mysqlbin,再键入命令mysql -uroot -p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:mysql>。
2、例2:连接到远程主机上的MYSQL。
假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。
则键入以下命令:mysql -h110.110.110.110 -uroot -pabcd123(注:u与root可以不用加空格,其它也一样)3、退出MYSQL命令:exit (回车)。
二、修改密码格式:mysqladmin -u用户名-p旧密码password 新密码1、例1:给root加个密码ab12。
首先在DOS下进入目录mysqlbin,然后键入以下命令:mysqladmin -uroot -password ab12注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。
2、例2:再将root的密码改为djg345。
mysqladmin -uroot -pab12 password djg345三、增加新用户。
(注意:和上面不同,下面的因为是MySQL环境中的命令,所以后面都带一个分号作为命令结束符)格式:grant select on 数据库.* to 用户名@登录主机identified by \"密码\"例1、增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。
首先用以root用户连入MySQL,然后键入以下命令:grant select,insert,update,delete on *.* to test2@localhost identified by \"abc\";如果你不想test2有密码,可以再打一个命令将密码消掉。
mysql客户端常用命令
mysql客户端常⽤命令⼀mysqldump这个命令是逻辑导出,导出的内容⽅便查看和编辑,如果要备份⼤量数据,最好选择物理导出命令mysqldump的命令⾏参数也可以在配置⽂件的[mysqldump][client]组使⽤,和mysql命令⾏参数⼀样的就不列举了mysqldump -u username -p dbname table1 table2 ...-> BackupName.sqldbname参数表⽰数据库的名称;table1和table2参数表⽰需要备份的表的名称,为空则整个数据库备份;BackupName.sql参数表设计备份⽂件的名称,⽂件名前⾯可以加上⼀个绝对路径。
通常将数据库备份成⼀个后缀名为sql的⽂件;mysqldump -u username -p --databases dbname2 dbname2 > Backup.sql加上了--databases选项,然后后⾯跟多个数据库mysqldump -u username -p -all-databases > BackupName.sql备份所有数据库mysqldump -u ⽤户名 -p -d –add-drop-table 数据库名 > 导出的⽂件名备份创建表语句包含删表语句mysqldump -u username -p dbname < filename.sql//导⼊数据库--add-drop-database //添加删除数据库语句在创建数据库之前--add-drop-table--add-drop-trigger-n // 不导出创建数据库语句--no-create-db-t // 不导出创建表语句--no-create-info--replace //⽤replace语句替换insert语句--allow-keywords //在列名前添加表名,作为关键字-i //添加版本等信息--comments,--skip-comments--dump-date //包含⽇期 --skip-dump-date--log-error //记录警告和错误到指定⽂件--set-charset //输出设置字符集语句 --skip-set-charset,--no-set-names -N--compact //产⽣更紧凑的输出--skip-compact--compatible //产⽣的输出尽可能兼容其它数据库服务器-c //insert语句包含列名 --complete-insert--create-options //包含所有创建表选项--hex-blob //⽤16进制输出⼆进制列数据-Q //数据库,表,列名⽤单引号或双引号括起来 --quote-names-r //输出到指定的⽂件 --result-file-T //输出数据到tab分割的⽂本格式txt⽂件--tab--tz-utc //即使两个服务器在不同的时区,TIMESTAMP列的值也不会有问题--skip-tz-utc-A //导出所有数据库--all-databases-B //导出⼏个数据库--databases-E //导出定时事件--event导出时不包含创建和修改的时间,所以恢复时创建时间就是恢复的时间,可以到处mysql.event表包含所有信息--ignore-error //忽略指定的错误--ignore-table //不导出指定的表-d //不导出表数据,只导出表结构–-no-data-R //导出存储过程和⾃定义函数–-routines导出时不包含创建和修改的时间,所以恢复时创建时间就是恢复的时间,可以到处mysql.proc表包含所有信息--tables //导出的表名--triggers //导出的触发器名字-w //导出时的where条件 --where--add-locks //导出的表保护lock tables和unlock tables语句-F //开始导出前刷新服务器⽇志⽂件--flush-logs-x //导出前锁所有表--lock-all-tables-l //导出前锁表 --lock-tables --skip-lock-tables--no-autocommit //是否包含SET autocommit = 0 和 COMMIT--order-by-primary //导出时是否按主键排序--single-transaction //导出前发送START TRANSACTION语句到服务器,设置数据库事务级别是REPEATABLE READ-q //⼀次从服务器检索⼀⾏数据--quick--opt //使导出更快--skip-opt-K //数据插⼊后再创建索引--disable-keys-e //⽤多⾏语法写insert语句--extended-insert--insert-ignore //⽤insert ignore语句替换insert语句⼆mysqlmysql命令⾏参数,也可以在配置⽂件的[client][mysql]组使⽤。
mysql数据库常用语句大全
mysql数据库常用语句大全1.连接数据库:连接本地数据库:mysql -u root -p连接远程数据库:mysql -h 192.169.22.199 -u root -p退出数据库:exit2.创建数据库:create database payment;使用 mysqladmin 创建数据库mysqladmin -u root -p create abc_db; 3.显示所有数据库:show databases;4.删除数据库:drop database payment;使用 mysqladmin 删除数据库mysqladmin -u root -p drop abc_db5.选择数据库:use home_db;6.数据类型:数值类型:TINYINT:SMALLINT:MEDIUMINT:INT(INTEGER):BIGINT:FLOAT:DOUBLE:DECIMAL:日期和时间类型:DATE:TIEM:DATETIME:YEAR:TIMESTAMP:字符串类型:CHAR:VARCHAR:TINYBLOB:TINYTEXT:BLOB:TEXT:MEDIUMBLOB:MEDIUMTEXT:LONGBLOB:LONGTEXT:7.创建数据表:CREATE TABLE IF NOT EXISTS `t_order`( `id` INT(10) UNSIGNED AUTO_INCREMENT,`title` VARCHAR(100) NOT NULL,PRIMARY KEY(`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;8.删除数据表:DROP TABLE t_order;9.insert 插入:插入一条数据:INSERT INTO t_order(title)VALUES('手机');INSERT 插入多条数据:INSERT INTO t_order(title)VALUES('笔记本'),('平板电脑');10.select 查询:所有字段查询:SELECT * FROM t_order;某些字段查询:SELECT t_order.id, t_order.title FROM t_order;分页查询:SELECT t_order.title FROM t_order WHERE id LIMIT 1,10 11.where 条件:OR,AND的应用:SELECT * FROM t_order WHERE title ='手机' OR title='笔记本';SELECT * FROM t_order WHERE title ='手机' AND id=2;12.update 更新:UPDATE t_order SET title='苹果手机' WHERE id =2;13.delete 删除:DELETE FROM t_order WHERE id=2;14.like 查询SELECT * FROM t_order WHERE title LIKE '%手机%';SELECT * FROM t_order WHERE title LIKE '_机';14.union 联合查询:连接两个以上的 SELECT 语句合并成一个结果集合SELECT * FROM t_order UNION SELECT * FROM t_user; SELECT * FROM t_order UNION ALL SELECT * FROM t_user;15.order by 排序:升序排序:SELECT * FROM t_order ORDER BY id ASC;降序排序:SELECT * FROM t_order ORDER BY id DESC;16.group by 分组:SELECT title, count(*) as total FROM t_order GROUP BY title;17.join 连接:inner join(内连接) on:获取两个表中字段匹配关系的记录SELECT * FROM t_order o INNER JOIN t_user u ON o.id =u.id;left join(左连接)on:获取左表所有记录,即使右表没有对应匹配的记录SELECT * FROM t_order o LEFT JOIN t_user u ON o.id =u.id;right join(右连接)on:获取右表所有记录,即使左表没有对应匹配的记录SELECT * FROM t_order o RIGHT JOIN t_user u ON o.id =u.id;18.null的处理:null值的判断:SELECT * FROM t_user WHERE name IS NULL;非null值的判断:SELECT * FROM t_user WHERE name IS NOT NULL;19.REGEXP 正则表达式:SELECT * FROM t_order WHERE title REGEXP('手机$'); SELECT * FROM t_order WHERE title REGEXP('^笔');。
mysql查询语句大全及用法
mysql查询语句大全及用法MySQL是一种常用的关系型数据库管理系统,提供了强大的查询语言(SQL)来操作和管理数据库。
下面是一些常见的MySQL查询语句及其用法:1. SELECT语句:-用法:用于从数据库中检索数据。
-示例:SELECT * FROM 表名;(检索表中的所有数据)SELECT 列1, 列2 FROM 表名WHERE 条件;(根据条件检索指定列的数据)2. INSERT语句:-用法:用于向数据库中插入新的数据。
-示例:INSERT INTO 表名(列1, 列2) VALUES (值1, 值2);(向表中插入指定列的数据)3. UPDATE语句:-用法:用于更新数据库中的数据。
-示例:UPDATE 表名SET 列1 = 值1, 列2 = 值2 WHERE 条件;(根据条件更新指定列的数据)4. DELETE语句:-用法:用于从数据库中删除数据。
-示例:DELETE FROM 表名WHERE 条件;(根据条件删除数据)5. WHERE子句:-用法:用于在SELECT、UPDATE和DELETE语句中指定条件。
-示例:SELECT * FROM 表名WHERE 列= 值;(根据条件检索数据)6. ORDER BY子句:-用法:用于对结果进行排序。
-示例:SELECT * FROM 表名ORDER BY 列ASC/DESC;(根据指定列的升序或降序排序数据)7. GROUP BY子句:-用法:用于将结果分组。
-示例:SELECT 列, COUNT(*) FROM 表名GROUP BY 列;(根据指定列对数据进行分组并计数)8. JOIN语句:-用法:用于在多个表之间建立连接。
-示例:SELECT * FROM 表1 JOIN 表2 ON 表1.列= 表2.列;(根据指定列在两个表之间建立连接)9. DISTINCT关键字:-用法:用于返回唯一的结果。
-示例:SELECT DISTINCT 列FROM 表名;(返回指定列的唯一结果)10. LIMIT关键字:-用法:用于限制结果集的行数。
Mysql常用命令行大全
use mysql;
delete from User where User="";
update User set Password=PASSWORD(newpassword) where User=root;
(注:u与root可以不用加空格,其它也一样)
3、退出MYSQL命令: exit (回车)
=====================================================================
1:使用SHOW语句找出在服务器上当前存在什么数据库:
mysql> SHOW DATABASES;
5:创建一个数据库表
mysql> CREATE TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));
6:显示表的结构:
mysql> DESCRIBE MYTABLE;
7:往表中加入记录
mysql> insert into MYTABLE values ("hyq","M");
8:用文本方式将数据装入数据库表中(例如D:/mysql.txt)
mysql> LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE MYTABLE;
9:导入.sql文件命令(例如D:/mysql.sql)
mysql必背50条语句
mysql必背50条语句1. 创建数据库:```sqlCREATE DATABASE dbname;```2. 删除数据库:```sqlDROP DATABASE dbname;```3. 选择数据库:```sqlUSE dbname;```4. 显示所有数据库:```sqlSHOW DATABASES;```5. 创建表:```sqlCREATE TABLE tablename (column1 datatype,column2 datatype,...);```6. 查看表结构:```sqlDESC tablename;```7. 删除表:```sqlDROP TABLE tablename;```8. 插入数据:```sqlINSERT INTO tablename (column1, column2, ...) VALUES (value1, value2, ...);```9. 查询数据:```sqlSELECT * FROM tablename;```10. 条件查询:```sqlSELECT * FROM tablename WHERE condition;```11. 更新数据:```sqlUPDATE tablename SET column1 = value1, column2 = value2 WHERE condition;```12. 删除数据:```sqlDELETE FROM tablename WHERE condition;```13. 查找唯一值:```sqlSELECT DISTINCT column FROM tablename;```14. 排序数据:```sqlSELECT * FROM tablename ORDER BY column ASC/DESC;```15. 限制结果集:```sqlSELECT * FROM tablename LIMIT 10;```16. 分页查询:```sqlSELECT * FROM tablename LIMIT 10 OFFSET 20;```17. 计算行数:```sqlSELECT COUNT(*) FROM tablename;```18. 聚合函数:```sqlSELECT AVG(column), SUM(column), MIN(column), MAX(column) FROM tablename;```19. 连接表:```sqlSELECT * FROM table1 INNER JOIN table2 ON table1.column = table2.column;```20. 创建索引:```sqlCREATE INDEX indexname ON tablename (column);```21. 查看索引:```sqlSHOW INDEX FROM tablename;```22. 删除索引:```sqlDROP INDEX indexname ON tablename;```23. 备份整个数据库:```sqlmysqldump -u username -p dbname > backup.sql;```24. 恢复数据库:```sqlmysql -u username -p dbname < backup.sql;```25. 修改表结构:```sqlALTER TABLE tablename ADD COLUMN newcolumn datatype;```26. 重命名表:```sqlRENAME TABLE oldname TO newname;```27. 增加主键:```sqlALTER TABLE tablename ADD PRIMARY KEY (column);```28. 删除主键:```sqlALTER TABLE tablename DROP PRIMARY KEY;```29. 增加外键:```sqlALTER TABLE tablename ADD CONSTRAINT fk_name FOREIGN KEY (column) REFERENCES othertable(column);```30. 删除外键:```sqlALTER TABLE tablename DROP FOREIGN KEY fk_name;```31. 查看活动进程:```sqlSHOW PROCESSLIST;```32. 杀死进程:```sqlKILL process_id;```33. 给用户授权:```sqlGRANT permission ON dbname.tablename TO 'username'@'host';```34. 撤销用户权限:```sqlREVOKE permission ON dbname.tablename FROM 'username'@'host';```35. 创建用户:```sqlCREATE USER 'username'@'host' IDENTIFIED BY 'password';```36. 删除用户:```sqlDROP USER 'username'@'host';```37. 修改用户密码:```sqlSET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');```38. 查看用户权限:```sqlSHOW GRANTS FOR 'username'@'host';```39. 启用外键约束:```sqlSET foreign_key_checks = 1;```40. 禁用外键约束:```sqlSET foreign_key_checks = 0;```41. 启用查询缓存:```sqlSET query_cache_type = 1;```42. 禁用查询缓存:```sqlSET query_cache_type = 0;```43. 查看服务器版本:```sqlSELECT VERSION();```44. 查看当前日期和时间:```sqlSELECT NOW();```45. 查找匹配模式:```sqlSELECT * FROM tablename WHERE column LIKE 'pattern';```46. 计算平均值:```sqlSELECT AVG(column) FROM tablename;```47. 查找空值:```sqlSELECT * FROM tablename WHERE column IS NULL;```48. 日期比较:```sqlSELECT * FROM tablename WHERE date_column > '2022-01-01';```49. 将结果导出为CSV 文件:```sqlSELECT * INTO OUTFILE 'output.csv' FIELDS TERMINATED BY ',' FROM tablename;```50. 将结果导入其他表:```sqlLOAD DATA INFILE 'input.csv' INTO TABLE tablename FIELDS TERMINATED BY ',';。
mysql命令大全实用
一、1.登录数据库系统mysql –h localhost –u root -p2.查看已存在的数据库SHOW DATABASES;3.查看默认存储引擎SHOW V ARIABLES LIKE 'storage_engine';4.创建数据库CREATE DATABASE school;5.删除数据库DROP DATABASE school;二、(1)登录数据库mysql -h localhost -u root -p(2)查看数据库系统中已存在的数据库,代码如下:SHOW DATABASES;(3)查看该数据库系统支持的存储引擎的类型,代码如下:SHOW ENGINES;(4)创建student数据库和teacher数据库。
CREATE DA TABASE student;CREATE DA TABASE teacher;(5)再次查看数据库系统中已经存在的数据库,确保student和teacher数据库已经存在,代码如下:SHOW DATABASES;(6)删除teacher数据库,代码如下:DROP DATABASE teacher ;(7)再次查看数据库系统中已经存在的数据库,确保teacher数据库已经删除。
SHOW DATABASES;三、1.登录数据库系统mysql –h localhost –u root -p2.选择example数据库查看数据库的代码SHOW DATABASES;选择example数据库的代码USE example;3.创建student表和grade表创建student表的代码CREATE TABLE student(num INT(10) NOT NULL UNIQUE PRIMARY KEY ,name V ARCHAR(20) NOT NULL ,sex V ARCHAR(4) NOT NULL ,birthday DA TETIME ,address V ARCHAR(50));创建grade表的代码CREATE TABLE grade(id INT(10) NOT NULL UNIQUE PRIMARY KEY AUTO_INCREMENT, course V ARCHAR(10) NOT NULL ,s_num INT(10) NOT NULL ,grade V ARCHAR(4),CONSTRAINT grade_fk FOREIGN KEY (s_num)REFERENCES student(num));4.将grade表的course字段的数据类型改为V ARCHAR(20),代码如下:ALTER TABLE grade MODIFY course V ARCHAR(20);5.将s_num字段的位置改到course字段的前面,代码如下:ALTER TABLE grade MODIFY s_num INT(10) AFTER id;6.将grade字段改名为scoreALTER TABLE grade CHANGE grade score V ARCHAR(4);7.删除grade表的外键约束ALTER TABLE grade ENGINE=MyISAM;8.将grade表的存储引擎更改为MyISAM类型ALTER TABLE grade ENGINE=MyISAM;9.将student表的address字段删除ALTER TABLE student DROP address;10.在student表中增加名为phone的字段ALTER TABLE student ADD phone INT(10);11.将grade表改名为gradeInfoALTER TABLE grade RENAME gradeInfo;12.删除student表DROP TABLE student;四1.操作teacher表(1)首先创建数据库school,代码如下:CREATE DATABASE school;(2)创建teacher表,代码如下:CREATE TABLE teacher(id INT(4) NOT NULL UNIQUE PRIMARY KEY AUTO_INCREMENT, num INT(10) NOT NULL UNIQUE ,name V ARCHAR(20) NOT NULL ,sex V ARCHAR(4) NOT NULL ,birthday DATETIME ,address V ARCHAR(50));(3)将teacher表的name字段的数据类型改为VARCHAR(30),代码如下:ALTER TABLE teacher MODIFY name V ARCHAR(30) NOT NULL;(4)将birthday字段的位置改到sex字段的前面,代码如下:ALTER TABLE teacher MODIFY birthday DA TETIME AFTER name;(5)将num字段改名为t_id,代码如下:ALTER TABLE teacher CHANGE num t_id INT(10) NOT NULL;(6)将teacher表的address字段删除,代码如下:ALTER TABLE teacher DROP address;(7)在teacher表中增加名为wages的字段,数据类型为FLOAT,代码如下:ALTER TABLE teacher ADD wages FLOAT;(8)将teacher表改名为teacherInfo,代码如下:ALTER TABLE teacher RENAME teacherInfo;(9)将teacher表的存储引擎更改为MyISAM类型,代码如下:ALTER TABLE teacherInfo ENGINE=MyISAM;2.操作department表和worker表(1)创建department表,代码如下:CREATE TABLE department(d_id INT(4) NOT NULL UNIQUE PRIMARY KEY ,d_name VARCHAR(20) NOT NULL UNIQUE ,function V ARCHAR(50) ,address V ARCHAR(50));(2)创建worker表,代码如下:CREATE TABLE worker (id INT(4) NOT NULL UNIQUE PRIMARY KEY AUTO_INCREMENT, num INT(10) NOT NULL UNIQUE ,d_id INT(4) ,name V ARCHAR(20) NOT NULL ,sex V ARCHAR(4) NOT NULL ,birthday DA TE ,address V ARCHAR(50) ,CONSTRAINT worker_fk FOREIGN KEY (d_id)REFERENCES department (d_id));(3)删除department表,代码如下:DROP TABLE department;4)删除worker表的外键约束,代码如下:ALTER TABLE worker DROP FOREIGN KEY worker_fk;(5)重新删除department表,代码如下:DROP TABLE department;五、1.登录数据库系统并创建job数据库登录MySQL数据库的命令如下:mysql –h localhost –u root -p创建job数据库的代码如下:CREATE DATABASE job;2.创建user表选择job数据库的代码如下:USE job;创建user表的代码如下:CREATE TABLE user(userid INT(10) NOT NULL UNIQUE PRIMARY KEY AUTO_INCREMENT , username V ARCHAR(20) NOT NULL ,passwd V ARCHAR(20) NOT NULL ,info TEXT ,UNIQUE INDEX index_uid ( userid DESC ) ,INDEX index_user ( username, passwd ) ,FULLTEXT INDEX index_info( info ))ENGINE=MyISAM;查看user表的结构的代码如下:SHOW CREATE TABLE user \G3.创建information表创建information表的代码如下:CREATE TABLE information (id INT(10) NOT NULL UNIQUE PRIMARY KEY AUTO_INCREMENT,name V ARCHAR(20) NOT NULL ,sex V ARCHAR(4) NOT NULL ,birthday DA TE ,address V ARCHAR(50) ,tel V ARCHAR(20) ,pic BLOB);查看information表的结构的代码如下:SHOW CREATE TABLE information \G4.在name字段创建名为index_name的索引CREATE INDEX index_name ON information( name(10) );5.创建名为index_bir的多列索引CREATE INDEX index_bir ON information(birthday, address );6.用ALTER TABLE语句创建名为index_id的惟一性索引ALTER TABLE information ADD INDEX index_id( id ASC );7.删除user表上的index_user索引删除index_user索引的代码如下:DROP INDEX index_user ON user;查看user表的结构的代码如下:SHOW CREATE TABLE user \G8.删除information表上的index_name索引删除index_name索引的代码如下:DROP INDEX index_name ON information;查看information表的结构的语句如下:SHOW CREATE TABLE information \G六、(1)创建workInfo表CREATE TABLE workInfo (id INT(10) NOT NULL UNIQUE PRIMARY KEY AUTO_INCREMENT,name V ARCHAR(20) NOT NULL ,type V ARCHAR(10) ,address V ARCHAR(50) ,tel V ARCHAR(20) ,wages INT ,contents TINYTEXT ,extra TEXT ,UNIQUE INDEX index_id (id DESC));(2)使用CREATE INDEX语句为name字段创建长度为10的索引index_name,代码如下:CREATE INDEX index_name ON workInfo( name(10) );(3)使用ALTER TABLE语句在type和address上创建名为index_t的索引,代码如下:ALTER TABLE workInfo ADD INDEX index_t( type, address );(4)使用ALTER TABLE语句将workInfo表的存储引擎更改为MyISAM类型,代码如下:ALTER TABLE workInfo ENGINE=MyISAM;(5)使用ALTER TABLE语句在extra字段上创建名为index_ext的全文索引,代码如下:ALTER TABLE workInfo ADD FULLTEXT INDEX index_ext (extra );(6)使用DROP语句删除workInfo表的惟一性索引index_id,代码如下:DROP INDEX index_id ON workInfo ;七、1.在test数据库中work_info表选择test数据库的代码如下:USE test;创建work_info表的代码如下:CREATE TABLE work_info (id INT(10) NOT NULL UNIQUE PRIMARY KEY ,name V ARCHAR(20) NOT NULL ,sex V ARCHAR(4) NOT NULL ,age INT(5),address V ARCHAR(50) ,tel V ARCHAR(20));2.插入记录INSERT INTO work_info V ALUES( 1,'张三', 'M',18,'北京市海淀区','1234567'); INSERT INTO work_info V ALUES( 2,'李四', 'M', 22,'北京市昌平区','2345678'); INSERT INTO work_info V ALUES( 3,'王五', 'F', 17,'湖南省永州市','3456789'); INSERT INTO work_info V ALUES( 4,'赵六', 'F', 25,'辽宁省阜新市','4567890');3.创建视图info_viewCREATE ALGORITHM=MERGE VIEWinfo_view ( id,name, sex, address )AS SELECT id,name, sex, addressFROM work_info WHERE age>20WITH LOCAL CHECK OPTION;4.查看视图info_view的基本结构和详细结构查看基本结构的代码如下:DESC info_view;查看详细结构的代码如下:SHOW CREATE VIEW info_view \G5.查看视图info_view的所有记录SELECT * FROM info_view;6.修改视图info_viewALTER ALGORITHM=MERGE VIEWinfo_view ( id,name, sex, address )AS SELECT id,name, sex, addressFROM work_info WHERE age<20WITH LOCAL CHECK OPTION;7.更新视图UPDATE info_view SET sex='M' WHERE id=3;8.删除视图DROP VIEW info_view;八、(1)在example数据库下创建college表。
MYSQL常用查询命令
删除 primary key 1、alter table tablename drop primary key; 2、drop primary key on tablename; 修改 table 表数据引擎 mysql> alter table tableName ENGINE = MyISAM (InnoDB); 增加一新字段名: mysql> alter table mytable add column single char(1); mysql> ALTER TABLE table ADD field INT(11) UNSIGNED NOT NULL 删除字段 mysql> alter table t2 drop column c; 附: 为了改变列 a,从 INTEGER 改为 TINYINT NOT NULL(名字一样), 并且改变列 b,从 CHAR(10)改为 CHAR(20),同时重命名它,从 b 改为 c: ALTER TABLE t2 MODIFY a TINYINT NOT NULL, CHANGE b c CHAR(20); 增加一个新 TIMESTAMP 列,名为 d: ALTER TABLE t2 ADD d TIMESTAMP; 在列 d 上增加一个索引,并且使列 a 为主键: ALTER TABLE t2 ADD INDEX (d), ADD PRIMARY KEY (a); 增加一个新的 AUTO_INCREMENT 整数列,命名为 c: ALTER TABLE t2 ADD c INT UNSIGNED NOT NULL AUTO_INCREMENT,ADD INDEX (c); 注意,我们索引了 c,因为 AUTO_INCREMENT 柱必须被索引, 并且另外我们声明 c 为 NOT NULL,因为索引了的列不能是 NULL。 使用 name 列的头 10 个字符创建一个索引: CREATE INDEX part_of_name ON customer (name(10));
mysql 50条语句
mysql 50条语句1. SELECT * FROM table_name;2. SELECT column1, column2 FROM table_name;3. SELECT column1, column2 FROM table_name WHERE condition;4. INSERT INTO table_name (column1, column2) VALUES (value1, value2);5. UPDATE table_name SET column1 = value1 WHERE condition;6. DELETE FROM table_name WHERE condition;7. SELECT COUNT(*) FROM table_name;8. SELECT column1, column2 FROM table_name ORDER BY column1 ASC;9. SELECT column1, column2 FROM table_name ORDER BY column1 DESC;10. SELECT column1, column2 FROM table_name WHERE column1 IN (value1, value2);11. SELECT column1, column2 FROM table_name WHERE column1 NOTIN (value1, value2);12. SELECT column1, column2 FROM table_name LIMIT 10;13. SELECT column1, column2 FROM table_name LIMIT 10 OFFSET 5;14. SELECT column1, column2 FROM table_name WHERE column1 LIKE 'value%';15. SELECT DISTINCT column1 FROM table_name;16. SELECT column1, AVG(column2) FROM table_name GROUP BY column1;17. SELECT column1, COUNT(column2) FROM table_name GROUP BY column1;18. SELECT column1, SUM(column2) FROM table_name GROUP BY column1;19. SELECT column1, MAX(column2) FROM table_name GROUP BY column1;20. SELECT column1, MIN(column2) FROM table_name GROUP BY column1;21. SELECT column1, column2 FROM table_name INNER JOIN table2ON table1.column = table2.column;22. SELECT column1, column2 FROM table_name LEFT JOIN table2 ON table1.column = table2.column;23. SELECT column1, column2 FROM table_name RIGHT JOIN table2 ON table1.column = table2.column;24. SELECT column1, column2 FROM table_name FULL JOIN table2 ON table1.column = table2.column;25. SELECT column1, column2 FROM table_name WHERE column1 BETWEEN value1 AND value2;26. SELECT column1, column2 FROM table_name WHERE column1 NOT BETWEEN value1 AND value2;27. SELECT column1, column2 FROM table_name WHERE column1 IS NULL;28. SELECT column1, column2 FROM table_name WHERE column1 IS NOT NULL;29. SELECT column1, column2 FROM table_name WHERE column1 = value1 OR column2 = value2;30. SELECT column1, column2 FROM table_name WHERE column1 = value1 AND column2 = value2;31. SELECT column1, column2 FROM table_name WHERE column1 = value1 XOR column2 = value2;32. SELECT column1, column2 FROM table_name WHERE column1 = value1 AND (column2 = value2 OR column2 = value3);33. SELECT column1, column2 FROM table_name WHERE column1 = value1 OR (column2 = value2 AND column2 = value3);34. SELECT column1, column2 FROM table_name WHERE column1 > value1;35. SELECT column1, column2 FROM table_name WHERE column1 >= value1;36. SELECT column1, column2 FROM table_name WHERE column1 < value1;37. SELECT column1, column2 FROM table_name WHERE column1 <= value1;38. SELECT column1, column2 FROM table_name WHERE column1 !=value1;39. SELECT column1, column2 FROM table_name WHERE column1 <> value1;40. SELECT column1, column2 FROM table_name WHERE column1 = value1 AND column2 IN (value2, value3);41. SELECT column1, column2 FROM table_name WHERE column1 = value1 OR column2 NOT IN (value2, value3);42. SELECT column1, column2 FROM table_name WHERE column1 = value1 AND (column2 LIKE 'value%' OR column2 LIKE '%value');43. SELECT column1, column2 FROM table_name WHERE column1 = value1 AND column2 BETWEEN value2 AND value3;44. SELECT column1, column2 FROM table_name WHERE column1 = value1 AND column2 IS NULL;45. SELECT column1, column2 FROM table_name WHERE column1 = value1 AND column2 IS NOT NULL;46. SELECT column1, column2 FROM table_name WHERE column1 = value1 AND column2 = value2 ORDER BY column2;47. SELECT column1, column2 FROM table_name WHERE column1 = value1 AND column2 = value2 GROUP BY column2;48. SELECT column1, column2 FROM table_name WHERE column1 = value1 AND column2 = value2 HAVING COUNT(*) > 1;49. SELECT column1, column2 FROM table_name WHERE column1 = value1 AND column2 = value2 LIMIT 5;50. SELECT column1, column2 FROM table_name WHERE column1 = value1 AND column2 = value2 OFFSET 10;。
MySQL数据库管理常用命令
root密码管理设置root用户的密码mysqladmin -uroot password 'password'。
修改root用户的密码mysqladmin -uroot -p password 'password'。
数据库,表管理进入mysqlmysql -h hostname -uroot -p。
创建数据库mysql> create database location。
导入数据结构mysql -uroot -p location <./location.sql。
查看数据库mysql> show databases;进入某个库mysql> use location;查看表信息mysql> show tables;查看表结构mysql> desc Contact;改表名mysql> rename table Contact to Contact_new。
删除库mysql> drop database location。
删除表mysql> drop table Contact。
授权部分建立用户并授权mysql> grant all on location.* to gk1020@'10.1.11.71' identified by 'gk1020'。
取消授权mysql> revoke all on location.* from gk1020@'10.1.11.71'。
刷新权限mysql> flush privileges。
操作语句查询mysql> select * from Contact。
mysql> select count(*) from Contact。
修改mysql> update Contact set RegTime=‘2008-01-01 00:00:00’ where id=1。
mysqld 命令参数
mysqld 命令参数1. --user:指定mysqld进程运行的用户名称2. --port:指定连接端口,默认为33063. --bind-address:指定mysqld监听的IP地址,默认为localhost4. --datadir:指定数据存储目录5. --socket:指定Unix域套接字文件路径,用于本地连接6. --skip-networking:禁用网络连接7. --sql-mode:指定MySQL数据库的语法模式8. --log-error:指定错误日志文件路径9. --pid-file:指定进程ID文件路径10. --innodb-buffer-pool-size:指定InnoDB缓冲池大小11. --innodb-log-file-size:指定InnoDB日志文件大小12. --innodb-log-buffer-size:指定InnoDB日志缓冲区大小13. --max-connections:指定最大连接数14. --key-buffer-size:指定MyISAM索引缓冲区大小15. --sort-buffer-size:指定排序缓冲区大小16. --tmp-table-size:指定临时表最大大小17. --query-cache-size:指定查询缓存大小18. --general-log:启用或禁用全局日志19. --slow-query-log:启用或禁用慢查询日志20. --plugin-dir:指定插件目录路径21. --default-storage-engine:指定默认存储引擎22. --lower-case-table-names:指定表名是否使用小写字母23. --character-set-server:指定服务器字符集24. --collation-server:指定服务器排序规则25. --skip-external-locking:禁用外部锁定机制。
MYSQL 命令
MySql5.0常用命令一、打开连接 (1)二、增加用户 (1)三、更改密码 (1)四、显示数据库列表 (1)五、显示库中的数据表 (1)六、显示表结构 (2)七、建库 (2)八、建表 (2)九、删库或删表 (2)十、插入数据 (2)十一、查询数据 (2)十二、更新数据 (3)十三、清空表中的记录 (3)十四、增加字段 (3)十五、更改字段名称 (3)十六、更改字段默认值 (4)十七、更改字段数据类型 (4)十八、增加主键 (4)十九、导入SQL文件4二十、导入文本文件4二十一、备份数据库5二十二、导出数据5二十三、退出Mysql命令环境5二十四、实例学习5二十五、作者的话7一、打开连接格式:mysql–h<url>–u<username>–p<password>参数说明:<url>服务器地址<username>用户名<password>密码二、增加用户格式:grant select on数据库.*to用户名@登录主机identified by"密码";例:增加用户名为db315密码为db315的超级管理员帐号.grant select,insert,update,delete on mydb.*to db315@localhost identified by"db315";三、更改密码格式:mysqladmin-u用户名-p旧密码password新密码例:把帐号db315的密码改为。
mysqladmin-uroot–pdb315password 四、显示数据库列表格式:show databases五、显示库中的数据表格式:use<database>;show tables;参数说明:<database>数据库名称六、显示表结构格式:use<database>;desc<table>;参数说明:<database>数据库名称,<table>需显示表结构的表名七、建库格式:create database<database_name>参数说明:<database_name>数据库名称八、建表格式:use<database_name>;create table<table_name>(字段设定列表)参数说明:<table_name>新建表的名称(字段设定列表)如:id int not null,九、删库或删表格式:drop database<database_name>;drop table<table_name>十、插入数据格式:insert into user(<name1>,<name2>)value(value1,value2)参数说明:<name>字段名称<value>字段值十一、查询数据格式:select*from<table_name>where<条件>例:select*from user where id=2;十二、更新数据格式:update<table_user>set<字段名称>=<值>where<条件>例:把ID为2的记录用户名(username)的值更改为china.Update user set username=’china’where id=2;十三、清空表中的记录格式:delete from<table_name><条件>例:delete from user where id=2;十四、增加字段格式:alter table table_name add column column_name type default;参数说明:table_name表名称column_name字段名type字段类型例:alter table user add column tel varchar(12)default‘’;在表user中增加一个字段tel类型为varchar值为空.十五、更改字段名称格式:alter table table_name change sorce_col_name dest_col_name type default;参数说明:table_name指表名,source_col_name指原来的字段名称,dest_col_name指改后的字段名称例如:alter table user change tel intro varchar(33)default null;十六、更改字段默认值格式:alter table table_name alter column_name set default;例:alter table user alter tel set default null;十七、更改字段数据类型格式:alter table table_name change column column_name column_name type;例:alter table user change column username username varchar(20);十八、增加主键格式:alter table table_name add column column_name typeauto_increment PRIMARY KEY;例如:alter table user add column id int(10)auto_increment PRIMARY KEY十九、导入SQL文件格式:mysql–u<username>–p<password><<Sql_file>例:mysql–uroot–pmaowei<c:\user.sql二十、导入文本文件格式:load data local infile“file_path”into table<table_name>参数说明:“file_path”文件路径<table_name>表名注:1、文本数据应符合的格式:字段数据之间用tab键隔开,null值用\n来代替.例:d:\user.txt中的数据为1cc abcdef easyjf@2dd abcdef\n3ee aaaaaa maoweiwer@4ff aaaaaa ksmwly@二十一、备份数据库格式:mysqldump–u<username>-p<database>><data_name>参数说明:<username>用户名<database>需备份的数据库<data_name>导出文件名例:将数据库db315备份到C盘根目录下的db315.sql文件中.mysqldump–u root–p db315>c:\db315.sql二十二、导出数据格式:select*from user into outfile"dest_file";例:将数据表user导出到Excel文件中select*from user into outfile"c:\user.xls";二十三、退出Mysql命令环境格式:exit二十四、实例学习要求:新建数据库microerp,再建表person,表中有id(主键)、username、password 、intro 四个字段,然后插入一条记录:更新记录最后删除这条记录,并删除数据库microerp 。
linux mysql 命令参数
linux mysql 命令参数MySQL是一个广泛使用的关系型数据库管理系统,它可以在各种操作系统上运行,其中包括Linux操作系统。
在Linux上,使用MySQL 时,有许多不同的命令参数可供选择,用于执行各种任务和配置选项。
以下将介绍一些常用的MySQL命令参数,并提供简要解释。
1. --user (-u):指定连接MySQL的用户名。
示例:mysql -u root2. --password (-p):指定连接MySQL的密码。
示例:mysql -u root -p3. --host (-h):指定连接MySQL的主机名或IP地址。
示例:mysql -u root -h localhost4. --database (-D):指定连接MySQL的默认数据库。
示例:mysql -u root -D mydatabase5. --port (-P):指定连接MySQL的端口号。
示例:mysql -u root -P 33066. --socket (-S):指定连接MySQL的套接字文件。
示例:mysql -u root -S /var/run/mysqld/mysqld.sock7. --execute (-e):执行指定的SQL语句。
示例:mysql -u root -e "SELECT * FROM mytable"8. --silent (-s):屏蔽错误和警告信息。
示例:mysql -u root -s9. --verbose (-v):显示详细的信息。
示例:mysql -u root -v10. --show-warnings:显示警告信息。
示例:mysql -u root --show-warnings11. --batch (-B):以批处理模式运行,适用于将结果导出到文件。
示例:mysql -u root -B -e "SELECT * FROM mytable" > output.txt12. --html:以HTML格式显示查询结果。
mysql数据库的基本使用命令总结
mysql数据库的基本使⽤命令总结mysql数据库是⼀个常⽤的关系型数据库关系型数据库核⼼元素有哪些?主键:特殊字段,⽤来唯⼀标识记录的唯⼀性字段:数据列记录:数据⾏数据表:数据⾏的集合数据库:数据表的集合安装、启动、停⽌、重启mysql服务器的命令安装:sudo apt-get install mysql-server启动:sudo service mysql start# 查看进程中是否存在mysql服务 ps ajx|grep mysql停⽌:sudo service mysql stop重启:sudo service mysql restartmysql 数据库的操作1.连接数据库mysql -u root -pmysql不显⽰密码连接python@ubuntu:~/Desktop$ mysql -u root -pEnter password: mysql退出数据库ctrl+l:清除命令屏幕quit\exit2.创建数据库create database 数据库名 charset=utf8;### 创建数据库时⼀定要记得解决编码问题3.查看当前使⽤的数据库: select database();查看所以数据库: show databases;查看当前数据库中所有表: show tabes;查看当前表中所有的列: select * from 表名;查看表结构: desc 表名;4. 1)创建表需要⽤到的数据类型:整数: int,bit #int unsigned:⽆符号整形 #tinyint unsigned:⽆符号整形(但范围⽐较⼩,⼀般⽤于年龄) #.bit是位数据类型,长度为1字节;int 是整型;bit 实际就是bool类型,只能是0和1,int的是4个字节的整型⼩数: decimal #decimal(5,2)表⽰五位数字,两位⼩数点字符串: varchar,char #varchar:可变字符串⽇期时间: date, time, datetime枚举类型: enum主键: primary key⾃动增长(增加): atuo_increment默认值: default不能为空: not null外键: foreign keyin2)表格式:create table 数据表名字(id ⽆符号整形主键⾃动增长(增加) 不能为空; name 可变字符串(数字/范围) 默认值'';age ⽆符号整形默认值0;height ⼩数;gender 枚举默认值;foreign key ⽆符号整形默认值);例如:create table t_students(id int unsigned primary key auto_increment not null,name varchar(10) default '',age tinyint unsigned default 0,height decimal(5,2),gender enum('男','⼥','中性','保密') default '保密',cls_id int unsigned default 0);5.查看创建数据库的语句: show create database 库名查看创建表的语句: show create table 表名6.使⽤数据库: use 数据库名删除数据库: drop database 数据库名删除表: drop table 表名删除表--删除字段(列)alter table 表名 drop 列名7.表的修改:1)修改表-添加字段 kouhao (班级⼝号)alter table 表名 add 列名类型及约束;alter table t_classes add kouhao varchar(20) not null default '⼈⽣苦短,我⽤Python';2)修改表-修改字段:重命名版alter table 表名 change 原名新名类型及约束;alter table t_classes change kouhao logo varchar(20);3)修改表-修改字段:不重命名版alter table 表名 modify 列名类型及约束;alter table t_classes modify logo varchar(20) not null default '⼈⽣苦短,我⽤Python';8.数据的增删改查(curd)curd的解释: 代表创建(Create)、更新(Update)、读取(Retrieve)和删除(Delete)1)增加1.全列插⼊insert [into] 表名 values(...) #into可⽤可不⽤主键字段可以⽤ 0 null default 来占位如:向classes表中插⼊⼀个班级insert into t_classes values(0,'python02');insert into t_classes values(0,'python01');如:向students表插⼊⼀个学⽣信息(id,name,age,height,gender,cls_id)insert t_students values(null,'⼤乔',23,165.12,'男',1);insert t_students values(null,'李⽩',23,180.12,'⼥',1);2.部分插⼊insert into 表名(列1,...) values(值1,...)insert into t_students(name,gender) values ('张飞',1); #这⾥张飞后⾯的⼀是创建表时,列表性别列对象的枚举参数顺序3.多⾏插⼊insert into 表名(name,gender) values("⼩张1",1),("⼩张2",2);insert into t_students(name,gender) values('⼩王',2),('⼤王',3);2)修改update 表名 set 列1=值1,列2=值2... where 条件;1.全部修改update t_students set height=188.88 ;2.按条件修改update t_students set gender='⼥' where id=1;3.按条件修改多个值update students set gender ="",name = "xxx" ;update t_students set height=165.60,gender=1 where id=3;3)查询1.查询所有列select * from 表名;select * from t_students;2.指定条件查询select * from t_students where name='李⽩';3.查询指定列select 列1,列2,... from 表名;select name,age from t_students;4)删除1.物理删除 #删除后不可恢复delete from 表名 where 条件delete from t_students where id=4;2.逻辑删除 #对要删除的对象做标记,可恢复(⽤⼀个字段来表⽰这条信息是否已经不能再使⽤了)需要给students表添加⼀个 isdelete 字段 bit 类型才能进⾏逻辑删除isdelete=1 就是代表删除标记;is_delete=0 就是恢复 #⽤⼆进制0和1表⽰update t_students set isdelete=1 where id=5 ;。
mysql数据库帮助文档
grant select,insert,update,delete on *.* to test1@"%" Identified by "abc";
(
id int(3) auto_increment not null primary key,
name char(10) not null,
address varchar(50) default '深圳',
year date
); //建表结束
//以下为插入字段
insert into teacher values('','glchengang','深圳一中','1976-10-10');
删除某个索引549830479
mysql>alter table tablename drop index emp_name;
修改表:549830479
增加字段:549830479
mysql> ALTER TABLE table_name ADD field_name field_type;
2、你可以使用光标上下键调出以前的命令。但以前我用过的一个MYSQL旧版本不支持。我现在用的是mysql-3.23.27-beta-win。
五、显示命令
1、显示数据库列表。
show databases;
刚开始时才两个数据库:mysql和test。mysql库很重要它里面有MYSQL的系统信息,我们改密码和新增用户,实际上就是用这个库进行操作。
mysql 常用命令用法总结
mysql 常用命令用法总结一、启动与退出1、进入MySQL:启动MySQL Command Line Client(MySQL的DOS界面),直接输入安装时的密码即可。
此时的提示符是:mysql>2、退出MySQL:quit或exit二、库操作1、、创建数据库命令:create database <数据库名>例如:建立一个名为xhkdb的数据库mysql> create database xhkdb;2、显示所有的数据库命令:show databases (注意:最后有个s)mysql> show databases;3、删除数据库命令:drop database <数据库名>例如:删除名为xhkdb的数据库mysql> drop database xhkdb;4、连接数据库命令:use <数据库名>例如:如果xhkdb数据库存在,尝试存取它:mysql> use xhkdb;屏幕提示:Database changed5、当前选择(连接)的数据库mysql> select database();6、当前数据库包含的表信息:mysql> show tables; (注意:最后有个s)三、表操作,操作之前应连接某个数据库1、建表命令:create table <表名> ( <字段名1> <类型1> [,..<字段名n> <类型n>]);mysql> create table MyClass(> id int(4) not null primary key auto_increment,> name char(20) not null,> sex int(4) not null default '0',> degree double(16,2));2、获取表结构命令:desc 表名,或者show columns from 表名mysql> desc MyClass;mysql> show columns from MyClass;3、删除表命令:drop table <表名>例如:删除表名为MyClass 的表mysql> drop table MyClass;4、插入数据命令:insert into <表名> [( <字段名1>[,..<字段名n > ])] values ( 值1 )[, ( 值n )]例如,往表MyClass中插入二条记录, 这二条记录表示:编号为1的名为Tom的成绩为96.45, 编号为2 的名为Joan 的成绩为82.99,编号为3 的名为Wang 的成绩为96.5.mysql> insert into MyClass values(1,'Tom',96.45),(2,'Joan',82.99), (2,'Wang', 96.59);5、查询表中的数据1)、查询所有行命令:select <字段1,字段2,...> from < 表名> where < 表达式>例如:查看表MyClass 中所有数据mysql> select * from MyClass;2)、查询前几行数据例如:查看表MyClass 中前2行数据mysql> select * from MyClass order by id limit 0,2;6、删除表中数据命令:delete from 表名where 表达式例如:删除表MyClass中编号为1 的记录mysql> delete from MyClass where id=1;7、修改表中数据:update 表名set 字段=新值,…where 条件mysql> update MyClass set name='Mary' where id=1;7、在表中增加字段:命令:alter table 表名add字段类型其他;例如:在表MyClass中添加了一个字段passtest,类型为int(4),默认值为0mysql> alter table MyClass add passtest int(4) default '0'8、更改表名:命令:rename table 原表名to 新表名;例如:在表MyClass名字更改为YouClassmysql> rename table MyClass to YouClass;更新字段内容update 表名set 字段名= 新内容update 表名set 字段名= replace(字段名,'旧内容','新内容');文章前面加入4个空格update article set content=concat('',content);字段类型1.INT[(M)] 型:正常大小整数类型2.DOUBLE[(M,D)] [ZEROFILL] 型:正常大小(双精密)浮点数字类型3.DA TE 日期类型:支持的范围是1000-01-01到9999-12-31。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
启动:net start mySql;source f:/db.sql; 进入:mysql -u root -p/mysql -h localhost -u root -p databaseName; 列出数据库:show databases; 选择数据库:use databaseName; 列出表格:show tables; 显示表格列的属性:show columns from tableName; 建立数据库:source fileName.txt; 匹配字符:可以用通配符_代表任何一个字符,%代表任何字符串; 增加一个字段:alter table tabelName add column fieldName dateType; 增加多个字段:alter table tabelName add column fieldName1 dateType,add columns fieldName2 dateType; 多行命令输入:注意不能将单词断开;当插入或更改数据时,不能将字段的字符串展开到多行里,否则硬回车将被储存到数据中; 增加一个管理员帐户:grant all on *.* to user@localhost identified by "password"; 每条语句输入完毕后要在末尾填加分号';',或者填加'g'也可以; 查询时间:select now(); 查询当前用户:select user(); 查询数据库版本:select version(); 查询当前使用的数据库:select database(); 1、删除student_course数据库中的students数据表: rm -f student_course/students.* 2、备份数据库:(将数据库test备份)mysqldump –u root -p test>c:test.txt(注意是在dos窗口(cmd)下输入才行,如果不行的话,看看MySQL的ben是不是未配置使用set path查看环境变量的配置) 备份表格:(备份test数据库下的mytable表格) mysqldump -u root -p test mytable>c:\test.txt 将备份数据导入到数据库:(导回test数据库) 将备份数据导入到数据库:(导回test数据库) mysql -u root -p test<c:\text.txt 3、创建临时表:(建立临时表zengchao) create temporary table zengchao(name varchar(10)); 4、创建表是先判断表是否存在 create table if not exists students(……); 5、从已经有的表中复制表的结构 create table table2 select * from table1 where 1<>1; 6、复制表 create table table2 select * from table1; 7、对表重新命名 alter table table1 rename as table2; 8、修改列的类型 alter table table1 modify id int unsigned;//修改列id的类型为int unsigned alter table table1 change id sid int unsigned;//修改列id的名字为sid,而且把属性修改为int unsigned 9、创建索引 alter table table1 add index ind_id (id); create index ind_id on table1 (id); create unique index ind_id on table1 (id);//建立唯一性索引 10、删除索引 drop index idx_id on table1; alter table table1 drop index ind_id; 11、联合字符或者多个列(将列id与":"和列name和"="连接) select concat(id,':',name,'=') from students; 12、limit(选出10到20条)<第一个记录集的编号是0> select * from students order by id limit 9,10; 13、MySQL不支持的功能事务,视图,外键和引用完整性,存储过程和触发器13(New)检索符合条件的前十条 SELECT * FROM account_info order by accountID desc limit 0,10; 14、MySQL会使用索引的操作符号 <,<=,>=,>,=,between,in,不带%或者_开头的like 15、使用索引的缺点 1)减慢增删改数据的速度; 2)占用磁盘空间; 3)增加查询优化器的负担; 当查询优化器生成执行计划时,会考虑索引,太多的索引会给查询优化器增加工作量,导致无法选择最优的查询方案; 16、分析索引效率 方法:在一般的SQL语句前加上explain; 分析结果的含义: 1)table:表名; 2)type:连接的类型,(ALL/Range/Ref)。
其中ref是最理想的; 3)possible_keys:查询可以利用的索引名; 4)key:实际使用的索引; 5)key_len:索引中被使用部分的长度(字节); 6)ref:显示列名字或者"const"(不明白什么意思); 7)rows:显示MySQL认为在找到正确结果之前必须扫描的行数; 8)extra:MySQL的建议; 17、使用较短的定长列 1)尽可能使用较短的数据类型; 2)尽可能使用定长数据类型; a)用char代替varchar,固定长度的数据处理比变长的快些; b)对于频繁修改的表,磁盘容易形成碎片,从而影响数据库的整体性能;库的整体性能; c)万一出现数据表崩溃,使用固定长度数据行的表更容易重新构造。
使用固定长度的数据行,每个记录的开始位置都是固定记录长度的倍数,可以很容易被检测到,但是使用可变长度的数据行就不一定了; d)对于MyISAM类型的数据表,虽然转换成固定长度的数据列可以提高性能,但是占据的空间也大; 18、使用not null和enum 尽量将列定义为not null,这样可使数据的出来更快,所需的空间更少,而且在查询时,MySQL不需要检查是否存在特例,即null值,从而优化查询; 如果一列只含有有限数目的特定值,如性别,是否有效或者入学年份等,在这种情况下应该考虑将其转换为enum列的值,MySQL处理的更快,因为所有的enum值在系统内都是以标识数值来表示的; 19、使用optimize table 对于经常修改的表,容易产生碎片,使在查询数据库时必须读取更多的磁盘块,降低查询性能。
具有可变长的表都存在磁盘碎片问题,这个问题对blob数据类型更为突出,因为其尺寸变化非常大。
可以通过使用optimize table来整理碎片,保证数据库性能不下降,优化那些受碎片影响的数据表。
optimize table可以用于MyISAM和BDB类型的数据表。
实际上任何碎片整理方法都是用mysqldump来转存数据表,然后使用转存后的文件并重新建数据表; 20、使用procedure analyse() 可以使用procedure analyse()显示最佳类型的建议,使用很简单,在select语句后面加上procedure analyse()就可以了;例如: select * from students procedure analyse(); select * from students procedure analyse(16,256); 第二条语句要求procedure analyse()不要建议含有多于16个值,或者含有多于256字节的enum类型,如果没有限制,输出可能会很长; 21、使用查询缓存 1)查询缓存的工作方式: 第一次执行某条select语句时,服务器记住该查询的文本内容 第一次执行某条select语句时,服务器记住该查询的文本内容和查询结果,存储在缓存中,下次碰到这个语句时,直接从缓存中返回结果;当更新数据表后,该数据表的任何缓存查询都变成无效的,并且会被丢弃。
2)配置缓存参数: 变量:query_cache _type,查询缓存的操作模式。
有3中模式,0:不缓存;1:缓存查询,除非与 select sql_no_cache开头;2:根据需要只缓存那些以select sql_cache开头的查询;query_cache_size:设置查询缓存的最大结果集的大小,比这个值大的不会被缓存。
22、调整硬件 1)在机器上装更多的内存; 2)增加更快的硬盘以减少I/O等待时间; 寻道时间是决定性能的主要因素,逐字地移动磁头是最慢的,一旦磁头定位,从磁道读则很快; 3)在不同的物理硬盘设备上重新分配磁盘活动;如果可能,应将最繁忙的数据库存放在不同的物理设备上,这跟使用同一物理设备的不同分区是不同的,因为它们将争用相同的物理资源(磁头)。
23、自动添加日期时间在定义数据类型的时候将其定义为timestamp即可例如:createTime timestamp;//当createTime列为空的时候,自动添加当前系统时间。
24 查找满足结果的行数SELECT count(*) FROM pa_account_info where …Mysql里的数据类型MySQL支持大量的列类型,它可以被分为3类:数字类型、日期和时间类型以及字符串(字符)类型。
本节首先给出可用类型的一个概述,并且总结每个列类型的存储需求,然后提供每个类中的类型性质的更详细的描述。
概述有意简化,更详细的说明应该考虑到有关特定列类型的附加信息,例如你能为其指定值的允许格式。
由MySQL支持的列类型列在下面。
下列代码字母用于描述中:M指出最大的显示尺寸。
最大的合法的显示尺寸是 255 。
D适用于浮点类型并且指出跟随在十进制小数点后的数码的数量。
最大可能的值是30,但是应该不大于M-2。
方括号(“[”和“]”)指出可选的类型修饰符的部分。
注意,如果你指定一个了为ZEROFILL,MySQL将为该列自动地增加UNSIGNED属性。