sql 是指数据库查询语言,拿mysql举例
中山网站制作公司哪家好,找创新互联!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设公司等网站项目制作,到程序开发,运营维护。创新互联成立于2013年到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联。
一个数据库包含多个表,一个表有多行,一行包含多列
表的理解,类似excel里面的二维表格,就是一张完整的表格
一行对应一个记录(又叫做元组)描述的是一个完整的实体对象
一列对应一个字段,描述的是这个实体的属性信息
拿人作为举例,张三,李四两个人,一个人表示一行(即为一条记录),张三id:001,name:张三,age:23
张三的ID号,名称,年龄等这些代表张三的属性,每一个属性代表这个行的一列
表格的第一行都是指列,下面的每一行就是指每一个记录行,记录不同的对象信息
sql语句只是操作数据库表的语言,有查询,增加,删除,修改等基本功能
select 列名 from 表名 where 列名 = 值 从表当中查询记录行
insert into 表名(id , name) values(001 , '张三') 插入一条语句
delete from 表名 where id=1 删除id等于1的记录行
update 表名 set name='王五' where id=1 更新,把id等于1的记录的,名称列值改为王五
由于工作需要,经常需要将mysql数据库中的数据导出到excel表格,或者需要将excel表格数据导入到mysql数据库,我的方法是先将它们都转换成一种中间数据格式csv(execl数据可以直接导出为csv格式,csv格式也可以直接用excel打开)。下面介绍一下操作步骤:
csv导入mysql
load data infile 'C:\\Users\\UserName\\Desktop\\test.csv'
into table `table`
fields terminated by ',' optionally enclosed by '"' escaped by '"'
lines terminated by '\n';
mysql导入csv
select * from `table`
load data infile 'C:\\Users\\UserName\\Desktop\\test.csv'
fields terminated by ',' optionally enclosed by '"' escaped by '"'
lines terminated by '\n';
如果乱码,可用相关编辑器打开.csv文件,另存为utf-8的csv
select into outfile是提供导出数据功能的,不带表结构的,所以不可能有表头。从information_schema.columns里确实能查到表里有哪些字段,但是查到又能怎么用?先从columns里查出payment所有column_name,然后把N行column_name转成一行,再union select * from payment。这么做累死,不如手动把表头加上算了:select 'col1','col2',……unionselect col1,col2,…… from payment但是这样好像又不能导出文件了……总之是做不到,select into outfile就没提供这个功能。
在mysql里有个系统库叫information_schema
里面有所有系统对象;
其中 columns表里存储着所有字段信息
select column_name from columns where table_schema=your_database_name and table_name=your_table_name