经常会遇到这种情况,在一个不能上网的环境通过MySQL客户端登录数据库,想执行一个操作,却忘了操作的具体语法,各种不方便。

其实,MySQL数据库内置了帮助文档,通过help contents即可查看。

如下所示:

可见,该文档涵盖了数据库操作的大部分主题。

文档分为以上几大类,每个大类又包括更小粒度的类,类最后有具体的topic组成。

那么这之间的层级关系如何呢?

昨天想执行一个操作

mysql> backup table emp to '/tmp/mysqlbackup';

因为这个backup操作以前没有使用过,准备用MySQL自带的帮助文档来查看具体的用法。本来这个命令所属的类别就有点模糊,譬如Administration和Utility都有可能。最后找了一通,还是没有找到。

想了想,这样查看帮助文档确实没有太大的效率,如果知道这之间的层级关系就好办了。

于是,动手写了个脚本,可直观的显示帮助文档中大类与小类,小类与topic之间的关系。

具体如下:

#!/bin/bash
#所有操作都是在/tmp/test中操作,因为中间新建了很多临时文件,方便后续的删除。
mkdir /tmp/test
#获取上图的内容重定向到/tmp/test/test.txt文件中
mysql -uroot -p123456 -e "help contents " > /tmp/test/test.txt
#定义输出的格式,\t输出tab,\b相当于backspace一个空格,参考了tree命令的输出方式。
format="|\t\b"
#删除第一行和最后一行
sed -i '1d;$d' /tmp/test/test.txt
cd /tmp/test
#引入number的作用在于后续格式的输出
number= #后续用了递归调用,这里定义的是函数
function recursive(){
filename=$
number=$[$number+] while read line
do
#name要做为文件名,譬如Account Management,利用tr函数是去掉字符中间的空格
name=`echo $line|tr -d [:blank:]`
#输出每个分类中的内容,可能是topic,可能是categories
mysql -uroot -p123456 -e "help $line" > $name
#取输出文件的第一行的内容,如果是具体的topic,则第一行的内容为:Name: 'ALTER USER',不然就还是categories,需要递归调用
firstline=`head - $name`
#整个逻辑比较复杂的有两类,一个是Numeric Functions,另一个是PLUGINS。先说PLUGINS,一般对于一个具体的topic,它的输出类似于Name: 'ALTER USER',而PLUGINS
#对应的输出却是Name: 'SHOW PLUGINS',所以下面的判断语句多了一个"$firstline" = "Name: 'SHOW PLUGINS'",针对的即是PLUGINS。另一比较复杂的是Numeric Functions
#它下面的topic有除号“/”,而这基本上是不能作为文件名的。所以在下面的判断逻辑中,如果遇到Numeric Functions,就直接打印出该类中的topic,而不进行Name: 'ALTER USER'这样的判断
if [ "$firstline" = "Name: '$line'" -o "$firstline" = "Name: 'SHOW PLUGINS'" ];then for i in `seq $[$number-]`
do
echo -ne $format
done
echo "├── $line" else
#如果不是topic,则代表是categories,可递归进行判断,唯一的例外就是Numeric Functions
#下面的echo "├── $line"打印出的是categories的名字
for i in `seq $[$number-]`
do
echo -ne $format
done
echo "├── $line" #遇到Numeric Functions,就直接打印出该类中的topic
if [ "$line" = "Numeric Functions" ];then
sed -i '1d;$d' $name
while read functions
do
for i in `seq $number`
do
echo -ne $format
done
echo "├── $functions"
done < $name else
#其它的categories,递归调用该函数进行判断。
sed -i '1d;$d' $name
recursive $name
number=$[$number-] fi
fi
done < $filename
} #主函数
recursive /tmp/test/test.txt
#处理完毕,删除文件夹
rm -rf /tmp/test

因MySQL客户端登录数据库的时候,直接指定了密码,如果直接执行的话,会输出很多“Warning: Using a password on the command line interface can be insecure.”,

可重定向到一个文件

# sh 2.sh > 1.txt

最后文件中的结果如下:

