1、使用 create table 语句可完成对表的创建, create table 的创建形式:
create table 表名称(列声明)
以创建 people 表为例, 表中将存放 学号(id)、姓名(name)、性别(sex)、年龄(age) 这些内容:
create table people(
id int unsigned not null auto_increment primary key,
name char(8) not null,
sex char(4) not null,
age tinyint unsigned not null
)
其中,auto_increment就可以使Int类型的id字段每次自增1。
2、向表中插入数据使用insert 语句。
insert 语句可以用来将一行或多行数据插到数据库表中, 使用的一般形式如下:
insert [into] 表名 [(列名1, 列名2, 列名3, ...)] values (值1, 值2, 值3, ...)
其中 [] 内的内容是可选的, 例如, 要给上步中创建的people 表插入一条记录, 执行语句:
insert into people(name,sex,age) values( "张三", "男", 21 )
3、想要查询是否插入成功,可以通过select 查询语句。形式如下:
select * from people;
扩展资料:
当mysql大批量插入数据的时候使用insert into就会变的非常慢, mysql提高insert into 插入速度的方法有三种:
1、第一种插入提速方法:
如果数据库中的数据已经很多(几百万条), 那么可以 加大mysql配置中的 bulk_insert_buffer_size,这个参数默认为8M
举例:bulk_insert_buffer_size=100M;
2、第二种mysql插入提速方法:
改写所有 insert into 语句为 insert delayed into
这个insert delayed不同之处在于:立即返回结果,后台进行处理插入。
3、第三个方法: 一次插入多条数据:
insert中插入多条数据,举例:
insert into table values('11','11'),('22','22'),('33','33')...
insert into tablename values(value1,value2,...)insert into tablename(fieldname1,fieldname2,...) values(value1,value2,...)insert into tablename(fieldname1,fieldname2) select fieldname1,fieldname2 from tablename1以上基本上罗列了用insert插入数据的方法,当然你也可以用insert语句将几行同时插入到一个表中.如下所示:2.在mysql运行环境下,我们还可以用LOAD DATA 语句把文件里面的数据读取录入到表里面.一般来讲,因为此文件是由服务器在主机上直接读取的.所以你必须具有file权限且文件必须是完全可读.当你版本够新的话,你可以给出local,这样由于你是从客户机上读取该文件并将内容传送到服务器,你就不需要file权限.如果你没有给出local,则服务器按如下方法对其进行定位:1)如果你的filename为绝对路径,则服务器从根目录开始查找该文件.2)如果你的filename为相对路径,则服务器从数据库的数据目录中开始查找该文件.如果你给出了local,则文件将按以下方式进行定位:1)如果你的filename为绝对路径,则客户机从根目录开始查找该文件.2)如果你的filename为相对路径,则客户机从当前目录开始查找该文件.说了半天,也许你还不明白这具体的格式,看下面先:LOAD DATA [LOCAL] INFILE 'filename' into table tablename import_options [(fieldname_list)]import options的语法为:fieldsterminated by 'char'enclosed by 'char'escaped by 'char'linesterminated by 'string'下面我们对其进行一些说明:1)fields terminated by char 指定分隔列的字符.缺省时假定列值由制表符分隔.2)fields enclosed by char 指明列值应包括在指定的字符中.通常用引号.缺省时,假定列值不包括在任何字符中.3)fields escaped by char 表示用于转义特殊字符的转义符.缺省时表示无转义符4)lindes escaped by string 指定结束输入行的串(可以是多字符的).缺省时假定由换行符终止行需要注意的是转义字符的使用. 如:\' 表示单引号,\" 表示双引号 等等.另外还有一些选项这里没有具体谈到,如 ignore n lines 她可以控制文件的前n行不被读入数据库.详细请看mysql中文参考.说了上面这么多,给一行命令大家具体体会一下:load data [local] infile "sample.txt" into table sample fields terminated by "," enclosed by "\""3.在系统命令行下你可以用mysqlimport实用程序,她将文本文件的内容读取到已有表中(其实mysqlimport起的作用就是实现load data命令行的接口),调用完mysqlimport后她生成一个load data 语句.语法基本上和load data差不多:mysqlimport [options] sample_db filename同样,给条命令看一下吧:使用insert语句插入条目。INSERT INTO table_name VALUES (值1, 值2,....)
或指定列名
INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)