MySQL命令 (4) -- 存储数据

MySQL命令 (4) -- 存储数据
1、插入一条记录:
INSERT INTO table_name (list of columns)  VALUES  (list,  of values );

其中INTO似乎可以省略掉~

2、一次插入多条记录:看下面的例子

INSERT  book (author, title, cond)  VALUES
    (
' Maurice Sendak ' , ' In the Night Kitchen ' , ' mint ' ),
    (
' Caroll Spinney ' , ' How to Be a Grouch ' , ' poor ' ),
    (
' Dr. Seuss ' ' Green Eggs and Ham ' ' good ' );

3、auto_increment属性:
CREATE   TEMPORARY   TABLE  demo (
  id 
INT   NOT   NULL  AUTO_INCREMENT,
     
PRIMARY   KEY  (id)
);
INSERT  demo ()  VALUES  ();
SELECT  id  FROM  demo; # id  contains   1
INSERT  demo (id)  VALUES  ( NULL );
SELECT  id  FROM  demo; # id  contains   1   and   2
INSERT  demo (id)  VALUES  ( 4 );
SELECT  id  FROM  demo; # id  contains   1 2   and   4
INSERT  demo (id)  VALUES  ( NULL );
SELECT  id  FROM  demo; # id  contains   1 2 4 and   5

注意:一个表至多只能一个column是auto_increment的,而且该column必须是primary key的一个组成部分


4、插入当前日期和时间:
INSERT some_table (some_column) VALUES (NOW());
运行
SELECT NOW();
可得到当前时间.

5、从执行文件执行命令(有两种方法):
(1)
mysql  - username  - db_name  <  file_name.sql
敲入该命令之后,会有一个密码输入的提示符,输入密码之后,会执行file_name.sql中的命令并打印这些命令返回的结果。
(2)首先从命令行连接连接数据库,在mysql的提示符下敲入:
\. file_name.sql
其中 \.表示从文件中执行命令, 文件名既可以包含绝对路径也可以包含相对路径

6、从另一个表复制数据:
INSERT table_one (list, of, columns) SELECT ;
注意:select 返回的column的类型和column的个数必须与insert的column和个数相兼容。

7、从文件导入数据:
LOAD DATA INFILE  ' some_file '  INTO TABLE table_name (list, of, columns, );
需注意的几点:
  • LOAD DATA INFILE 有很多参数,具体可参照MySQL reference
  • 数据文件必须和mysql server在同一台机器上,如果是远程机器,则必须在INFILE之前添加参数local
  • 文件名最好加上绝对路径,如果没有指明完整路径,则mysql server会在它的数据目录下寻找该文件,如果有local参数,则会在你启动客服端的目录下找
  • 在windows下,路径的标识符不能用反斜杠 \ ,只能使用正斜杠 / 或者使用转义字符 \\
  • 使用小技巧:可以用show errors; 或show warnings;命令来查看返回的具体的错误信息。在将数据导入到table之前,可以先建立一个和要导入的表的结构一样temporary table(使用create table  ...like 命令,把数据导入到该临时表中看看结果是否正确
8、存储精确的浮点数:使用DECIMAL类型,该类型在MySQL中是一字符串的形式存储的。

你可能感兴趣的:(MySQL命令 (4) -- 存储数据)