├── Account Management
| ├── ALTER USER
| ├── CREATE USER
| ├── DROP USER
| ├── GRANT
| ├── RENAME USER
| ├── REVOKE
| ├── SET PASSWORD
├── Administration
| ├── BINLOG
| ├── CACHE INDEX
| ├── FLUSH
| ├── FLUSH QUERY CACHE
| ├── HELP COMMAND
| ├── KILL
| ├── LOAD INDEX
| ├── RESET
| ├── SET
| ├── SHOW
| ├── SHOW AUTHORS
| ├── SHOW BINARY LOGS
| ├── SHOW BINLOG EVENTS
| ├── SHOW CHARACTER SET
| ├── SHOW COLLATION
| ├── SHOW COLUMNS
| ├── SHOW CONTRIBUTORS
| ├── SHOW CREATE DATABASE
| ├── SHOW CREATE EVENT
| ├── SHOW CREATE FUNCTION
| ├── SHOW CREATE PROCEDURE
| ├── SHOW CREATE TABLE
| ├── SHOW CREATE TRIGGER
| ├── SHOW CREATE VIEW
| ├── SHOW DATABASES
| ├── SHOW ENGINE
| ├── SHOW ENGINES
| ├── SHOW ERRORS
| ├── SHOW EVENTS
| ├── SHOW FUNCTION CODE
| ├── SHOW FUNCTION STATUS
| ├── SHOW GRANTS
| ├── SHOW INDEX
| ├── SHOW MASTER STATUS
| ├── SHOW OPEN TABLES
| ├── SHOW PLUGINS
| ├── SHOW PRIVILEGES
| ├── SHOW PROCEDURE CODE
| ├── SHOW PROCEDURE STATUS
| ├── SHOW PROCESSLIST
| ├── SHOW PROFILE
| ├── SHOW PROFILES
| ├── SHOW RELAYLOG EVENTS
| ├── SHOW SLAVE HOSTS
| ├── SHOW SLAVE STATUS
| ├── SHOW STATUS
| ├── SHOW TABLE STATUS
| ├── SHOW TABLES
| ├── SHOW TRIGGERS
| ├── SHOW VARIABLES
| ├── SHOW WARNINGS
├── Compound Statements
| ├── BEGIN END
| ├── CASE STATEMENT
| ├── CLOSE
| ├── DECLARE CONDITION
| ├── DECLARE CURSOR
| ├── DECLARE HANDLER
| ├── DECLARE VARIABLE
| ├── FETCH
| ├── GET DIAGNOSTICS
| ├── IF STATEMENT
| ├── ITERATE
| ├── LABELS
| ├── LEAVE
| ├── LOOP
| ├── OPEN
| ├── REPEAT LOOP
| ├── RESIGNAL
| ├── RETURN
| ├── SIGNAL
| ├── WHILE
├── Data Definition
| ├── ALTER DATABASE
| ├── ALTER EVENT
| ├── ALTER FUNCTION
| ├── ALTER LOGFILE GROUP
| ├── ALTER PROCEDURE
| ├── ALTER SERVER
| ├── ALTER TABLE
| ├── ALTER TABLESPACE
| ├── ALTER VIEW
| ├── CONSTRAINT
| ├── CREATE DATABASE
| ├── CREATE EVENT
| ├── CREATE FUNCTION
| ├── CREATE INDEX
| ├── CREATE LOGFILE GROUP
| ├── CREATE PROCEDURE
| ├── CREATE SERVER
| ├── CREATE TABLE
| ├── CREATE TABLESPACE
| ├── CREATE TRIGGER
| ├── CREATE VIEW
| ├── DROP DATABASE
| ├── DROP EVENT
| ├── DROP FUNCTION
| ├── DROP INDEX
| ├── DROP PROCEDURE
| ├── DROP SERVER
| ├── DROP TABLE
| ├── DROP TABLESPACE
| ├── DROP TRIGGER
| ├── DROP VIEW
| ├── RENAME TABLE
| ├── TRUNCATE TABLE
├── Data Manipulation
| ├── CALL
| ├── DELETE
| ├── DO
| ├── DUAL
| ├── HANDLER
| ├── INSERT
| ├── INSERT DELAYED
| ├── INSERT SELECT
| ├── JOIN
| ├── LOAD DATA
| ├── LOAD XML
| ├── REPLACE
| ├── SELECT
| ├── UNION
| ├── UPDATE
├── Data Types
| ├── AUTO_INCREMENT
| ├── BIGINT
| ├── BINARY
| ├── BIT
| ├── BLOB
| ├── BLOB DATA TYPE
| ├── BOOLEAN
| ├── CHAR
| ├── CHAR BYTE
| ├── DATE
| ├── DATETIME
| ├── DEC
| ├── DECIMAL
| ├── DOUBLE
| ├── DOUBLE PRECISION
| ├── ENUM
| ├── FLOAT
| ├── INT
| ├── INTEGER
| ├── LONGBLOB
| ├── LONGTEXT
| ├── MEDIUMBLOB
| ├── MEDIUMINT
| ├── MEDIUMTEXT
| ├── SET DATA TYPE
| ├── SMALLINT
| ├── TEXT
| ├── TIME
| ├── TIMESTAMP
| ├── TINYBLOB
| ├── TINYINT
| ├── TINYTEXT
| ├── VARBINARY
| ├── VARCHAR
| ├── YEAR DATA TYPE
├── Functions
| ├── Bit Functions
| | ├── &
| | ├── <<
| | ├── >>
| | ├── BIT_COUNT
| | ├── ^
| | ├── |
| | ├── ~
| ├── Comparison operators
| | ├── !=
| | ├── <
| | ├── <=
| | ├── <=>
| | ├── =
| | ├── >
| | ├── >=
| | ├── BETWEEN AND
| | ├── COALESCE
| | ├── GREATEST
| | ├── IN
| | ├── INTERVAL
| | ├── IS
| | ├── IS NOT
| | ├── IS NOT NULL
| | ├── IS NULL
| | ├── ISNULL
| | ├── LEAST
| | ├── NOT BETWEEN
| | ├── NOT IN
| ├── Control flow functions
| | ├── CASE OPERATOR
| | ├── IF FUNCTION
| | ├── IFNULL
| | ├── NULLIF
| ├── Date and Time Functions
| | ├── ADDDATE
| | ├── ADDTIME
| | ├── CONVERT_TZ
| | ├── CURDATE
| | ├── CURRENT_DATE
| | ├── CURRENT_TIME
| | ├── CURRENT_TIMESTAMP
| | ├── CURTIME
| | ├── DATE FUNCTION
| | ├── DATEDIFF
| | ├── DATE_ADD
| | ├── DATE_FORMAT
| | ├── DATE_SUB
| | ├── DAY
| | ├── DAYNAME
| | ├── DAYOFMONTH
| | ├── DAYOFWEEK
| | ├── DAYOFYEAR
| | ├── EXTRACT
| | ├── FROM_DAYS
| | ├── FROM_UNIXTIME
| | ├── GET_FORMAT
| | ├── HOUR
| | ├── LAST_DAY
| | ├── LOCALTIME
| | ├── LOCALTIMESTAMP
| | ├── MAKEDATE
| | ├── MAKETIME
| | ├── MICROSECOND
| | ├── MINUTE
| | ├── MONTH
| | ├── MONTHNAME
| | ├── NOW
| | ├── PERIOD_ADD
| | ├── PERIOD_DIFF
| | ├── QUARTER
| | ├── SECOND
| | ├── SEC_TO_TIME
| | ├── STR_TO_DATE
| | ├── SUBDATE
| | ├── SUBTIME
| | ├── SYSDATE
| | ├── TIME FUNCTION
| | ├── TIMEDIFF
| | ├── TIMESTAMP FUNCTION
| | ├── TIMESTAMPADD
| | ├── TIMESTAMPDIFF
| | ├── TIME_FORMAT
| | ├── TIME_TO_SEC
| | ├── TO_DAYS
| | ├── TO_SECONDS
| | ├── UNIX_TIMESTAMP
| | ├── UTC_DATE
| | ├── UTC_TIME
| | ├── UTC_TIMESTAMP
| | ├── WEEK
| | ├── WEEKDAY
| | ├── WEEKOFYEAR
| | ├── YEAR
| | ├── YEARWEEK
| ├── Encryption Functions
| | ├── AES_DECRYPT
| | ├── AES_ENCRYPT
| | ├── COMPRESS
| | ├── DECODE
| | ├── DES_DECRYPT
| | ├── DES_ENCRYPT
| | ├── ENCODE
| | ├── ENCRYPT
| | ├── MD5
| | ├── OLD_PASSWORD
| | ├── PASSWORD
| | ├── RANDOM_BYTES
| | ├── SHA1
| | ├── SHA2
| | ├── UNCOMPRESS
| | ├── UNCOMPRESSED_LENGTH
| | ├── VALIDATE_PASSWORD_STRENGTH
| ├── Information Functions
| | ├── BENCHMARK
| | ├── CHARSET
| | ├── COERCIBILITY
| | ├── COLLATION
| | ├── CONNECTION_ID
| | ├── CURRENT_USER
| | ├── DATABASE
| | ├── FOUND_ROWS
| | ├── LAST_INSERT_ID
| | ├── ROW_COUNT
| | ├── SCHEMA
| | ├── SESSION_USER
| | ├── SYSTEM_USER
| | ├── USER
| | ├── VERSION
| ├── Logical operators
| | ├── !
| | ├── AND
| | ├── ASSIGN-EQUAL
| | ├── ASSIGN-VALUE
| | ├── OR
| | ├── XOR
| ├── Miscellaneous Functions
| | ├── DEFAULT
| | ├── GET_LOCK
| | ├── INET6_ATON
| | ├── INET6_NTOA
| | ├── INET_ATON
| | ├── INET_NTOA
| | ├── IS_FREE_LOCK
| | ├── IS_IPV4
| | ├── IS_IPV4_COMPAT
| | ├── IS_IPV4_MAPPED
| | ├── IS_IPV6
| | ├── IS_USED_LOCK
| | ├── MASTER_POS_WAIT
| | ├── NAME_CONST
| | ├── RELEASE_LOCK
| | ├── SLEEP
| | ├── UUID
| | ├── UUID_SHORT
| | ├── VALUES
| ├── Numeric Functions
| | ├── %
| | ├── *
| | ├── +
| | ├── - BINARY
| | ├── - UNARY
| | ├── /
| | ├── ABS
| | ├── ACOS
| | ├── ASIN
| | ├── ATAN
| | ├── ATAN2
| | ├── CEIL
| | ├── CEILING
| | ├── CONV
| | ├── COS
| | ├── COT
| | ├── CRC32
| | ├── DEGREES
| | ├── DIV
| | ├── EXP
| | ├── FLOOR
| | ├── LN
| | ├── LOG
| | ├── LOG10
| | ├── LOG2
| | ├── MOD
| | ├── PI
| | ├── POW
| | ├── POWER
| | ├── RADIANS
| | ├── RAND
| | ├── ROUND
| | ├── SIGN
| | ├── SIN
| | ├── SQRT
| | ├── TAN
| | ├── TRUNCATE
| ├── String Functions
| | ├── ASCII
| | ├── BIN
| | ├── BINARY OPERATOR
| | ├── BIT_LENGTH
| | ├── CAST
| | ├── CHAR FUNCTION
| | ├── CHARACTER_LENGTH
| | ├── CHAR_LENGTH
| | ├── CONCAT
| | ├── CONCAT_WS
| | ├── CONVERT
| | ├── ELT
| | ├── EXPORT_SET
| | ├── EXTRACTVALUE
| | ├── FIELD
| | ├── FIND_IN_SET
| | ├── FORMAT
| | ├── FROM_BASE64()
| | ├── HEX
| | ├── INSERT FUNCTION
| | ├── INSTR
| | ├── LCASE
| | ├── LEFT
| | ├── LENGTH
| | ├── LIKE
| | ├── LOAD_FILE
| | ├── LOCATE
| | ├── LOWER
| | ├── LPAD
| | ├── LTRIM
| | ├── MAKE_SET
| | ├── MATCH AGAINST
| | ├── MID
| | ├── NOT LIKE
| | ├── NOT REGEXP
| | ├── OCT
| | ├── OCTET_LENGTH
| | ├── ORD
| | ├── POSITION
| | ├── QUOTE
| | ├── REGEXP
| | ├── REPEAT FUNCTION
| | ├── REPLACE FUNCTION
| | ├── REVERSE
| | ├── RIGHT
| | ├── RPAD
| | ├── RTRIM
| | ├── SOUNDEX
| | ├── SOUNDS LIKE
| | ├── SPACE
| | ├── STRCMP
| | ├── SUBSTR
| | ├── SUBSTRING
| | ├── SUBSTRING_INDEX
| | ├── TO_BASE64()
| | ├── TRIM
| | ├── UCASE
| | ├── UNHEX
| | ├── UPDATEXML
| | ├── UPPER
| | ├── WEIGHT_STRING
├── Functions and Modifiers for Use with GROUP BY
| ├── AVG
| ├── BIT_AND
| ├── BIT_OR
| ├── BIT_XOR
| ├── COUNT
| ├── COUNT DISTINCT
| ├── GROUP_CONCAT
| ├── MAX
| ├── MIN
| ├── STD
| ├── STDDEV
| ├── STDDEV_POP
| ├── STDDEV_SAMP
| ├── SUM
| ├── VARIANCE
| ├── VAR_POP
| ├── VAR_SAMP
├── Geographic Features
| ├── GEOMETRY
| ├── GEOMETRY HIERARCHY
| ├── SPATIAL
| ├── Geometry constructors
| | ├── GEOMETRYCOLLECTION
| | ├── LINESTRING
| | ├── MULTILINESTRING
| | ├── MULTIPOINT
| | ├── MULTIPOLYGON
| | ├── POINT
| | ├── POLYGON
| ├── Geometry properties
| | ├── DIMENSION
| | ├── ENVELOPE
| | ├── GEOMETRYTYPE
| | ├── ISEMPTY
| | ├── ISSIMPLE
| | ├── SRID
| | ├── ST_DIMENSION
| | ├── ST_ENVELOPE
| | ├── ST_GEOMETRYTYPE
| | ├── ST_ISEMPTY
| | ├── ST_ISSIMPLE
| | ├── ST_SRID
| ├── Geometry relations
| | ├── CONTAINS
| | ├── CROSSES
| | ├── DISJOINT
| | ├── EQUALS
| | ├── INTERSECTS
| | ├── OVERLAPS
| | ├── ST_CONTAINS
| | ├── ST_CROSSES
| | ├── ST_DISJOINT
| | ├── ST_DISTANCE
| | ├── ST_EQUALS
| | ├── ST_INTERSECTS
| | ├── ST_OVERLAPS
| | ├── ST_TOUCHES
| | ├── ST_WITHIN
| | ├── TOUCHES
| | ├── WITHIN
| ├── LineString properties
| | ├── ENDPOINT
| | ├── GLENGTH
| | ├── ISCLOSED
| | ├── NUMPOINTS
| | ├── POINTN
| | ├── STARTPOINT
| | ├── ST_ENDPOINT
| | ├── ST_ISCLOSED
| | ├── ST_NUMPOINTS
| | ├── ST_POINTN
| | ├── ST_STARTPOINT
| ├── MBR
| | ├── ASYMMETRIC_DECRYPT
| | ├── ASYMMETRIC_DERIVE
| | ├── ASYMMETRIC_ENCRYPT
| | ├── ASYMMETRIC_SIGN
| | ├── ASYMMETRIC_VERIFY
| | ├── CREATE_ASYMMETRIC_PRIV_KEY
| | ├── CREATE_ASYMMETRIC_PUB_KEY
| | ├── CREATE_DH_PARAMETERS
| | ├── CREATE_DIGEST
| | ├── GTID_SUBSET
| | ├── GTID_SUBTRACT
| | ├── MBR DEFINITION
| | ├── MBRCONTAINS
| | ├── MBRDISJOINT
| | ├── MBREQUAL
| | ├── MBRINTERSECTS
| | ├── MBROVERLAPS
| | ├── MBRTOUCHES
| | ├── MBRWITHIN
| | ├── SQL_THREAD_WAIT_AFTER_GTIDS
| | ├── WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS
| ├── Point properties
| | ├── ST_X
| | ├── ST_Y
| | ├── X
| | ├── Y
| ├── Polygon properties
| | ├── AREA
| | ├── CENTROID
| | ├── EXTERIORRING
| | ├── INTERIORRINGN
| | ├── NUMINTERIORRINGS
| | ├── ST_AREA
| | ├── ST_CENTROID
| | ├── ST_EXTERIORRING
| | ├── ST_INTERIORRINGN
| | ├── ST_NUMINTERIORRINGS
| ├── WKB
| | ├── ASBINARY
| | ├── ASTEXT
| | ├── GEOMCOLLFROMWKB
| | ├── GEOMFROMWKB
| | ├── LINEFROMWKB
| | ├── MLINEFROMWKB
| | ├── MPOINTFROMWKB
| | ├── MPOLYFROMWKB
| | ├── POINTFROMWKB
| | ├── POLYFROMWKB
| | ├── ST_ASBINARY
| | ├── ST_ASTEXT
| | ├── ST_GEOMCOLLFROMWKB
| | ├── ST_GEOMFROMWKB
| | ├── ST_LINEFROMWKB
| | ├── ST_POINTFROMWKB
| | ├── ST_POLYFROMWKB
| ├── WKT
| | ├── GEOMCOLLFROMTEXT
| | ├── GEOMFROMTEXT
| | ├── LINEFROMTEXT
| | ├── MLINEFROMTEXT
| | ├── MPOINTFROMTEXT
| | ├── MPOLYFROMTEXT
| | ├── POINTFROMTEXT
| | ├── POLYFROMTEXT
| | ├── ST_GEOMCOLLFROMTEXT
| | ├── ST_GEOMFROMTEXT
| | ├── ST_LINEFROMTEXT
| | ├── ST_POINTFROMTEXT
| | ├── ST_POLYFROMTEXT
| | ├── WKT DEFINITION
├── Help Metadata
| ├── HELP_DATE
| ├── HELP_VERSION
├── Language Structure
├── Plugins
├── Procedures
├── Storage Engines
├── Table Maintenance
| ├── ANALYZE TABLE
| ├── CHECK TABLE
| ├── CHECKSUM TABLE
| ├── OPTIMIZE TABLE
| ├── REPAIR TABLE
├── Transactions
| ├── CHANGE MASTER TO
| ├── DEALLOCATE PREPARE
| ├── EXECUTE STATEMENT
| ├── ISOLATION
| ├── LOCK
| ├── PREPARE
| ├── PURGE BINARY LOGS
| ├── RESET MASTER
| ├── RESET SLAVE
| ├── SAVEPOINT
| ├── SET GLOBAL SQL_SLAVE_SKIP_COUNTER
| ├── SET SQL_LOG_BIN
| ├── START SLAVE
| ├── START TRANSACTION
| ├── STOP SLAVE
| ├── XA
├── User-Defined Functions
| ├── CREATE FUNCTION UDF
| ├── DROP FUNCTION UDF
├── Utility
| ├── EXPLAIN
| ├── HELP STATEMENT
| ├── USE

总结:

整个脚本在写的过程有两点比较有意思。

1. 函数递归操作,以前没怎么使用Shell进行函数的递归操作。

2. 借鉴tree的输出格式,对结果进行格式化输出。

思路如下:首先定义一个number为0,每次进入一次recursive函数,都会把当前的number加1,如果只是这样的话,那number值将一直增长了,所以在上述脚本else调用recursive函数部分,会在其后执行number=$[$number-1],类似于恢复到上一层目录下。

如何将MySQL help contents的内容有层次的输出的更多相关文章

  1. MySQL的日志相关内容

    本篇文章介绍一下mysql的备份和日志,由于备份时需要用到日志,所以在讲备份前,如果日志内容篇幅过长,将会把日志和备份分开单独来讲,先简单介绍一下mysql的日志相关内容. MySQL日志 日志是my ...

  2. 使用jdbc将mysql数据库中的内容封装为指定对象的list集合

    使用jdbc将mysql数据库中的内容封装为指定对象的list集合 public List<User> findAll() { private JdbcTemplate template ...

  3. mysql按表字段内容长度排序

    今天遇到个需求如下: 查询一下新的业务是否正常入库,遇到的问题是新旧业务用的是同一个字段标识,唯一不同的是字段里内容的长度不同 查询方式如下,mysql按表字段内容长度排序 SELECT * FROM ...

  4. 请问在一个命令上加什么参数可以实现下面命令的内容在同一行输出。 echo "zhaokang";echo "zhaokang"

    请问在一个命令上加什么参数可以实现下面命令的内容在同一行输出. echo "zhaokang";echo "zhaokang" [root@zhaokang t ...

  5. C#文件监控工具(对追加内容的监控并输出)

    C#文件监控(对追加内容的监控并输出),适合监控某个目录下的日志文件(log),开发初衷是linux上部署在jexus部署网站后想实时输出jexus的log和自己站点的log文件(已经测试通过在mon ...

  6. Java连接mysql数据库并进行内容查询

    最近用框架做了几个项目,感觉当初底层的东西有点忘了,写一个JDBC的简单的连接代码来熟悉回顾一下,也希望对刚接触的新手能有所帮助.这也是我的第一篇随笔,废话不多说,直接上代码: public Conn ...

  7. html页面通过http访问mysql数据库中的内容,实现用户登录的功能

    需求: 通过html编写用户登录页面,页面内容包括用户名.密码和登录按钮,点击登录后访问login.php文件,使用按钮默认的submit提交用户名和密码,在login.php中访问mysql数据库, ...

  8. PHP链接MySQL,查询数据库内容,删除数据库内容。。。记住链接公式!!!

    //扩展类叫MySQLi MySQL是数据库,MySQLi是扩展 Id地址本地网络服务器的地址localhost 如果想链接别人的输入他的服务器id地址. //root代表的是数据库名, //poss ...

  9. Java&mysql:过滤文件内容,将新文件内容存入mysql数据库

    在上一篇博文jdbc连接数据库中我已经简单介绍了如何连接到mysql数据库,今天要总结的是学长给我布置的一个小作业,把一个很大的已经用","分开了的一行一行的txt文件内容过滤掉注 ...

随机推荐

  1. ios设备中openGL所支持的最大纹理尺寸

    这几天碰到一个在iphone4上显示图片未黑色矩形的bug,在其他机器上都正常 最后发现是图片打包尺寸的关系,iphone4无法读取2048以上大小的单个图片,所以其中的图片都显示成了黑色,希望对碰到 ...

  2. Python之路【第六篇】python基础 之面向对象(一)

    一.三大编程范式 1.面向过程编程 2.函数式编程 3.面向对象编程 二.编程进化论 1.编程最开始就是无组织无结构,从简单控制流中按步写指令 2.从上述的指令中提取重复的代码块或逻辑,组织到一起(比 ...

  3. replace实现正则过滤替换非法字符

    html+js结构如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http: ...

  4. java.net.ConnectException: Connection timed out

    原因可能如下: (1)生成的WSDL的IP地址是不是服务器的IP: (2)代码中是否需要代理,若否,取消代理,若是,设置代理:

  5. 如果你想真正了解Struts2,不妨可以进来看看

    首先我们就一起来认识认识Struts2到底是什么?作为框架,它又是用来处理哪些问题的呢?正所谓脚踏实地走,即时离梦想会远一点,但却很真实,那我们就一步一步的来了解Struts2吧!      一.既然 ...

  6. Java_正则表达式

    1.简介 正则表达式是一串特定字符串,组成一个“规则字符串”,这个“规则字符串”是描述文本规则的工具.正则表达式就是记录文本规则的代码. 2.字符集合 [abc] a,b,c中任意一个字符 [^abc ...

  7. Java概念性问题

    一.变量命名的五个要素 由字母.数字.“_”和“$” 组成 首字母不能为数字 大小写敏感 不能使用Java的保留字和关键字 可以使用中文命名,但是不建议 二.java的基本数据类型 整数类型:byte ...

  8. jquery插入复杂表格,合并行列

    此方法为个人测试所写,针对各种兼容性问题还未测试,初写的目的是easyui复杂表头有些缺陷,比如某个表头合并两列, 在easyui中这样操作无法绑定两个值 或者说我没找到 再或者 可以做个隐藏 数据列 ...

  9. 七种机器内部排序的原理与C语言实现,并计算它们的比较次数与移动次数。

    内部排序是指待排序列完全存放在内存中所进行的排序过程,适合不太大的元素序列. 排序是计算机程序设计中的一种重要操作,其功能是对一个数据元素集合或序列重新排列成一个按数据元素某个相知有序的序列.排序分为 ...

  10. 最近碰到的一些 SSL 问题记录

    最近碰到一些 SSL 的小问题,特记录下. 我们有个 Java 实现的 SSL TCP 服务端,为客户端(PC.Android 和 iOS)提供 SSL 接入连接服务.最近有用户反馈其手机上 App ...